java Web问题
这到底是啥错啊?public void doPost (HttpServletRequest req,
HttpServletResponse res) throws ServletException, IOException {
HttpSession session = req.getSession();
Member member = (Member)session.getAttribute("member");
HoldSet heldBooks = null;
try {
heldBooks = LibraryMember.getMemberHolds( member );
} catch( Exception e ){
sendErrorRedirect(req, res, e);
}
BookTitleSet books = new BookTitleSet();
try {
for( int i=0; i<heldBooks.getHoldCount(); i++ ) {
books.addBookTitle(LibraryBookTitle.getBookTitle(heldBooks.getHoldAt(i).getCallNumber()));
}
} catch( Exception e ){
sendErrorRedirect(req, res, e);
}
session.setAttribute("books", books);
res.sendRedirect("/library/viewheldbooks.jsp");
return;
}
public void doGet (HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException
{
doPost(req, res);
}
The server encountered an internal error () that prevented it from fulfilling this request.
exception
java.lang.IllegalStateException
org.apache.catalina.connector.ResponseFacade.sendRedirect(ResponseFacade.java:435)
MemberViewonholdController.doPost(MemberViewonholdController.java:40)
Controller.doGet(Controller.java:39)
javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
note The full stack trace of the root cause is available in the Apache Tomcat/6.0.13 logs.
Java Web 异常 Apache --------------------编程问答-------------------- --------------------编程问答-------------------- 在sendErrorRedirect(req, res, e);方法后加return语句即可,如下:
sendErrorRedirect(req, res, e);
return;
原因是:在程序中两次调用了response.sendRedirect()方法。
jdk5.0文档中很清楚地介绍了出现IllegalStateException异常的可能情况:
1)同一个页面中再次调用response.sendRedirect()方法。
2)提交的URL错误,即不是个有效的URL。
--------------------编程问答-------------------- --------------------编程问答-------------------- 在程序中两次调用了response.sendRedirect()方法。 ,同意楼上的说法 --------------------编程问答-------------------- Controller.doGet(Controller.java:39) 39行;
贴完整代码
补充:Java , Web 开发