您好,欢迎来到年旅网。
搜索
您的当前位置:首页java.lang.IllegalStateException: Cannot call sendError() after the response has been committed

java.lang.IllegalStateException: Cannot call sendError() after the response has been committed

来源:年旅网

java.lang.IllegalStateException: Cannot call sendError() after the response has been committed

原创  2013年07月27日 17:24:04
原创作品,允许转载,转载时请务必以超链接形式标明文章   、作者信息和本人声明。否则将追究法律责任。
作者:     地址:

做开发的时候,有时候报错:

java.lang.IllegalStateException: Cannot call sendError() after the response has been committed

字面上是参数异常, 在response已经提交之后 不能发送错误请求。

下面看个例子就一目了然了:

[java]   

首先,利用reponse.getWrite()获得输出流对象,close()之后,这里reponse其实已经提交了。注释下面的sendRedirect代码,执行之后发现response已经进行已经跳转了,只不过url没有发生改变,并且页面上已经有输出上面指定的字符串。

所以当执行上面代码之后 ,reponse 会提交两次,服务器就不知道该怎么办了,所以抛出异常。


解决方案: 去掉out.close()  这里不会因为PrintWriter 输出对象没有关闭而占用资源的。


 
  • 2017-08-15 16:221楼
  • 感谢

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- oldu.cn 版权所有 浙ICP备2024123271号-1

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务