源程序的一部分, 写在servlet中:
public void logout(HttpServletRequest request, HttpServletResponse response)
throws ServletException,IOException{
HttpSession session = request.getSession();
session.removeAttribute("username");
response.sendRedirect(request.getContextPath()+ "/admin/login.jsp");
}
上面程序当执行到最后一句时出现了问题,问题输出下面 求各位高手花一分钟时间看一下,在下先谢谢了。
java.lang.IllegalStateException
at org.apache.catalina.connector.ResponseFacade.sendRedirect(ResponseFacade.java:435)
at com.js.servlet.adminUser.doPost(adminUser.java:32)
at com.js.servlet.adminUser.doGet(adminUser.java:21)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:619)
解决方案 »
- 这段代码怎么修改才能进行不同身份的登录?
- 【求助】从哪些方面考虑对一个现有系统的改造?
- jsp在线聊天问题?
- 这个问题怎么回事
- ibatis中关于主键自增问题
- 无法编译servert该怎样解决?
- tomcat中的jsp 编译对javabean有特殊要求吗?
- 请教jsp高手如何实现类似于includ的功能把一段代码引入?高分相赠!!!!!!
- weblogic的servlet是否可以直接通过servlet/className访问
- 为什么说我'context:component-scan' 未声明?
- jsp像asp.net的dbgrid一样显示数据
- Unknown column 'bsname' in 'field list'
楼主【jingshuai1029】截止到2008-07-10 21:44:13的历史汇总数据(不包括此帖):
发帖的总数量:3 发帖的总分数:230 每贴平均分数:76
回帖的总数量:11 得分贴总数量:1 回帖的得分率:9%
结贴的总数量:0 结贴的总分数:0
无满意结贴数:0 无满意结贴分:0
未结的帖子数:3 未结的总分数:230
结贴的百分比:0.00 % 结分的百分比:0.00 %
无满意结贴率:---------------------无满意结分率:---------------------
如何结贴请参考这里:http://topic.csdn.net/u/20080501/09/ef7ba1b3-6466-49f6-9d92-36fe6d471dd1.html
高级搜索 | 使用偏好
所有网页 中文网页 简体中文网页 中国的网页
网页 约有111,000项符合java.lang.IllegalStateException 的查询结果,以下是第1-10项 (搜索用时 0.04 秒)
简单理解java.lang.IllegalStateException异常:简单分析和简单解决方案 ...
getOutputStream(); 抛出异常: ERROR [Engine] StandardWrapperValve[jsp]: Servlet.service() for servlet jsp threw exception java.lang.IllegalStateException: ...
blog.csdn.net/patriotlml/archive/2007/05/28/1628556.aspx - 35k - 网页快照 - 类似网页
java.lang.IllegalStateException异常解决办法- 记录历史,展望未 ...
java.lang.IllegalStateException异常解决办法. ... java.lang.IllegalStateException - If the response was committed or if a partial URL is given and cannot be ...
blog.csdn.net/freedom119/archive/2007/08/31/1766851.aspx - 27k - 网页快照 - 类似网页
blog.csdn.net站内的其它相关信息 »
简单理解java.lang.IllegalStateException异常:简单分析和简单解决方案 ...
简单理解java.lang.IllegalStateException异常:简单分析和简单解决方案.
read.newbooks.com.cn/info/128444.html - 18k - 网页快照 - 类似网页
java.lang.IllegalStateException - thinktalk - BlogJava
re: java.lang.IllegalStateException 回复 更多评论 ... 谢谢; --sdu; 3. re: java.lang.IllegalStateException; 不能同时有两次的response.sendRedirect();; --sdf ...
www.blogjava.net/ThinkingTalking/archive/2007/08/22/114839.html - 36k - 网页快照 - 类似网页
错误:java.lang.IllegalStateException: must call load class ...
re: 错误:java.lang.IllegalStateException: must call load class on top 2007-06-26 11:04 BeanSoft. 我们还碰过过测试的时候启动weblogic 的账户和类库的jar 文件 ...
www.blogjava.net/sayyy/archive/2007/06/25/126104.html - 24k - 网页快照 - 类似网页
www.blogjava.net站内的其它相关信息 »
java.lang.IllegalStateException_百度知道
java.lang.IllegalStateException. 悬赏分:20 - 解决时间:2007-12-18 10:17 ... jspsmart下载异常:java.lang.IllegalStateException. ...
zhidao.baidu.com/question/41712434.html?fr=qrl3 - 22k - 网页快照 - 类似网页
高分求解:java.lang.IllegalStateException: getOutputStream() has ...
主题:高分求解:java.lang.IllegalStateException: getOutputStream() has already been called for this response 我用此类下载文件,下载正常但在日志中报如下错误, ...
book.77169.org/data/web5401/20050311/20050311__3814089.html - 11k - 网页快照 - 类似网页
有没有人遇到这种异常:java.lang.IllegalStateException: Function is ...
有没有人遇到这种异常:java.lang.IllegalStateException: Function is not supported?
www.javanb.com/eclipse/1/9800.html - 14k - 网页快照 - 类似网页
请教java.lang.IllegalStateException:getOutputStream()错误解决方法
2005年7月13日 ... java.lang.IllegalStateException: getOutputStream() has already been called for this response这个错误是怎么回事呢, 我在用bufferimputStream向 ...
dev2dev.bea.com.cn/bbs/thread.jspa?forumID=121&threadID=24496&messageID=143599 - 26k - 网页快照 - 类似网页
请问jspSmartUpload报错为“java.lang.IllegalStateException ”是什么意思?
主要解答:sanda; 感谢:sanda; 审核者:xmvigour. 请问jspSmartUpload报错为“java.lang.IllegalStateException ”是什么意思? ...
book.chinaz.com/FAQ/jsp/991.html - 2k - 网页快照 - 类似网页相关搜索:
java.lang
1
2
3
4
5
6
7
8
9
10
下一页
org.apache.catalina.connector.ResponseFacade.sendRedirect(ResponseFacade.java:423)经过分析、查看jdk文档终于找到解决的办法,在response.sendRedirect()方法后加return语句即可,如下:
response.sendRedirect("login.jsp");
return;原因是:在程序中两次调用了response.sendRedirect()方法。
2)提交的URL错误,即不是个有效的URL。 sendRedirect
void sendRedirect(java.lang.String location)
throws java.io.IOException
Sends a temporary redirect response to the client using the specified redirect location URL. This method can accept relative URLs; the servlet container must convert the relative URL to an absolute URL before sending the response to the client. If the location is relative without a leading '/' the container interprets it as relative to the current request URI. If the location is relative with a leading '/' the container interprets it as relative to the servlet container root.
If the response has already been committed, this method throws an IllegalStateException. After using this method, the response should be considered to be committed and should not be written to. Parameters:
location - the redirect location URL
Throws:
java.io.IOException - If an input or output exception occurs
java.lang.IllegalStateException - If the response was committed or if a partial URL is given and cannot be converted into a valid URL
response.sendRedirect("login.jsp");
return;
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
String itemNo = req.getParameter("itemNo");
Item item = new ItemManagerImpl().findItemById(itemNo);
List itemCategoryList = DataDictManager.getInstance().getItemCategoryList();
List itemUnitList = DataDictManager.getInstance().getItemUnitList();
req.setAttribute("item", item);
req.setAttribute("itemCategoryList", itemCategoryList);
req.setAttribute("itemUnitList", itemUnitList);
req.getRequestDispatcher("/basedata/item_modify.jsp").forward(req, resp); String commond = req.getParameter("commond");
if(!(commond == null && "".equals(commond)) && "modify".equals(commond)) {
Item itemModify = new Item();
itemModify.setItemNo(req.getParameter("itemNo"));
itemModify.setItemName(req.getParameter("itemName"));
itemModify.setPattern(req.getParameter("pattern"));
itemModify.setSpec(req.getParameter("spec"));
ItemCategory itemCategoryModify = new ItemCategory();
itemCategoryModify.setId(req.getParameter("category"));
itemModify.setItemCategory(itemCategoryModify);
ItemUnit itemUnitModify = new ItemUnit();
itemUnitModify.setId(req.getParameter("unit"));
itemModify.setItemUnit(itemUnitModify);
new ItemManagerImpl().modifyItem(itemModify);
resp.sendRedirect(req.getContextPath() + "/servlet/item/SercherItemServlet");
return;
}
}
改称这样就好了:
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
String commond = req.getParameter("commond");
if(!(commond == null && "".equals(commond)) && "modify".equals(commond)) {
Item itemModify = new Item();
itemModify.setItemNo(req.getParameter("itemNo"));
itemModify.setItemName(req.getParameter("itemName"));
itemModify.setPattern(req.getParameter("pattern"));
itemModify.setSpec(req.getParameter("spec"));
ItemCategory itemCategoryModify = new ItemCategory();
itemCategoryModify.setId(req.getParameter("category"));
itemModify.setItemCategory(itemCategoryModify);
ItemUnit itemUnitModify = new ItemUnit();
itemUnitModify.setId(req.getParameter("unit"));
itemModify.setItemUnit(itemUnitModify);
new ItemManagerImpl().modifyItem(itemModify);
resp.sendRedirect(req.getContextPath() + "/servlet/item/SercherItemServlet");
return;
} else {
String itemNo = req.getParameter("itemNo");
Item item = new ItemManagerImpl().findItemById(itemNo);
List itemCategoryList = DataDictManager.getInstance().getItemCategoryList();
List itemUnitList = DataDictManager.getInstance().getItemUnitList();
req.setAttribute("item", item);
req.setAttribute("itemCategoryList", itemCategoryList);
req.setAttribute("itemUnitList", itemUnitList);
req.getRequestDispatcher("/basedata/item_modify.jsp").forward(req, resp);
}
}