- java.lang.Object
-
- jakarta.servlet.ServletResponseWrapper
-
- jakarta.servlet.http.HttpServletResponseWrapper
-
- org.omnifaces.servlet.HttpServletResponseOutputWrapper
-
- org.omnifaces.servlet.BufferedHttpServletResponse
-
- All Implemented Interfaces:
HttpServletResponse
,ServletResponse
public class BufferedHttpServletResponse extends HttpServletResponseOutputWrapper
This HTTP servlet response implementation buffers the entire response body. The buffered response body is available as a byte array via thegetBuffer()
method. Note that the buffered response writer will use same character encoding as is been set on the response supplied to the constructor and that this way anyServletResponse.setCharacterEncoding(String)
calls on the included JSP/Servlet resource have thus no effect.- Since:
- 1.1
- Author:
- Bauke Scholtz
-
-
Field Summary
-
Fields inherited from interface jakarta.servlet.http.HttpServletResponse
SC_ACCEPTED, SC_BAD_GATEWAY, SC_BAD_REQUEST, SC_CONFLICT, SC_CONTINUE, SC_CREATED, SC_EXPECTATION_FAILED, SC_FORBIDDEN, SC_FOUND, SC_GATEWAY_TIMEOUT, SC_GONE, SC_HTTP_VERSION_NOT_SUPPORTED, SC_INTERNAL_SERVER_ERROR, SC_LENGTH_REQUIRED, SC_METHOD_NOT_ALLOWED, SC_MOVED_PERMANENTLY, SC_MOVED_TEMPORARILY, SC_MULTIPLE_CHOICES, SC_NO_CONTENT, SC_NON_AUTHORITATIVE_INFORMATION, SC_NOT_ACCEPTABLE, SC_NOT_FOUND, SC_NOT_IMPLEMENTED, SC_NOT_MODIFIED, SC_OK, SC_PARTIAL_CONTENT, SC_PAYMENT_REQUIRED, SC_PRECONDITION_FAILED, SC_PROXY_AUTHENTICATION_REQUIRED, SC_REQUEST_ENTITY_TOO_LARGE, SC_REQUEST_TIMEOUT, SC_REQUEST_URI_TOO_LONG, SC_REQUESTED_RANGE_NOT_SATISFIABLE, SC_RESET_CONTENT, SC_SEE_OTHER, SC_SERVICE_UNAVAILABLE, SC_SWITCHING_PROTOCOLS, SC_TEMPORARY_REDIRECT, SC_UNAUTHORIZED, SC_UNSUPPORTED_MEDIA_TYPE, SC_USE_PROXY
-
-
Constructor Summary
Constructors Constructor Description BufferedHttpServletResponse(HttpServletResponse response)
Construct a buffered HTTP servlet response which wraps the given response.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected OutputStream
createOutputStream()
Returns the custom implementation of the servlet responseOutputStream
.byte[]
getBuffer()
Flushes and returns the buffered response.String
getBufferAsString()
Flushes and returns the buffered response as a string which is encoded using the character encoding provided byServletResponseWrapper.getCharacterEncoding()
.-
Methods inherited from class org.omnifaces.servlet.HttpServletResponseOutputWrapper
close, flushBuffer, getOutputStream, getWriter, isCommitted, isPassThrough, reset, setPassThrough
-
Methods inherited from class jakarta.servlet.http.HttpServletResponseWrapper
addCookie, addDateHeader, addHeader, addIntHeader, containsHeader, encodeRedirectUrl, encodeRedirectURL, encodeUrl, encodeURL, getHeader, getHeaderNames, getHeaders, getStatus, getTrailerFields, sendError, sendError, sendRedirect, setDateHeader, setHeader, setIntHeader, setStatus, setStatus, setTrailerFields
-
Methods inherited from class jakarta.servlet.ServletResponseWrapper
getBufferSize, getCharacterEncoding, getContentType, getLocale, getResponse, isWrapperFor, isWrapperFor, resetBuffer, setBufferSize, setCharacterEncoding, setContentLength, setContentLengthLong, setContentType, setLocale, setResponse
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface jakarta.servlet.ServletResponse
getBufferSize, getCharacterEncoding, getContentType, getLocale, resetBuffer, setBufferSize, setCharacterEncoding, setContentLength, setContentLengthLong, setContentType, setLocale
-
-
-
-
Constructor Detail
-
BufferedHttpServletResponse
public BufferedHttpServletResponse(HttpServletResponse response)
Construct a buffered HTTP servlet response which wraps the given response.- Parameters:
response
- The response to be wrapped.
-
-
Method Detail
-
createOutputStream
protected OutputStream createOutputStream()
Description copied from class:HttpServletResponseOutputWrapper
Returns the custom implementation of the servlet responseOutputStream
.- Specified by:
createOutputStream
in classHttpServletResponseOutputWrapper
- Returns:
- The custom implementation of the servlet response
OutputStream
.
-
getBuffer
public byte[] getBuffer() throws IOException
Flushes and returns the buffered response.- Returns:
- The buffered response.
- Throws:
IOException
- When an I/O error occurs.
-
getBufferAsString
public String getBufferAsString() throws IOException
Flushes and returns the buffered response as a string which is encoded using the character encoding provided byServletResponseWrapper.getCharacterEncoding()
.- Returns:
- The buffered response as string.
- Throws:
IOException
- When an I/O error occurs.
-
-