org.mortbay.jetty.servlet

Class WebApplicationHandler

Implemented Interfaces:
EventProvider, HttpHandler, LifeCycle, Serializable

public class WebApplicationHandler
extends ServletHandler

WebApp HttpHandler. This handler extends the ServletHandler with security, filter and resource capabilities to provide full J2EE web container support.

Version:
$Id: WebApplicationHandler.java,v 1.62 2006/01/04 13:55:31 gregwilkins Exp $
Author:
Greg Wilkins
Since:
Jetty 4.1
See Also:
WebApplicationContext

Field Summary

protected HashMap[]
_chainCache
protected Object
_contextAttributeListeners
protected HashMap[]
_namedChainCache
protected Object
_requestAttributeListeners
protected Object
_requestListeners
protected Object
_sessionListeners
protected JSR154Filter
jsr154Filter
protected FilterHolder
jsr154FilterHolder

Fields inherited from class org.mortbay.jetty.servlet.ServletHandler

__DEFAULT_SERVLET, __J_S_CONTEXT_TEMPDIR, __J_S_ERROR_EXCEPTION, __J_S_ERROR_EXCEPTION_TYPE, __J_S_ERROR_MESSAGE, __J_S_ERROR_REQUEST_URI, __J_S_ERROR_SERVLET_NAME, __J_S_ERROR_STATUS_CODE, _attributes, _context, _contextLog, _formErrorPage, _formLoginPage, _httpContext, _loader, _nameMap, _servletMap, _sessionManager

Method Summary

protected void
addComponent(Object o)
void
addEventListener(EventListener listener)
Register an EventListener
void
addFilterHolder(FilterHolder holder)
FilterHolder
addFilterPathMapping(String pathSpec, String filterName, int dispatches)
Add a mapping from a pathSpec to a Filter.
FilterHolder
addFilterServletMapping(String servletName, String filterName, int dispatches)
Add a servlet filter mapping
FilterHolder
defineFilter(String name, String className)
void
destroy()
protected void
dispatch(String pathInContext, HttpServletRequest request, HttpServletResponse response, ServletHolder servletHolder, int type)
protected void
doStart()
protected void
doStop()
String
getErrorPage(int status, ServletHttpRequest request)
FilterHolder
getFilter(String name)
List
getFilters()
JSR154Filter
getJsr154Filter()
void
initializeServlets()
boolean
isAcceptRanges()
boolean
isFilterChainsCached()
static void
main(String[] arg)
protected FilterHolder
newFilterHolder(String name, String className)
protected void
removeComponent(Object o)
void
removeContextAttribute(String name)
void
removeEventListener(EventListener listener)
void
setAcceptRanges(boolean ar)
Set if the handler accepts range requests.
void
setContextAttribute(String name, Object value)
void
setFilterChainsCached(boolean filterChainsCached)
Cache filter chains.
void
setSessionManager(SessionManager sm)

Methods inherited from class org.mortbay.jetty.servlet.ServletHandler

addServlet, addServlet, addServlet, addServletHolder, destroy, dispatch, doStart, doStop, finalize, formAuthInit, getClassLoader, getContextAttribute, getContextAttributeNames, getErrorPage, getHolderEntry, getHttpContext, getHttpSession, getName, getNamedDispatcher, getRealPath, getRequestDispatcher, getResource, getResourceAsStream, getResourcePaths, getServletContext, getServletHolder, getServletMap, getServlets, getSessionManager, handle, handleOptions, handleTrace, handleTrace, initialize, initializeServlets, isAutoInitializeServlets, isUsingCookies, mapPathToServlet, newHttpSession, newServletHolder, newServletHolder, notFound, removeContextAttribute, setAutoInitializeServlets, setContextAttribute, setDynamicInitParams, setDynamicServletPathSpec, setName, setServeDynamicSystemServlets, setSessionInactiveInterval, setSessionManager, setUsingCookies

Methods inherited from class org.mortbay.util.Container

addComponent, addEventListener, destroy, doStart, doStop, getComponents, isStarted, isStarting, isStopping, removeComponent, removeEventListener, start, stop

Field Details

_chainCache

protected HashMap[] _chainCache

_contextAttributeListeners

protected Object _contextAttributeListeners

_namedChainCache

protected HashMap[] _namedChainCache

_requestAttributeListeners

protected Object _requestAttributeListeners

