使用rs.next()时jsp页面会出现错误?

caoruomou 2004-09-20 04:18:55
ResultSet answerrs = answer.answer_all(question_id);
if(answerrs!=null){
while(answerrs.next()){
Date currentTime = answerrs.getDate("Restore_date");//处理时间
}
}
jsp出现如下错误,还请高手指点:
HTTP Status 500 -

--------------------------------------------------------------------------------

type Exception report

message

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

exception

javax.servlet.ServletException: ??? Resultset: next
org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:867)
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:800)
org.apache.jsp.answer_005fquestion_jsp._jspService(answer_005fquestion_jsp.java:143)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:133)
javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:311)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:301)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:248)
javax.servlet.http.HttpServlet.service(HttpServlet.java:856)


root cause

java.sql.SQLException: ??? Resultset: next
oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:179)
oracle.jdbc.dbaccess.DBError.check_error(DBError.java:1130)
oracle.jdbc.driver.OracleResultSetImpl.next(OracleResultSetImpl.java:196)
org.apache.commons.dbcp.DelegatingResultSet.next(DelegatingResultSet.java:196)
org.apache.jsp.answer_005fquestion_jsp._jspService(answer_005fquestion_jsp.java:115)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:133)
javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:311)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:301)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:248)
javax.servlet.http.HttpServlet.service(HttpServlet.java:856)


note The full stack trace of the root cause is available in the Tomcat logs.


--------------------------------------------------------------------------------

Apache Tomcat/5.0.16
...全文
173 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
sheisman 2004-10-25
  • 打赏
  • 举报
回复
是不是有记录阿
caoruomou 2004-10-25
  • 打赏
  • 举报
回复
我明白了
在java类中我将连接close了,应该为null
caoruomou 2004-10-22
  • 打赏
  • 举报
回复
很奇怪,我将java中的内容放到jsp中,连接和sql是一样,就可以了,只是stmt不同
这个有差别,我在java中是用stmt = conn.prepareStatement(sql);
rs = stmt.executeQuery();这样写的返回result是成功的,但是不能answerrs.next();真是奇怪。jsp中的方法如下,就可以了:
Statement stmt = con.createStatement(ResultSet.TYPE_FORWARD_ONLY ,ResultSet.CONCUR_UPDATABLE);
String sql = "select * form a";
ResultSet answerrs = stmt.executeQuery(sql);
if(answerrs!=null){
while(answerrs.next()){
Date currentTime = answerrs.getDate("Restore_date");//处理时间
}
}
newnewworm 2004-09-20
  • 打赏
  • 举报
回复
应该在你的数据获取上的问题
在你 程序中多做几个断点测试
看看输出什么信息!·
rumlee 2004-09-20
  • 打赏
  • 举报
回复
应该是数据库连接的错误,如果连接没有问题的话,那么就是你getDate的时候碰到了DbNull了,看看查询出来的有没有null的。
YtaoH 2004-09-20
  • 打赏
  • 举报
回复
我觉得应该数据库连接问题,你看看能不能取出数据来,写代码试试能不能输出数据
别问我是谁 2004-09-20
  • 打赏
  • 举报
回复
ResultSet answerrs = answer.answer_all(question_id);
while(answerrs!=null&&answerrs.next()){
Date currentTime = answerrs.getDate("Restore_date");//处理时间

}
vongood 2004-09-20
  • 打赏
  • 举报
回复
gz
huangry 2004-09-20
  • 打赏
  • 举报
回复
我觉得基本上肯定是字段名 或者类型有问题阿
redlaputa 2004-09-20
  • 打赏
  • 举报
回复
oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:179)
oracle.jdbc.dbaccess.DBError.check_error(DBError.java:1130)

数据库错误,看看数据库权限、网络连接有问题吗

重启服务器试试
caoruomou 2004-09-20
  • 打赏
  • 举报
回复
字段名是肯定没错,我看了几百次
射天狼 2004-09-20
  • 打赏
  • 举报
回复
程序没什么错误,字段名对吗?!

62,614

社区成员

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

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