org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC driver of class '' for connect URL 'null'
[此贴子已经被作者于2006-12-30 16:45:58编辑过]
----------------解决方案--------------------------------------------------------
数据库连接问题 把代码贴出来看看 有可能是连接字符串出错
----------------解决方案--------------------------------------------------------
上面的英文好像不难看懂吧
Cannot create JDBC driver of class '' for connect URL 'null'
不能为连接地址'null'创建类''的JDBC驱动
你的地址是null?
----------------解决方案--------------------------------------------------------
搞那个TOMCAT与数据库的连接池
不用连接池的方法就可以访问数据库,用连接池方式就访问不了
----------------解决方案--------------------------------------------------------
/////////////////////////////JSP文件//////////////////////////
<%@ page import="javax.naming.Context" %>
<%@ page import="javax.sql.DataSource"%>
<%@ page import="javax.naming.InitialContext"%>
<%@ page import="java.sql.*"%>
<%
DataSource ds = null;
try{
Connection conn = com.jspdev.util.DatabaseConn.getConnection();
if(conn!=null)
{
out.println("Connection is OK!");
out.println("<br>");
Statement stmt=conn.createStatement();
ResultSet rst=stmt.executeQuery("select * from user_info");
while(rst.next())
{
out.println(rst.getString("userId"));
out.println("<br>");
}
}
else
out.println("Fail!");
}
catch(Exception ne){ out.println(ne);}
%>
//////////////////////////////java文件//////////////////////////
import java.sql.*;
import javax.naming.*;
import javax.sql.DataSource;
public class DatabaseConn {
public static synchronized Connection getConnection() throws Exception
{
try
{
Context initCtx = new javax.naming.InitialContext();
Context envCtx = (Context) initCtx.lookup("java:comp/env");
DataSource ds = (DataSource)envCtx.lookup("jdbc/jspdev"); ;
return ds.getConnection();
}
catch(SQLException e)
{
throw e;
}
catch(NamingException e)
{
throw e;
}
}
}
/////////////////server.xml////////////////////
............
<Context path="/jspdev" docBase="jspdev" debug="0" reloadable="true"
crossContext="true">
<Resource name="jdbc/jspdev" auth="Container" type="javax.sql.DataSource"/>
<ResourceParams name="jdbc/jspdev">
<parameter>
<name>factory</name>
<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
</parameter>
<parameter>
<name>driverClassName</name>
<value>com.microsoft.jdbc.sqlserver.SQLServerDriver</value>
</parameter>
<parameter>
<name>url</name>
<value>jdbc:microsoft:sqlserver://192.168.1.3:1433;DatabaseName=jspdev</value>
</parameter>
<parameter>
<name>username</name>
<value>sa</value>
</parameter>
<parameter>
<name>password</name>
<value>123</value>
</parameter>
<parameter>
<name>maxActive</name>
<value>20</value>
</parameter>
<parameter>
<name>maxIdle</name>
<value>10</value>
</parameter>
<parameter>
<name>maxWait</name>
<value>1</value>
</parameter>
</ResourceParams>
</Context>
..........
麻烦高手帮忙看看是什么问题,在浏览器上面出现了以下:
org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC driver of class '' for connect URL 'null'
[此贴子已经被作者于2006-12-30 14:14:34编辑过]
----------------解决方案--------------------------------------------------------
不太了解
不好意思
看你的配置应该没有问题的,没有用过TOMCAT的数据源
----------------解决方案--------------------------------------------------------
还在Tomcat安装目录下/conf/Catalina/localhost文件夹中建立一个和你网站文件夹名字一样的XML文件.然后把你在server.xml你配置的内容写进去,还要在web.xml中配置数据源如下:
<resource-ref>
<description>DB Connection</description>
<res-ref-name>jdbc/jspdev</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
不知道我说这些你都做了么?
----------------解决方案--------------------------------------------------------
楼上的设置了,现在就出现下面一个了,太麻烦了
javax.naming.NamingException: Could not load resource factory class [Root exception is java.lang.ClassNotFoundException: org.apache.commons.dbcp.BasicDataSourceFactory]
----------------解决方案--------------------------------------------------------
楼上的设置了,现在就出现下面一个了,太麻烦了
javax.naming.NamingException: Could not load resource factory class [Root exception is java.lang.ClassNotFoundException: org.apache.commons.dbcp.BasicDataSourceFactory]
/conf/Catalina/localhost下jspdev.xml配置了么?
名称得一致
----------------解决方案--------------------------------------------------------
jspdev.xml没有啊,请问应该怎么配置啊??
希望能详细一点呢
要设置 conf\server.xml 这个我设置好了
conf\context.xml 这个也是
conf\web.xml 这个不知道在那里加,有的论坛说不用设置的,我加了楼上的代码还是一样的出错
conf\Catalina\localhost\jspdev.xml 不知道怎么设置啊
////////////////////////////////server.xml//////////////////////////////////
<Context path="/jspdev" docBase="jspdev" debug="0" reloadable="true"
crossContext="true">
<Resource name="jdbc/jspdev" auth="Container" type="javax.sql.DataSource"
factory="org.apache.commons.dbcp.BasicDataSourceFactory"
driverClassName="com.microsoft.jdbc.sqlserver.SQLServerDriver"
url="jdbc:microsoft:sqlserver://192.168.1.3:1433;DatabaseName=jspdev"
username="sa"
password="123"
maxActive="20"
maxIdle="10"
maxWait="1"/>
</Context>
是不是红色那里错了??? 应该怎样改?我的版本TOMCAT5.5.20
[此贴子已经被作者于2006-12-31 17:26:33编辑过]
----------------解决方案--------------------------------------------------------