报Servlet.service() for servlet jsp threw exception异常

眉形 2008-10-27 03:56:33
写了一个简单的公告管理系统,在登录时出现了一下异常。

2008-10-27 15:42:48 org.apache.catalina.core.ApplicationDispatcher invoke
严重: Servlet.service() for servlet jsp threw exception
javax.servlet.jsp.JspTagException: IOException:java.sql.SQLException: Illegal operation on empty result set.
at nm.tag.DisplayTag.doEndTag(DisplayTag.java:84)
at org.apache.jsp.user.noticelist_jsp._jspx_meth_mytag_005fpagingDisplay_005f0(noticelist_jsp.java:214)
at org.apache.jsp.user.noticelist_jsp._jspService(noticelist_jsp.java:119)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:331)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:679)
at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:461)
at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:399)
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:301)
at org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1063)
at org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:386)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:229)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)
at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:647)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:875)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
at java.lang.Thread.run(Thread.java:619)
其中DisplayTag.java源码如下:
package nm.tag;

import java.util.Vector;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.jsp.JspException;
import javax.servlet.jsp.JspTagException;
import javax.servlet.jsp.JspWriter;
import javax.servlet.jsp.tagext.TagSupport;

import nm.Notice;

public final class DisplayTag extends TagSupport {
/**
*
*/
private static final long serialVersionUID = 1L;

public int doEndTag() throws JspException {
JspWriter out = pageContext.getOut();
HttpServletRequest request = (HttpServletRequest) pageContext
.getRequest();
String strPage = request.getParameter("page");
int page;
if (strPage == null || strPage.equals(""))
page = 1;
else {
page = Integer.parseInt(strPage);
}

try {
int pageSize = 2;
Vector noticeVector = Notice.search(pageSize, page);
out.println("<table width=\"80%\" border=\"1\" align=\"center\"");

out.println("<tr align=\"right\" bgcolor=\"#CCFF66\">");
out.println("<th colspan=\"4\">");
out.println("<a href=\"noticelistjsp.do?page=-1\">首页</a> ");
out.println("<a href=\"noticelistjsp.do?page=-2\">上一页</a> ");
out.println("<a href=\"noticelistjsp.do?page=1\">1</a> ");
out.println("<a href=\"noticelistjsp.do?page=2\">2</a> ");
out.println("<a href=\"noticelistjsp.do?page=3\">3</a> ");
out.println("<a href=\"noticelistjsp.do?page=-3\">下一页</a> ");
out.println("<a href=\"noticelistjsp.do?page=-4\">尾页</a></th>");
out.println("</tr>");

out.println("<tr align=\"center\" bgcolor=\"#CC99CC\">");
out.println("<th width=\"35%\">标题</th>");
out.println("<th width=\"35%\">内容</th>");
out.println("<th width=\"15%\">修改</th>");
out.println("<th width=\"15%\">删除</th>");
out.println("</tr>");

String title = null;
String content = null;

Notice bean = null;
for (int i = 0; i < noticeVector.size(); i++) {
bean = (Notice) noticeVector.elementAt(i);

title = bean.getTitle();
title = new String(title.getBytes("ISO-8859-1"), "GB2312");

content = bean.getContent();
content = new String(content.getBytes("ISO-8859-1"), "GB2312");

out.println("<tr align=\"center\" bgcolor=\"#CCFF99\">");
out.println("<td height=\"80\">" + title + "</td>");
out.println("<td>" + content + "</td>");
out.println("<td>"
+ "<a href=\"checkpower.do?functiontype=noticeedit&id="
+ bean.getID() + "\">Edit</a> " + "</td>");
out
.println("<td>"
+ "<a href=\"checkpower.do?functiontype=noticedelete&id="
+ bean.getID() + "\">Delete</a> " + "</td>");
out.println("</tr>");
}

out.println("</table>");
out.clear();
out=pageContext.pushBody();
} catch (Exception ex) {
throw new JspTagException("IOException:" + ex.toString());
}

return super.doEndTag();
}
}
noticelist.jsp如下:
<%@ page contentType="text/html;charset=gb2312" language="java"%>
<%@ include file="/common/taglibs.jsp"%>
<html:html>
<head>
<title><bean:message key="pagingDisplay.title" /></title>
</head>
<link href="images/myStyleClass.css" rel="stylesheet" type="text/css">
<body>
<%@ include file="/common/header.jsp"%>
<center>
<A href="checkpower.do?functiontype=newnotice">撰写公告 </A>
<A href="userlogoff.do"> 注销登录</A>
</center>
<mytag:pagingDisplay />
<%@ include file="/common/footer.jsp"%>
<body>
</html:html>
不知道是哪里出了问题才会出现的异常,烦请各位大虾帮忙!!!
...全文
256 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
bruni 2008-10-27
  • 打赏
  • 举报
回复
javax.servlet.jsp.JspTagException: IOException:java.sql.SQLException: Illegal operation on empty result set.
数据库操作错误, 你在操作空的ResultSet.

81,092

社区成员

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

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