在用response.sendRedirect()时,如何避免出现java.lang.IllegalStateException异常

oldbig615 2004-09-15 11:49:28
如题
...全文
516 9 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
zzffrr 2004-12-29
  • 打赏
  • 举报
回复
在response.sendRedirect之后,应该紧跟一句return
wumingwangzi 2004-12-29
  • 打赏
  • 举报
回复
2,在response.sendRedirect之后,应该紧跟一句return;
我们已经知道response.sendRedirect是通过浏览器来做转向的,所以只有在页面处理完成后,才会有实际的动作。既然你已经要做转向了,那么后的输出还有什么意义呢?而且有可能会因为后面的输出导致转向失败。

======================================================================================
我就碰见过这类事情,跳转后,后面的语句还会执行,呵呵,后来知道要加return
tom2005 2004-12-29
  • 打赏
  • 举报
回复
response.sendRedirect的注意事项
1,在使用response.sendRedirect时,前面不能有HTML输出。
这并不是绝对的,不能有HTML输出其实是指不能有HTML被送到了浏览器。事实上现在的server都有cache机制,一般在8K(我是说JSP SERVER),这就意味着,除非你关闭了cache,或者你使用了out.flush()强制刷新,那么在使用sendRedirect之前,有少量的HTML输出也是允许的。
如果报错说,“一些信息已经被submitted”(原文忘了),那么,你就要注意看了,前面是不是有过多的HTML输出了。

2,在response.sendRedirect之后,应该紧跟一句return;
我们已经知道response.sendRedirect是通过浏览器来做转向的,所以只有在页面处理完成后,才会有实际的动作。既然你已经要做转向了,那么后的输出还有什么意义呢?而且有可能会因为后面的输出导致转向失败。
oldbig615 2004-12-29
  • 打赏
  • 举报
回复
up
zfsnxhj 2004-11-03
  • 打赏
  • 举报
回复


if(!response.isCommitted())
response.sendRedirect("forward");
zhaohh 2004-11-03
  • 打赏
  • 举报
回复
我也
有此问题!
rainboy20024 2004-09-15
  • 打赏
  • 举报
回复
catch
youthy_yy 2004-09-15
  • 打赏
  • 举报
回复
捕获它
oldbig615 2004-09-15
  • 打赏
  • 举报
回复
我的意思是要避免出现这个异常,该怎么做

81,122

社区成员

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

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