_requestListeners

protected Object _requestListeners

_sessionListeners

protected Object _sessionListeners

jsr154Filter

protected JSR154Filter jsr154Filter

jsr154FilterHolder

protected FilterHolder jsr154FilterHolder

Method Details

addComponent

protected void addComponent(Object o)
Overrides:
addComponent in interface Container
See Also:
org.mortbay.util.Container.addComponent(java.lang.Object)

addEventListener

public void addEventListener(EventListener listener)
            throws IllegalArgumentException
Register an EventListener
Specified by:
addEventListener in interface EventProvider
Overrides:
addEventListener in interface Container
Parameters:
listener -

addFilterHolder

public void addFilterHolder(FilterHolder holder)

addFilterPathMapping

public FilterHolder addFilterPathMapping(String pathSpec,
                                         String filterName,
                                         int dispatches)
Add a mapping from a pathSpec to a Filter.
Parameters:
pathSpec - The path specification
filterName - The name of the filter (must already be added or defined)
dispatches - An integer formed by the logical OR of FilterHolder.__REQUEST, FilterHolder.__FORWARD,FilterHolder.__INCLUDE and/or FilterHolder.__ERROR.
Returns:
The holder of the filter instance.

addFilterServletMapping

public FilterHolder addFilterServletMapping(String servletName,
                                            String filterName,
                                            int dispatches)
Add a servlet filter mapping
Parameters:
servletName - The name of the servlet to be filtered.
filterName - The name of the filter.
dispatches - An integer formed by the logical OR of FilterHolder.__REQUEST, FilterHolder.__FORWARD,FilterHolder.__INCLUDE and/or FilterHolder.__ERROR.
Returns:
The holder of the filter instance.

defineFilter

public FilterHolder defineFilter(String name,
                                 String className)

destroy

public void destroy()
Overrides:
destroy in interface ServletHandler

dispatch

protected void dispatch(String pathInContext,
                        HttpServletRequest request,
                        HttpServletResponse response,
                        ServletHolder servletHolder,
                        int type)
            throws ServletException,
                   UnavailableException,
                   IOException
Overrides:
dispatch in interface ServletHandler

doStart

protected void doStart()
            throws Exception
Overrides:
doStart in interface ServletHandler

doStop

protected void doStop()
            throws Exception
Overrides:
doStop in interface ServletHandler

getErrorPage

public String getErrorPage(int status,
                           ServletHttpRequest request)
Overrides:
getErrorPage in interface ServletHandler

getFilter

public FilterHolder getFilter(String name)

getFilters

public List getFilters()

getJsr154Filter

public JSR154Filter getJsr154Filter()
Returns:
Returns the jsr154Filter.

initializeServlets

public void initializeServlets()
            throws Exception
Overrides:
initializeServlets in interface ServletHandler

isAcceptRanges

public boolean isAcceptRanges()

isFilterChainsCached

public boolean isFilterChainsCached()
Returns:
Returns the filterChainsCached.

main

public static void main(String[] arg)

newFilterHolder

protected FilterHolder newFilterHolder(String name,
                                       String className)

removeComponent

protected void removeComponent(Object o)
Overrides:
removeComponent in interface Container
See Also:
org.mortbay.util.Container.removeComponent(java.lang.Object)

removeContextAttribute

public void removeContextAttribute(String name)
Overrides:
removeContextAttribute in interface ServletHandler

removeEventListener

public void removeEventListener(EventListener listener)
Specified by:
removeEventListener in interface EventProvider
Overrides:
removeEventListener in interface Container

setAcceptRanges

public void setAcceptRanges(boolean ar)
Set if the handler accepts range requests. Default is false;
Parameters:
ar - True if the handler should accept ranges

setContextAttribute

public void setContextAttribute(String name,
                                Object value)
Overrides:
setContextAttribute in interface ServletHandler

setFilterChainsCached

public void setFilterChainsCached(boolean filterChainsCached)
Cache filter chains. If true, filter chains are cached by the URI path within the context. Caching should not be used if the webapp encodes information in URLs.
Parameters:
filterChainsCached - The filterChainsCached to set.

setSessionManager

public void setSessionManager(SessionManager sm)
Overrides:
setSessionManager in interface ServletHandler

Copyright © 2004 Mortbay Consulting Pty. Ltd. All Rights Reserved.