public class OnDemandResponseBufferFilter extends HttpFilter
The response wrapper is additionally make available as a request attribute, so it's always obtainable even if a following filter
wraps the response again. By default the response wrapper is in "pass-through" mode, meaning it will do no buffering. Anywhere during the
request it can be switched to buffer by setting its passThrough
argument to false.
The next call to obtain the response's writer will then provide one that buffers. Do note that any existing writer that has been obtained
before passThrough
was set to false and is used afterwards, will not automatically start buffering. Only newly obtained
writers will buffer from that point on.
If at the end of the request, when this filter resumes control again, the response is still buffering (passThrough
is false)
its buffer will be automatically flushed to the underlying response. If however the buffer is not empty, but passThrough
is true,
no such flushing will be done and it's assumed the application has taken care of this.
Modifier and Type | Field and Description |
---|---|
static String |
BUFFERED_RESPONSE |
Constructor and Description |
---|
OnDemandResponseBufferFilter() |
Modifier and Type | Method and Description |
---|---|
void |
doFilter(HttpServletRequest request,
HttpServletResponse response,
HttpSession session,
FilterChain chain)
Filter the HTTP request.
|
destroy, doFilter, getFilterConfig, getInitParameter, getServletContext, init, init
public static final String BUFFERED_RESPONSE
public void doFilter(HttpServletRequest request, HttpServletResponse response, HttpSession session, FilterChain chain) throws ServletException, IOException
HttpFilter
null
if there is no session.doFilter
in class HttpFilter
request
- The HTTP request.response
- The HTTP response.session
- The HTTP session, if any, else null
.chain
- The filter chain to continue.ServletException
- As wrapper exception when something fails in the request processing.IOException
- Whenever something fails at I/O level.Filter.doFilter(ServletRequest, ServletResponse, FilterChain)
Copyright © 2012–2014 OmniFaces. All rights reserved.