public class WikiServletFilter extends Object implements javax.servlet.Filter
WikiEngine
is running, and
sets the authentication status for the user's WikiSession. Each HTTP request
processed by this filter is wrapped by a WikiRequestWrapper
. The wrapper's
primary responsibility is to return the correct userPrincipal
and
remoteUser
for authenticated JSPWiki users (whether
authenticated by container or by JSPWiki's custom system).
The wrapper's other responsibility is to incorporate JSPWiki built-in roles
into the role-checking algorithm for HttpServletRequest.isUserInRole(String)
.
Just before the request is wrapped, the method AuthenticationManager.login(HttpServletRequest)
executes;
this method contains all of the logic needed to grab any user login credentials set
by the container or by cookies.Modifier and Type | Field and Description |
---|---|
protected static org.apache.log4j.Logger |
log |
protected WikiEngine |
m_engine |
Constructor and Description |
---|
WikiServletFilter()
Creates a Wiki Servlet Filter.
|
Modifier and Type | Method and Description |
---|---|
void |
destroy()
Destroys the WikiServletFilter.
|
void |
doFilter(javax.servlet.ServletRequest request,
javax.servlet.ServletResponse response,
javax.servlet.FilterChain chain)
Checks that the WikiEngine is running ok, wraps the current
HTTP request, and sets the correct authentication state for the users's
WikiSession.
|
protected WikiContext |
getWikiContext(javax.servlet.ServletRequest request)
Figures out the wiki context from the request.
|
void |
init(javax.servlet.FilterConfig config)
Initializes the WikiServletFilter.
|
protected static final org.apache.log4j.Logger log
protected WikiEngine m_engine
public WikiServletFilter()
public void init(javax.servlet.FilterConfig config) throws javax.servlet.ServletException
init
in interface javax.servlet.Filter
config
- The FilterConfig.javax.servlet.ServletException
- If a WikiEngine cannot be started.public void destroy()
destroy
in interface javax.servlet.Filter
public void doFilter(javax.servlet.ServletRequest request, javax.servlet.ServletResponse response, javax.servlet.FilterChain chain) throws IOException, javax.servlet.ServletException
AuthenticationManager.login(HttpServletRequest)
executes, which sets the authentication state. Then, the request is wrapped with a
WikiRequestWrapper
.doFilter
in interface javax.servlet.Filter
request
- the current HTTP request objectresponse
- the current HTTP response objectchain
- The Filter chain passed down.javax.servlet.ServletException
- if AuthenticationManager.login(HttpServletRequest)
fails for any reasonIOException
- If writing to the servlet response fails.protected WikiContext getWikiContext(javax.servlet.ServletRequest request)
request
- The request to examineCopyright © 2001-2019 The Apache Software Foundation. All rights reserved.