java.lang.NullPointerException 老是出现这个错误,郁闷,急

niuzk0411 2007-12-16 11:57:56
在其他的电脑上没有这个问题,就是在这个电脑上就出现这个错误,很疑问,不知道是哪里错了,数据库也是打了sp3的补丁,什么都弄了,就是出现下面的问题,郁闷了好几天了,希望大家帮忙看看怎么回事????谢谢
org.apache.jasper.JasperException
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:372)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)


root cause

java.lang.NullPointerException
org.apache.jsp.index2_jsp._jspService(index2_jsp.java:136)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)



代码:
:<%@page contentType="text/html; charset=gb2312" import="java.sql.*"%>
<jsp:useBean id="dbconn" class="conn.conndb" scope="page"/>
<%String loginok=(String)session.getAttribute("loginok");
ResultSet rs=dbconn.executeQuery("select * from users");
%>
<html>
<head>
<title></title>
</head>
<body>
<table border=1 cellspacing=0>
<th>id</th><th>会员名</th><th>性别</th><th>权限</th><th>qq</th><th>发表主题数></th><th>回复主题</th><th>金钱</th><th>注册日期</th><th>操作</th>
<%while(rs.next()){%>
<tr><td><%=rs.getInt("id")%></td>
<td><%=rs.getString("username")%></td>
<td><%=rs.getString("sex")%></td>
<td><%=rs.getString("rank")%></td>
<td><%=rs.getString("qq")%></td>
<td><%=rs.getInt("pcount")%></td>
<td><%=rs.getInt("rcount")%></td>
<td><%=rs.getInt("money")%></td>
<td><%=rs.getDate("rdate")%></td>
</tr>
<%}
dbconn.close();%>
</table>
</body>
</html>

...全文
2301 27 打赏 收藏 转发到动态 举报
写回复
用AI写文章
27 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
呵呵,如果数据库接收不到数据,同样也会报空异常的,我一看就晓得肯定是数据库的补丁没打好。
niuzk0411 2007-12-23
  • 打赏
  • 举报
回复
哈哈我得问题解决了,就下载了一个sp4的补丁,装上之后就好了
不过还是要谢谢大家得帮助,解决了问题真的很兴奋,刚解决完就回帖了
o(∩_∩)o...
网络咖啡 2007-12-23
  • 打赏
  • 举报
回复
数据库没有连接上
老紫竹 2007-12-23
  • 打赏
  • 举报
回复
提醒一句:
String url="jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=mybbs";

你在2000上本机装了SQL Server 2000, 难道你在XP上也装了?不会吧!
如果没有装的话,那个127.0.0.1就不对了!!
niuzk0411 2007-12-23
  • 打赏
  • 举报
回复
在windows 2000 机器上就可以,在windows xp上就提示上面的错误
不知道是哪里得错误
不过为什么在windows 2000 机器上就可以,在windows xp上就提示上面的错误
有没有那位对mssqlserver 熟悉
是不是mssqlserver配置有问题,还是???
等待解决中……
dxlove 2007-12-20
  • 打赏
  • 举报
回复
空指针错误!你看一下,你的程序里面有一个东西一定为null
flyinginbed 2007-12-20
  • 打赏
  • 举报
回复
现看看返回的rs是否是空,如果不为空,看看rs.getXX()方法中的字段名是不是有错的
flyinginbed 2007-12-20
  • 打赏
  • 举报
回复
先看看你的返回的rs是否为空,不为空的话,在看看你的rs.getXX()方法中的字段名是不是与数据库中的对应。
KAKUKYOWU 2007-12-20
  • 打赏
  • 举报
回复
很明显阿,都告诉你是java文件index2_jsp.java的136行出现的空指针异常
看看在这一行用到的变量那个是null的
KAKUKYOWU 2007-12-20
  • 打赏
  • 举报
回复
支持4楼兄弟,空指针异常。
检查你的jsp中的变量哪个可能为空却又没有做相应的处理

wl7226089 2007-12-18
  • 打赏
  • 举报
回复
可能是补丁问题,打个sql server sp4补丁就行了,如果还有问题那就是程序了
niuzk0411 2007-12-18
  • 打赏
  • 举报
回复
我的不知道是哪里的原因,只要是用javabean来查询的地方就报这个错误郁闷了几天了,不知道怎么回事,请问是不是mssqlserver的问题,哪位对sqlserver比较熟,帮我看看……
谢谢了
这个问题一直不能解决
AllenCpp 2007-12-18
  • 打赏
  • 举报
回复
空指针异常,很常见的一个错误,可能你的数据库根本没有读到信息
eileen286157852 2007-12-18
  • 打赏
  • 举报
回复
<jsp:useBean id="dbconn" class="conn.conndb" scope="page"/>
<%String loginok=(String)session.getAttribute("loginok");
ResultSet rs=dbconn.executeQuery("select * from users");
看看是不是这几句话的问题。
eileen286157852 2007-12-18
  • 打赏
  • 举报
回复
java.lang.NullPointerException 这个是你在抛出异常的地方引用了一个值为NULL的对象。
niuzk0411 2007-12-17
  • 打赏
  • 举报
回复
我觉得不是我的javabean 的问题,是不是我的mssqlserver2000有问题,是不是防火墙的原因,郁闷
在2000下就可以,在xp下就不行
conndb.java

package conn;
import java.io.*;
import java.sql.*;
public class conndb
{
String url="jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=mybbs";
String user="sa";
String pwd="";
Connection conn;
Statement sta;
public conndb()
{
try
{
//Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
}
catch(java.lang.ClassNotFoundException e)
{
System.out.println(e.getMessage());
}
}
public ResultSet executeQuery(String sql)
{Statement sta=null;
ResultSet result=null;
try{
conn=DriverManager.getConnection(url,user,pwd);
sta=conn.createStatement();
result=sta.executeQuery(sql);}
catch(SQLException e){}
return result;
}
public int executeUpdate(String sql)
{Statement sta=null;
int ir=0;
try{conn=DriverManager.getConnection(url,user,pwd);
sta=conn.createStatement();
ir=sta.executeUpdate(sql);
}
catch(SQLException e){}
return ir;
}
public void close()
{
try{
if(sta!=null)
sta.close();
if(conn!=null)
conn.close();
}
catch(SQLException e){}
}

}
congjl2002 2007-12-17
  • 打赏
  • 举报
回复
你看看你的数据库属性里是不是设置的是用混合方式登录
wenjianfeng521 2007-12-17
  • 打赏
  • 举报
回复
可能是你的result 是空的,所以jsp界面报错了,你的javabean是没有错,但报错也没说是就javabean的错啊
  • 打赏
  • 举报
回复
代码即使不规范 应该也不会报错的,他那里的问题应该不在代码 因为他在其他的电脑上运行成功过了
很可能是数据库补丁没有打进去。。。
要运行MSSQLServer 2000SP3 补丁压缩包里的一个SERUPSQL.EXE
wusilou 2007-12-16
  • 打赏
  • 举报
回复
你把ResultSet result=null改成ResultSet result,然后再改为成员属行参数!
加载更多回复(6)

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