`
guobingxu_javaeye
  • 浏览: 12306 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
最近访客 更多访客>>
社区版块
存档分类
最新评论

问题:getOutputStream() has already been called

阅读更多
2009-9-14 16:16:54 org.apache.catalina.core.StandardWrapperValve invoke
严重: Servlet.service() for servlet jsp threw exception
java.lang.IllegalStateException: getOutputStream() has already been called for this response
 at org.apache.catalina.connector.Response.getWriter(Response.java:610)
 at org.apache.catalina.connector.ResponseFacade.getWriter(ResponseFacade.java:198)
 at org.apache.jasper.runtime.JspWriterImpl.initOut(JspWriterImpl.java:125)
 at org.apache.jasper.runtime.JspWriterImpl.flushBuffer(JspWriterImpl.java:118)
 at org.apache.jasper.runtime.PageContextImpl.release(PageContextImpl.java:186)
 at org.apache.jasper.runtime.JspFactoryImpl.internalReleasePageContext(JspFactoryImpl.java:118)
 at org.apache.jasper.runtime.JspFactoryImpl.releasePageContext(JspFactoryImpl.java:77)
 at org.apache.jsp.index_jsp._jspService(index_jsp.java:83)
……

  

 

java.lang.IllegalStateException: getOutputStream() has already been called for this response
这是我当前碰到的异常,此异常非一般的图片验证码输出流之类的,

产生缘由:输入顶级或二级域名,自定义标签处理(标签核心代码见下),然后跳转到相应 Action,action里面若没有静态页就重新生成一遍,若有的话就直接跳转去访问静态页


 

 自定义标签

 try {
   RequestDispatcher rs = request.getSession().getServletContext().getRequestDispatcher(todo);
   rs.forward(request, response);
  } catch (IOException e) {
   e.printStackTrace();
   this.forword(request, response, URLForHomeSiteIndex);
  } 

 

 

 

分享到:
评论

相关推荐

    getOutputStream() has already been called for this response 错误解决

    在Java Web开发中,"getOutputStream() has already been called for this response" 是一个常见的错误,通常出现在使用Servlet或JSP时。这个错误意味着在HTTP响应中,`getOutputStream()`已经被调用,然后尝试再次...

    java.lang.IllegalStateException: getOutputStream() has already解决办法

    纠结了半天的 java.lang.IllegalStateException: getOutputStream() has already。这个问题困扰了半天,在网上查阅了大量资料 出这个错误一般就是下面2个.....

    tomcat6下jsp出现getOutputStream() has already been called for this response异常的原因和解决方法

    在使用Tomcat 6服务器部署和运行Java Server Pages (JSP) 时,可能会遇到一个特定的异常:“getOutputStream() has already been called for this response”。该异常发生在尝试向响应对象中写入数据时,已经调用了...

    验证码出现getOutputStream()问题解决

    验证码出现getOutputStream() has already been called for this response错误解决

    java.lang.IllegalStateException: OutputStream already obtain

    标题 "java.lang.IllegalStateException: OutputStream already obtain" 涉及到的是Java编程中的一个常见错误,特别是当处理I/O流时。这个异常通常在尝试获取已经存在的OutputStream实例时抛出,表明该输出流已经被...

    Cannot forward after response has been committed

    通过仔细审查代码、优化逻辑和正确处理异常,可以有效地解决"Cannot forward after response has been committed"的问题。 关于提供的"filterTest"文件,可能是用于测试过滤器功能的示例代码。分析和理解这段代码...

    JSP彩色验证码

    解决了getOutputStream() has already been called for this response. 并将产生验证码的逻辑从JSP页面中分离出来,单独写了一个类 便于重用。

    handleStream ServletOutputStream out = response.getOutputStream(); InputStream i

    标签中的"源码"提示我们可能需要深入理解`ServletOutputStream` 和`InputStream` 的内部实现,包括它们如何与网络I/O交互,以及如何处理缓冲区和数据编码等问题。而"工具"可能指的是使用这些流类来构建各种服务器端...

    httpServletResponse学习

    getOutputStream 方法返回的字节流对象类型是 ServletOutputStream,它可以直接输出字节数组中的二进制数据。如果 Servlet 要输出二进制格式的响应正文,就应该使用 getOutputStream 方法。 getWriter 方法将 ...

    org.apache.catalina.connector.ClientAbortException和TOMCAT的日志配置

    问题1:TOMCAT下载文件出错:org.apache.catalina.connector.ClientAbortException. 问题2:TOMCAT记录接收数据大小、发送数据大小和请求处理时间

    Java常见问题集锦

    ### Java常见问题集锦 #### 一、设置Java2(JDK1.2)的环境变量 **问题**:如何设置Java2(JDK1.2)的环境变量? **解答**: 1. **环境变量概述**:Java2安装完成后,为了确保能够顺利运行Java程序,需要配置系统的...

    Android实现蓝牙设备串口连接demo

    在实际开发中,可能还会遇到如蓝牙连接稳定性、设备配对、权限请求等问题,这些问题需要根据具体情况进行优化处理。提供的"BluetoothSeriaPortDemo"是一个很好的起点,它已经实现了基本的蓝牙串口通信功能,开发者...

    rxtx-2.1.7.jar串口通信gnu.io包不存在问题

    在Java编程环境中,进行串口通信时,常常会遇到一个问题:缺少`gnu.io`包,导致无法正常编译或运行程序。这个问题主要出现在使用RXTX库进行串口操作的项目中。RXTX是一个开源的Java库,它提供了与硬件进行串行通信的...

    JAVA 乱码问题集合

    例如,代码`new PrintWriter(new OutputStreamWriter(resp.getOutputStream(), "utf-8"))`就是设置输出流的编码为UTF-8,以解决返回中文时可能出现的乱码问题。这里的`utf-8`是关键,它应与浏览器期望的编码一致。 ...

    java和as3 socket通信 解决安全沙箱问题

    本文将深入探讨如何实现这两种语言间的Socket通信,并解决在Flash Player的安全沙箱问题。 首先,让我们理解什么是Socket通信。Socket是网络编程中的一个概念,它允许两个程序通过TCP/IP协议进行双向通信。在Java中...

    java常见问题.doc

    Java编程语言在软件开发中扮演着重要角色,其常见问题和解决方法对于开发者来说至关重要。以下是一些关于Java的重要知识点: 1. **Java环境变量配置**: - `JAVA_HOME`:这是Java开发环境的核心,指向Java ...

    HttpServletResponse对象、HttpServletResponse应用、请求重定向

    3. 写入响应体:`getOutputStream()`或`getWriter()`方法分别用于获取字节流和字符流,从而向客户端发送数据。例如,使用`getOutputStream().write()`可以输出二进制数据,`getWriter().print()`则适合输出文本。 ...

    Spring Boot使用EasyExcel导入导出Excel

    EasyExcel是一个基于Java的高性能、易用的Excel读写框架,它在处理大数据量的Excel时表现优秀,避免了内存溢出的问题。EasyExcel的核心设计理念是“按需加载”,即在读取Excel时只加载当前处理的数据行,极大地优化...

Global site tag (gtag.js) - Google Analytics