21

在 servlet 中遇到此异常的常见可能性是什么 - 响应已提交?

4

1 回答 1

35

由于以下原因,响应被提交:

  • 因为响应缓冲区已达到最大缓冲区大小。这可能是由于以下原因:

      > the bufferSize in JSP page has reached.You can increase the JSP buffer size 
        in page directive. See here, 
    
       <%@ page buffer="5kb" autoFlush="false" %>
    
      > the server default response max buffer size has reached.You can increase    
        the server default max buffer size.
    
        ServletRespnse.setBufferSize()
    
  • 代码的某些部分在响应上调用了flushed,即调用了方法HttpServletResponse.flushBuffer()

  • 代码的某些部分已刷新OutputStreamor Writer,即调用方法HttpServletResponse.getOutputStream().flush()或 `HttpServletResponse.getWriter().flush()

  • 如果您已转发到另一个页面,该页面的响应既已提交又已关闭。例如,当 response.sendRedirect() 被调用时,响应被提交。

于 2012-07-03T06:33:38.930 回答