当前位置: 技术问答>java相关
*****在Tomcat4.1.12下用jndi连接Sql Server 2000,出现问题。请帮忙!!*********
来源: 互联网 发布时间:2015-09-30
本文导语: 我装Tomcat 4.1.12,使用它提供的dbcp连接数据库 都设置好了,也可以用jndi找到DataSource.但是在用DataSource.getConnection()的时候,跑出: "Cannot load JDBC Driver ‘null’"异常 怎会事? 我的配置如下: (1)把SQLServer的三个jar...
我装Tomcat 4.1.12,使用它提供的dbcp连接数据库
都设置好了,也可以用jndi找到DataSource.但是在用DataSource.getConnection()的时候,跑出:
"Cannot load JDBC Driver ‘null’"异常
怎会事?
我的配置如下:
(1)把SQLServer的三个jar文件放到%Tomcat%/common/lib下。原来使用的时候我把他们
放在%java_homw%/jre/lib/ext下。
(2)然后在%Myapp%/web-inf/web.xml文件中加入
Resource reference to a factory for java.sql.Connection
instances that may be used for talking to a particular
database that is configured in the server.xml file.
jdbc/EmployeeDB
javax.sql.DataSource
Container
(3)在server.xml中加入您写的那些。
(4)调用代码都差不多。
Context initCtx = new InitialContext();
Context envCtx = (Context) initCtx.lookup("java:comp/env");
NamingEnumeration enum = initctxt.list("java:comp/env/");
while (enum.hasMoreElements()) {
System.out.print("Binding : ");
System.out.println(enum.nextElement().toString());
}
DataSource ds = (DataSource)envCtx.lookup("jdbc/EmployeeDB");
Connection conn = ds.getConnection();
我输出了一下命名空间的值,可以找到jdbc空间
程序执行到Connection conn = ds.getConnection();的时候抛出上面的异常。
我以前使用的是自己写的一个连接池,驱动和url都没有错的。这次try着配置一下Tocmat的,就有问题了。
请帮忙!!
都设置好了,也可以用jndi找到DataSource.但是在用DataSource.getConnection()的时候,跑出:
"Cannot load JDBC Driver ‘null’"异常
怎会事?
我的配置如下:
(1)把SQLServer的三个jar文件放到%Tomcat%/common/lib下。原来使用的时候我把他们
放在%java_homw%/jre/lib/ext下。
(2)然后在%Myapp%/web-inf/web.xml文件中加入
Resource reference to a factory for java.sql.Connection
instances that may be used for talking to a particular
database that is configured in the server.xml file.
jdbc/EmployeeDB
javax.sql.DataSource
Container
(3)在server.xml中加入您写的那些。
(4)调用代码都差不多。
Context initCtx = new InitialContext();
Context envCtx = (Context) initCtx.lookup("java:comp/env");
NamingEnumeration enum = initctxt.list("java:comp/env/");
while (enum.hasMoreElements()) {
System.out.print("Binding : ");
System.out.println(enum.nextElement().toString());
}
DataSource ds = (DataSource)envCtx.lookup("jdbc/EmployeeDB");
Connection conn = ds.getConnection();
我输出了一下命名空间的值,可以找到jdbc空间
程序执行到Connection conn = ds.getConnection();的时候抛出上面的异常。
我以前使用的是自己写的一个连接池,驱动和url都没有错的。这次try着配置一下Tocmat的,就有问题了。
请帮忙!!
|
你看看这几项:
1:你的JDBC Driver(%Tomcat_home%common/lib/)是否有msbase.jar;msutil.jar;sqsqlserver.jar三个包。不用在classpath中加入。
2:你的是否为com.microsoft.jdbc.sqlserver.SQLServerDriver
用这个是对的!
1:你的JDBC Driver(%Tomcat_home%common/lib/)是否有msbase.jar;msutil.jar;sqsqlserver.jar三个包。不用在classpath中加入。
2:你的是否为com.microsoft.jdbc.sqlserver.SQLServerDriver
用这个是对的!
|
SQL SERVER2000自己JDBC驱动安装了吗?
没有的去微软的网站去下载一个安装。
安装后到安装目录下lib目录下找到msbase.jar,mssqlserver.jar,msutil.jar复制到TOMCAT安装目录的commonlib目录下,并在环境变量的CLASSPATH变量中,添上这三个文件,然后把你的的XML文件设置成
Resource reference to a factory for java.sql.Connection
instances that may be used for talking to a particular
database that is configured in the server.xml file.
jdbc/EmployeeDB
com.microsoft.jdbcx.sqlserver.SQLServerDataSource
Container
你还需要再设置些属性,如登陆名,密码等,要连接的数据库等,这样应该就可以连上了
没有的去微软的网站去下载一个安装。
安装后到安装目录下lib目录下找到msbase.jar,mssqlserver.jar,msutil.jar复制到TOMCAT安装目录的commonlib目录下,并在环境变量的CLASSPATH变量中,添上这三个文件,然后把你的的XML文件设置成
Resource reference to a factory for java.sql.Connection
instances that may be used for talking to a particular
database that is configured in the server.xml file.
jdbc/EmployeeDB
com.microsoft.jdbcx.sqlserver.SQLServerDataSource
Container
你还需要再设置些属性,如登陆名,密码等,要连接的数据库等,这样应该就可以连上了
|
我用了MS的SQL Server JDBC驱动程序,可为什么它居然不支持previous()
和isLast()?!难道它只支持JDBC1.0???
和isLast()?!难道它只支持JDBC1.0???