我正在使用Tomcat和Java(通过Eclipse)和SQL Server 2008 R2
我正在
org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC driver of
class '' for connect URL 'null'
我也尝试部署到Tomcat 7,我得到了完全相同的错误。 (我确保在这种情况下,sqljdbc4.jar位于Tomcat的lib目录中,而不仅仅是在WAR中)
有人可以帮忙吗?谢谢!
我的代码如下:
的Server.xml
<GlobalNamingResources>
<Resource type="javax.sql.DataSource" auth="Container"
name="jdbc/charmDB"
factory="org.apache.tomcat.jdbc.pool.DataSourceFactory"
driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"
url="jdbc:sqlserver://localhost:1433;databaseName=CH;
integratedSecurity=true"
/>
Web.xml中
<resource-ref>
<description>CH Database</description>
<res-ref-name>jdbc/charmDB</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
Java代码
InitialContext ic = new InitialContext();
DataSource ds = (DataSource) ic.lookup("java:comp/env/jdbc/charmDB");
Connection con = ds.getConnection();
答案 0 :(得分:2)
除非link them to the application's context,否则您的Web应用程序将无法查看GlobalNamingResources中声明的资源。
中定义资源答案 1 :(得分:0)
我尝试了以上内容。只想添加。您也可以添加server.xml,但请确保您没有使用Resource-Params。仅将参数放在资源元素中。 如果您使用的是Linux,请确保将sqlodbc4.jar放在/ usr / share文件夹下的tomcat / lib中。