我用JSP与SQL通过JDBC进行连接时为何总是出现这样的错误提示! ( 积分: 50 )

J

John_

Unregistered / Unconfirmed
GUEST, unregistred user!
我在用JSP同SQL SERVER进行连接时总是出现这样的情况:

------------------------------------------------------------------------------
500 Servlet Exception
java.lang.NullPointerException
at _jsp._class._Exam._Title__jsp._jspService(/class/Exam/Title.jsp:292)
at com.caucho.jsp.JavaPage.service(JavaPage.java:87)
at com.caucho.jsp.JavaPage.subservice(JavaPage.java:81)
at com.caucho.jsp.Page.service(Page.java:410)
at com.caucho.server.http.Invocation.service(Invocation.java:319)
at com.caucho.server.http.CacheInvocation.service(CacheInvocation.java:121)
at com.caucho.server.http.HttpRequest.handleRequest(HttpRequest.java:239)
at com.caucho.server.http.HttpRequest.handleConnection(HttpRequest.java:157)
at com.caucho.server.TcpConnection.run(TcpConnection.java:140)
at java.lang.Thread.run(Thread.java:566)

--------------------------------------------------------------------------------
Resin 1.2.10 (built Fri Jan 11 14:26:21 PST 2002)
------------------------------------------------------------------------------
我的代码是这样的:
public void jspInit()
{
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
// Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
String url="jdbc:microsoft:sqlserver://liuxiang:1433;user=sa;password=888;DatabaseName=Leaders";
String user="sa";
String password="888";
con=DriverManager.getConnection(url,user,password);

stmt=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
//stmt=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
}
catch(Exception ex)
{
System.out.println(ex.toString());
}
}
不知是什么原因,以前在我的电脑上又可以,现在全部换一台机又不行了,
请帮我指正!
 
我在用JSP同SQL SERVER进行连接时总是出现这样的情况:

------------------------------------------------------------------------------
500 Servlet Exception
java.lang.NullPointerException
at _jsp._class._Exam._Title__jsp._jspService(/class/Exam/Title.jsp:292)
at com.caucho.jsp.JavaPage.service(JavaPage.java:87)
at com.caucho.jsp.JavaPage.subservice(JavaPage.java:81)
at com.caucho.jsp.Page.service(Page.java:410)
at com.caucho.server.http.Invocation.service(Invocation.java:319)
at com.caucho.server.http.CacheInvocation.service(CacheInvocation.java:121)
at com.caucho.server.http.HttpRequest.handleRequest(HttpRequest.java:239)
at com.caucho.server.http.HttpRequest.handleConnection(HttpRequest.java:157)
at com.caucho.server.TcpConnection.run(TcpConnection.java:140)
at java.lang.Thread.run(Thread.java:566)

--------------------------------------------------------------------------------
Resin 1.2.10 (built Fri Jan 11 14:26:21 PST 2002)
------------------------------------------------------------------------------
我的代码是这样的:
public void jspInit()
{
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
// Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
String url="jdbc:microsoft:sqlserver://liuxiang:1433;user=sa;password=888;DatabaseName=Leaders";
String user="sa";
String password="888";
con=DriverManager.getConnection(url,user,password);

stmt=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
//stmt=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
}
catch(Exception ex)
{
System.out.println(ex.toString());
}
}
不知是什么原因,以前在我的电脑上又可以,现在全部换一台机又不行了,
请帮我指正!
 
是这里出错吗?
如果是这里的话,应该打印出 System.out.println(ex.toString());
而不是 Resin 报错吧
 
我想这个报错应该是同SQL出现的错误,
而不是别的什么的
我的接SQL的方式是从书里照搬的
 
这是好像是SQL驱动的问题。解决方法:1、是将SQL驱动加载到环境变量中;2、是直接把驱动放到Tomcat的lib中。
 
我做了大量的实验,
我发现, 这个可能是版本的问题
我以前是用的是2000的系统,现在用的是XP可能是这个
JDBC的驱动有问题。
至于加载到环境变量中是怎样的,我就不知了,
另外我用的是Resin,不是用的是TOMCAT。
谢谢
 
没有人可以告诉
 
String url="jdbc:microsoft:sqlserver://liuxiang:1433;user=sa;password=888;DatabaseName=Leaders";
//url串中user和password的值可能要加单引号或双引号
String user="sa";
String password="888";
con=DriverManager.getConnection(url,user,password);
//这里又指定了user和password与url重复
 
xp找sql驱动就是那样抽风的!
我曾经也和你一样!
一样一样的错误!
 
空指针的错误,检查起来是很烦的,不知道你是否确信就是上面的程序段处错误了呢,
 
就是JDBC驱动的问题,建议不要用MS的JDBC驱动,偶以前也是这样,换第三方的JDBC就OK了。
 
建议使用 jtds 驱动
 
多人接受答案了。
 
顶部