`
winhack
  • 浏览: 42595 次
  • 性别: Icon_minigender_1
  • 来自: 郑州
社区版块
存档分类
最新评论

getWriter()与getOutputStream()冲突

 
阅读更多

response.getWriter()

response.getOutputStream()

 

报错

java.lang.IllegalStateException: getWriter() has already been called for this response

 


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

 

 

解决方式:

1.使用getWriter()结束后应及时关闭。

out.close();

2.jsp页面可添加如下代码:

out.clear();

out=pageContext.pushBody();

3.如使用struts 应在方法后添加 return null;

分享到:
评论

相关推荐

    java web的注意事项

    getWriter() 和Response.getOutputStream冲突

    response.getWriter().write()用于ajax

    NULL 博文链接:https://yuhuiblog695685688425687986842568269.iteye.com/blog/2336132

    response.getWriter().write()向前台打印信息乱码问题解决

    response.getWriter().write() 功能:向前台页面显示一段信息。 当在普通的url方式中,会生成一个新的页面来显示内容。 当在ajax的方式中,会在alert中... 您可能感兴趣的文章:对python中的iter()函数与next()函数详解P

    ExcelUtil.java

    通用的Excel数据导入导出的java工具类,支持excel2003和excel2007

    关于Ajax技术中servlet末尾的输出流

    Ajax的服务器端用PrintWriter out=resp.getWriter()来响应数据的时候,out.print(0)、out.print(1)来表示成功或失败,而不用out.write是有原因的,首先来看一下print和write两者的异同点。  共同点是:两者都不刷新...

    servlet中文乱码问题

    Servlet + Tomcat 中文乱码的解决方法,浏览器把Unicode字符转换为GBK字符,这样页面的内容和浏览器的显示模式都设成了GBK,就不会乱码了

    Struts2与Ajax 精简源码

    Struts2与Ajax 的实现原理,于Servlet+Ajax原理是一致的,都是通过后台的response.getWriter().print("");把数据传输给前台的。 前台Ajax格式如下(需要导入ajax库,比如:jquery-1.11.3.js) 格式: $(function()...

    简单的登录验证

    简单的JavaEE登录验证,JSP与servlet编程实现:public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String name = request.getParameter(...

    网上购物系统设计与实现

    PrintWriter out=res.getWriter(); out.println("[removed]"); out.println("alert('您还没有登录!');"); out.println("[removed].href='../login_admin.jsp';"); out.println("[removed]"); }else{ ...

    powerbuilder

    从excel导入数据到datawindow-转载

    java学习资源整理

    req.setAttribute("result"); resp.setCotentType...charset= UTF-8") resp.setHeader("Cache-Control","no-cache"); resp.getWriter().write(message); resp.getWriter().flush(); resp.getWriter().close();

    微信公众平台握手验证

    微信公众平台 握手验证 完整jsp if("GET".equals(request.getMethod())){//验证... response.getWriter().write(request.getParameter("echostr")); response.getWriter().flush(); response.getWriter().close(); }

    EXCELUTILS所需的JAR包

    ExcelUtils 是一个在WEB应用开发中的EXCEL导出工具;;用EXCELUTILS导出excel所需的JAR包:excelutils.jar poi-2.5.1.jar commons-logging.jar commons-digester.jar commons-beanutils.jar,加外可能还需加添加osh....

    手机与服务器交互,服务器端代码

    当我们手机需要和服务器进行交互时,服务器端的代码...以最简单的this.response.getWriter().write(result); 进行服务器端返回。此时与服务器的交互流量最小。 一次下载包含了struts常用的jar。 嫌分多的就不要下载了。

    window与linux项目部署之linux文件路径不存在问题

    项目在windows上部署,上传图片功能一切正常,部署到linux服务器上,则莫名出错(大概是智障,居然忘记了*linux与windows文件目录的区别* ) 正常应该是这样: 实际上是这样: 从未遇到这种问题的土豆也有点...

    JavaWeb教材配套资源

    JavaWeb教材配套资源,内含每个章节的Demo项目源码。包含教材最后完整的网上商城案例源码,包含sql及项目源码... PrintWriter out = response.getWriter(); out.print("this servlet is created by eclipse"); } }

    【servlet】彻底解决doGet、doPost以及控制台中文乱码问题

    PrintWriter out = response.getWriter(); out.println(你好,世界!); 前端显示: 1.2 原因 没有设置HttpServletResponse使用哪种编码,默认编码跟浏览器解码不匹配。 1.3 解决方案: 方案1: 在PrintWriter out ...

    HttpServletResponse

    PrintWriter getWriter() 获得字符流,通过字符流的write(String s)方法可以将字符串设置到response 缓冲区中,随后Tomcat会将response缓冲区中的内容组装成Http响应返回给浏览 器端。 文件下载的实质就是文件拷贝...

    总结了java容易出错的信息 以及错误信息类型

    总结了java容易出错的信息 以及错误信息类型

Global site tag (gtag.js) - Google Analytics