jsp连接运行时发生错误 急求答案!!!

type Exception report

message

description The server encountered an internal error () that prevented it from fulfilling this request.

exception

org.apache.jasper.JasperException: Exception in JSP: /update.jsp:42

39: <td>修改</td>
40: </tr>
41: <%
42: while (rs.next()){//获取学生数据表中的记录
43: %>
44: <tr align="left" class="style1">
45: <td><%=rs.getString("id")%></td>

Stacktrace:
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:489)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:411)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:308)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:259)
javax.servlet.http.HttpServlet.service(HttpServlet.java:729)

root cause

java.lang.NullPointerException
org.apache.jsp.update_jsp._jspService(update_jsp.java:94)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98)
javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:369)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:308)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:259)
javax.servlet.http.HttpServlet.service(HttpServlet.java:729)

这是我的update.jsp
<%@ page contentType="text/html;charset=gb2312" language="java" import="java.sql.*"%>
<jsp:useBean id="dbconn" scope="page" class="ShuJu.DBconn"/>
<html>
<head>
<title>修改客户信息</title>
<style type="text/css">
<!--
.style1 {
font-size: 12px;
color: #000000;
}
.style2 {
font-size: 12px;
color: #0033FF;
}
body {
background-color: #FFFFCC;
}
-->
</style>
</head>
<body>
<%
//TestBean.DBconn dbconn=new TestBean.DBconn();//获取数据库访问对象DBconn实例dbconn
dbconn.getConnection();//调用DBconn数据库连接方法
String sql="select * from student";//设置查询SQL语句
ResultSet rs=dbconn.selectRecord(sql);//调用DBconn数据查询方法
%>
<p align="center" class="style1">客户信息一览表</p>
<hr>
<table border=0 width="750">
<tr align="center" bgcolor="#CCFF22" class="style2">
<td>编号</td>
<td>姓名</td>
<td>性别</td>
<td>电话话吗</td>
<td>购买日期</td>

<td>修改</td>
</tr>
<%
while (rs.next()){//获取学生数据表中的记录
%>
<tr align="left" class="style1">
<td><%=rs.getString("id")%></td>
<td><%=rs.getString("name")%></td>
<td><%=rs.getString("sex")%></td>
<td><%=rs.getString("phonenmber")%></td>
<td><%=rs.getString("date")%></td>

<td><a href="update1.jsp?id=<%=rs.getObject(1)%>">修改</a></td>
</tr>
<%}
dbconn.closeConn();
%>
</table>
</body>
</html>

楼主,有空指针啊,出毛病的地方可能就多了,你只弄出来一部分代码,可能是你<td><%=rs.getString("name")%></td>这里的name字段就没有,也可能是rs是null·····出毛病的地方可多了,还有你这个<td><a href="update1.jsp?id=<%=rs.getObject(1)%>">修改</a></td>为什么又拿到一个基类呢?建议规范点,要是用数字都用数字,别数字字符混用,可以先去掉一部分相同的代码先调试一下。看是不是哪里出现了很简单的毛病!
温馨提示:内容为网友见解,仅供参考
第1个回答  2010-08-20
数据类型出错。我觉得应该是最后修改链接那个getString("id")那里,你在数据库中存的id是整数类型的,所以抛出类型不匹配异常。建议改成getInt,额,或者integer,再toString()。
第2个回答  2010-08-20
回答者: 术士2010 - 三级

你说的那个,不对。getString("字段名");不是说 id 是整形就非要用
getInt()
==========================
看异常,报的是空指针。知道是什么异常,查错范围就缩小了。可以根据会报空指针的地方排查,代码我看了,没有错误。看以上的,我觉得应该是Usebean的问题,你排查下。
建议把useBean的page范围改成request或者session。原因page范围实效比较小,页面之间传递后就失效,我曾经遇到过一次莫名的错误。传值过来取不到。
第3个回答  2010-08-21
org.apache.jsp.update_jsp._jspService(update_jsp.java:94)

不的我说的你能不能看懂,在服务器上,你把jsp上传后tomcat自动编译classes文件,把他放在tomcat/work文件夹里,您找到这个文件夹,里面有update_jsp.java 你打开文件,里面94行有问题,你看下94行是什么东西,解决他就可以了

不过有很多空间商你自己看不到work这个文件夹,因为我看你说你的空间是iis,看来不是个专业的jsp空间提供商! 你自己看下吧,不明白的可以在hi我
第4个回答  2010-08-22
我觉得<td><a href="update1.jsp?id=<%=rs.getObject(1)%>">修改</a></td>
这一句有问题,你应该建一个Javabean,在里面设置set和get方法,将getString方法从数据库得到的数据放到javabean里,再调用getString方法取出。不然的话贸然引用getObject可能数据库不认。建议楼主试一试。
第5个回答  2010-09-03
你那样写肯定会内存溢出的。。。
把 这句 while( !rs.isLast() )
改成 while(rs.next())试试
把while循环里边的rs.next()去掉

While(rs.next())
{
System.out.Println(rs.getString(“XXx”))
}
相似回答
大家正在搜