|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.springframework.web.filter.GenericFilterBean org.springframework.web.filter.OncePerRequestFilter
public abstract class OncePerRequestFilter
Filter base class that guarantees to be just executed once per request,
on any servlet container. It provides a doFilterInternal
method with HttpServletRequest and HttpServletResponse arguments.
The getAlreadyFilteredAttributeName
method determines how
to identify that a request is already filtered. The default implementation
is based on the configured name of the concrete filter instance.
doFilterInternal(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, javax.servlet.FilterChain)
,
getAlreadyFilteredAttributeName()
Field Summary | |
---|---|
static String |
ALREADY_FILTERED_SUFFIX
Suffix that gets appended to the filter name for the "already filtered" request attribute. |
Fields inherited from class org.springframework.web.filter.GenericFilterBean |
---|
logger |
Constructor Summary | |
---|---|
OncePerRequestFilter()
|
Method Summary | |
---|---|
void |
doFilter(ServletRequest request,
ServletResponse response,
FilterChain filterChain)
This doFilter implementation stores a request attribute for "already filtered", proceeding without filtering again if the attribute is already there. |
protected abstract void |
doFilterInternal(HttpServletRequest request,
HttpServletResponse response,
FilterChain filterChain)
Same contract as for doFilter, but guaranteed to be just invoked once per request. |
protected String |
getAlreadyFilteredAttributeName()
Return the name of the request attribute that identifies that a request is already filtered. |
protected boolean |
shouldNotFilter(HttpServletRequest request)
Can return true to avoid filtering of the given request. |
Methods inherited from class org.springframework.web.filter.GenericFilterBean |
---|
addRequiredProperty, destroy, getFilterConfig, getFilterName, getServletContext, init, initBeanWrapper, initFilterBean, setFilterConfig |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final String ALREADY_FILTERED_SUFFIX
getAlreadyFilteredAttributeName()
,
Constant Field ValuesConstructor Detail |
---|
public OncePerRequestFilter()
Method Detail |
---|
public final void doFilter(ServletRequest request, ServletResponse response, FilterChain filterChain) throws ServletException, IOException
ServletException
IOException
getAlreadyFilteredAttributeName()
,
shouldNotFilter(javax.servlet.http.HttpServletRequest)
,
doFilterInternal(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, javax.servlet.FilterChain)
protected String getAlreadyFilteredAttributeName()
GenericFilterBean.getFilterName()
,
ALREADY_FILTERED_SUFFIX
protected boolean shouldNotFilter(HttpServletRequest request) throws ServletException
request
- current HTTP request
ServletException
- in case of errorsprotected abstract void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain) throws ServletException, IOException
ServletException
IOException
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |