这是什么原因(tomcat的出错)

accsk 2005-03-22 03:15:20
type Exception report

message

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

exception

javax.servlet.ServletException: [Microsoft][ODBC 驱动程序管理器] 无效的游标状态
org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:825)
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:758)
org.apache.jsp.findpass_jsp._jspService(findpass_jsp.java:134)
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)


root cause

java.sql.SQLException: [Microsoft][ODBC 驱动程序管理器] 无效的游标状态
sun.jdbc.odbc.JdbcOdbc.createSQLException(JdbcOdbc.java:6106)
sun.jdbc.odbc.JdbcOdbc.standardError(JdbcOdbc.java:6263)
sun.jdbc.odbc.JdbcOdbc.SQLGetDataString(JdbcOdbc.java:3307)
sun.jdbc.odbc.JdbcOdbcResultSet.getDataString(JdbcOdbcResultSet.java:5492)
sun.jdbc.odbc.JdbcOdbcResultSet.getString(JdbcOdbcResultSet.java:342)
sun.jdbc.odbc.JdbcOdbcResultSet.getString(JdbcOdbcResultSet.java:399)
org.apache.jsp.findpass_jsp._jspService(findpass_jsp.java:110)
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)


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

看不懂 24 24
...全文
171 10 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
accsk 2005-03-23
  • 打赏
  • 举报
回复
unrealwalker(QQ95634620
说的没错 就是那原因
昨天我对if语句的执行体 设为空 就可以了
谢谢大家
hjack 2005-03-23
  • 打赏
  • 举报
回复
可能是你的数据库连接池url没有添加上SelectMethod=Cursor吧。。。
unrealwalker 2005-03-23
  • 打赏
  • 举报
回复
RS在while结束后就循环完了,就没用了,你再调用RS.getString("password")就会出错吧
accsk 2005-03-22
  • 打赏
  • 举报
回复
挖 没人 2424再顶
accsk 2005-03-22
  • 打赏
  • 举报
回复
顶上去 急啊
accsk 2005-03-22
  • 打赏
  • 举报
回复
代码如下:
<%@ page contentType="text/html;charset=gb2312" %>
<%@ page language="java" import="java.sql.*" %>

<jsp:useBean id="workM" scope="page" class="webmail.conn"/>
<%!
public String getStr(String str)
{
try{

String temp_p=str;
byte[] temp_t=temp_p.getBytes("ISO8859-1");
String temp=new String(temp_t);
return temp;
}
catch(Exception e)
{
e.printStackTrace();
}
return null;
}
%>
<%!
String logname,e_mail;
boolean loginAttempt=false;
String errorMessage="";
%>
<%
if(request.getParameterValues("findpass")!=null&&request.getParameterValues("logname")!=null&&request.getParameterValues("email")!=null)
{
loginAttempt=true;
}
if(loginAttempt)
{
logname=request.getParameter("logname");
e_mail=request.getParameter("email");
logname=getStr(logname);
e_mail=getStr(e_mail);
}
String sql="select * from member where logname='"+logname+"' and email='"+e_mail+"'";
ResultSet RS=workM.executeQuery(sql);
int count=0;
try{
while(RS.next())
{
count++;
errorMessage=RS.getString("password");
}
}
catch(Exception e){
e.printStackTrace();
}
//如果输入的用户名与emial 对应的话,则出现提示信息
if(count!=0)
{
errorMessage=RS.getString("password");
}
else{
errorMessage="你输入的用户名和email不正确";
}
%>
<table>
<tr>
<td align="center">
<font color=red>您的密码:<%=errorMessage%></font></td>
</tr>
</table>
power17 2005-03-22
  • 打赏
  • 举报
回复
看代码多好.这样有点像猜谜.
dadunqingwa 2005-03-22
  • 打赏
  • 举报
回复
rs游标的问题……
wenchaohu213 2005-03-22
  • 打赏
  • 举报
回复
服务器运行中的内部错误
  • 打赏
  • 举报
回复
JdbcOdbc的游标是不可以任意移动的

81,122

社区成员

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

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