`

java.lang.IllegalStateException: getOutputStream() has already been called for

    博客分类:
  • java
阅读更多
在jsp页面,向页面输出图片的时候,使用response.getOutputStream()会有这样的异常错误提示信息:
java.lang.IllegalStateException: getOutputStream() has already been called for this response

解决办法如下:
1.将输出改用servlet代替
2.在jsp页面的最后加上两句
out.clear();
out=pageContext.pushBody();

方法二的原理:
由于jsp container在处理完成请求后会调用releasePageContet方法释放所用的PageContext object,并且同时调用getWriter方法,由于getWriter方法与在jsp页面中使用流相关的getOutputStream方法冲突, 所以会造成这种异常
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics