21

サーブレットでこの例外が発生する一般的な可能性は何ですか - 応答は既にコミットされていますか?

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()
    
  • コードの一部が response で flushed を呼び出しました。つまり、 method を呼び出しましたHttpServletResponse.flushBuffer()

  • コードの一部が or をフラッシュしましたOutputStream。つまりWriter、メソッドHttpServletResponse.getOutputStream().flush()or `HttpServletResponse.getWriter().flush()を呼び出しました。

  • 別のページに転送した場合は、応答がコミットされて閉じられます。たとえば、response.sendRedirect() が呼び出されると、応答がコミットされます。

于 2012-07-03T06:33:38.930 に答える