org.eclipse.jetty.servlet
Class ServletContextHandler

java.lang.Object
  extended by org.eclipse.jetty.util.component.AbstractLifeCycle
      extended by org.eclipse.jetty.util.component.AggregateLifeCycle
          extended by org.eclipse.jetty.server.handler.AbstractHandler
              extended by org.eclipse.jetty.server.handler.AbstractHandlerContainer
                  extended by org.eclipse.jetty.server.handler.HandlerWrapper
                      extended by org.eclipse.jetty.server.handler.ScopedHandler
                          extended by org.eclipse.jetty.server.handler.ContextHandler
                              extended by org.eclipse.jetty.servlet.ServletContextHandler
All Implemented Interfaces:
Handler, HandlerContainer, Server.Graceful, Attributes, Destroyable, Dumpable, LifeCycle
Direct Known Subclasses:
WebAppContext

public class ServletContextHandler
extends ContextHandler

Servlet Context. This extension to the ContextHandler allows for simple construction of a context with ServletHandler and optionally session and security handlers, et.

   new ServletContext("/context",Context.SESSIONS|Context.NO_SECURITY);
 

This class should have been called ServletContext, but this would have cause confusion with ServletContext.


Nested Class Summary
 class ServletContextHandler.Context
           
static interface ServletContextHandler.Decorator
          Interface to decorate loaded classes.
static class ServletContextHandler.JspConfig
           
static class ServletContextHandler.JspPropertyGroup
           
static class ServletContextHandler.TagLib
           
 
Nested classes/interfaces inherited from class org.eclipse.jetty.util.component.AbstractLifeCycle
AbstractLifeCycle.AbstractLifeCycleListener
 
Nested classes/interfaces inherited from interface org.eclipse.jetty.util.component.LifeCycle
LifeCycle.Listener
 
Field Summary
protected  List<ServletContextHandler.Decorator> _decorators
           
protected  Class<? extends SecurityHandler> _defaultSecurityHandlerClass
           
protected  JspConfigDescriptor _jspConfig
           
protected  int _options
           
protected  Object _restrictedContextListeners
           
protected  SecurityHandler _securityHandler
           
protected  ServletHandler _servletHandler
           
protected  SessionHandler _sessionHandler
           
protected  HandlerWrapper _wrapper
           
static int NO_SECURITY
           
static int NO_SESSIONS
           
static int SECURITY
           
static int SESSIONS
           
 
Fields inherited from class org.eclipse.jetty.server.handler.ContextHandler
_scontext, MANAGED_ATTRIBUTES
 
Fields inherited from class org.eclipse.jetty.server.handler.ScopedHandler
_nextScope, _outerScope
 
Fields inherited from class org.eclipse.jetty.server.handler.HandlerWrapper
_handler
 
Fields inherited from class org.eclipse.jetty.util.component.AbstractLifeCycle
_listeners, FAILED, RUNNING, STARTED, STARTING, STOPPED, STOPPING
 
Constructor Summary
ServletContextHandler()
           
ServletContextHandler(HandlerContainer parent, SessionHandler sessionHandler, SecurityHandler securityHandler, ServletHandler servletHandler, ErrorHandler errorHandler)
           
ServletContextHandler(HandlerContainer parent, String contextPath)
           
ServletContextHandler(HandlerContainer parent, String contextPath, boolean sessions, boolean security)
           
ServletContextHandler(HandlerContainer parent, String contextPath, int options)
           
ServletContextHandler(HandlerContainer parent, String contextPath, SessionHandler sessionHandler, SecurityHandler securityHandler, ServletHandler servletHandler, ErrorHandler errorHandler)
           
ServletContextHandler(int options)
           
 
Method Summary
 void addDecorator(ServletContextHandler.Decorator decorator)
           
 FilterHolder addFilter(Class<? extends Filter> filterClass, String pathSpec, EnumSet<DispatcherType> dispatches)
          convenience method to add a filter
 void addFilter(FilterHolder holder, String pathSpec, EnumSet<DispatcherType> dispatches)
          conveniance method to add a filter
 FilterHolder addFilter(String filterClass, String pathSpec, EnumSet<DispatcherType> dispatches)
          convenience method to add a filter
protected  void addRoles(String... roleNames)
          delegate for ServletContext.declareRole method
 ServletHolder addServlet(Class<? extends Servlet> servlet, String pathSpec)
          conveniance method to add a servlet.
 void addServlet(ServletHolder servlet, String pathSpec)
          conveniance method to add a servlet.
 ServletHolder addServlet(String className, String pathSpec)
          conveniance method to add a servlet.
 void callContextDestroyed(ServletContextListener l, ServletContextEvent e)
           
 void callContextInitialized(ServletContextListener l, ServletContextEvent e)
           
protected  void doStop()
          Stop the joined lifecycle beans in the reverse order they were added.
protected  ServletRegistration.Dynamic dynamicHolderAdded(ServletHolder holder)
          notification that a ServletRegistration has been created so we can track the annotations
 List<ServletContextHandler.Decorator> getDecorators()
           
 Class<? extends SecurityHandler> getDefaultSecurityHandlerClass()
          Get the defaultSecurityHandlerClass.
 SecurityHandler getSecurityHandler()
           
 ServletHandler getServletHandler()
           
 SessionHandler getSessionHandler()
           
 boolean isRestrictListeners()
           
protected  SecurityHandler newSecurityHandler()
           
protected  ServletHandler newServletHandler()
           
protected  SessionHandler newSessionHandler()
           
 void restrictEventListener(EventListener e)
          Apply any necessary restrictions on a programmatically added listener.
 void setDecorators(List<ServletContextHandler.Decorator> decorators)
           
 void setDefaultSecurityHandlerClass(Class<? extends SecurityHandler> defaultSecurityHandlerClass)
          Set the defaultSecurityHandlerClass.
 void setRestrictListeners(boolean restrictListeners)
           
 void setSecurityHandler(SecurityHandler securityHandler)
           
 void setServletHandler(ServletHandler servletHandler)
           
 Set<String> setServletSecurity(ServletRegistration.Dynamic registration, ServletSecurityElement servletSecurityElement)
          Delegate for ServletRegistration.Dynamic.setServletSecurity method
 void setSessionHandler(SessionHandler sessionHandler)
           
protected  void startContext()
          Finish constructing handlers and link them together.
 
Methods inherited from class org.eclipse.jetty.server.handler.ContextHandler
addEventListener, addLocaleEncoding, addVirtualHosts, checkContext, checkManagedAttribute, clearAttributes, doHandle, doScope, doStart, dump, getAllowNullPathInfo, getAttribute, getAttributeNames, getAttributes, getBaseResource, getClassLoader, getClassPath, getConnectorNames, getContextPath, getCurrentContext, getDisplayName, getErrorHandler, getEventListeners, getInitParameter, getInitParameterNames, getInitParams, getLocaleEncoding, getLocaleEncoding, getLogger, getMaxFormContentSize, getMaxFormKeys, getMimeTypes, getResource, getResourceBase, getResourcePaths, getServletContext, getVirtualHosts, getWelcomeFiles, handle, isAliases, isAvailable, isCompactPath, isProtectedTarget, isShutdown, loadClass, newResource, newResource, removeAttribute, removeVirtualHosts, setAliases, setAllowNullPathInfo, setAttribute, setAttributes, setAvailable, setBaseResource, setClassLoader, setCompactPath, setConnectorNames, setContextPath, setDisplayName, setErrorHandler, setEventListeners, setInitParameter, setLogger, setManagedAttribute, setMaxFormContentSize, setMaxFormKeys, setMimeTypes, setResourceBase, setServer, setShutdown, setVirtualHosts, setWelcomeFiles, toString
 
Methods inherited from class org.eclipse.jetty.server.handler.ScopedHandler
handle, never, nextHandle, nextScope
 
Methods inherited from class org.eclipse.jetty.server.handler.HandlerWrapper
destroy, expandChildren, getHandler, getHandlers, getNestedHandlerByClass, setHandler
 
Methods inherited from class org.eclipse.jetty.server.handler.AbstractHandlerContainer
expandHandler, findContainerOf, getChildHandlerByClass, getChildHandlers, getChildHandlersByClass
 
Methods inherited from class org.eclipse.jetty.server.handler.AbstractHandler
dumpThis, getServer
 
Methods inherited from class org.eclipse.jetty.util.component.AggregateLifeCycle
addBean, addBean, contains, dump, dump, dump, dump, dumpStdErr, getBean, getBeans, getBeans, isManaged, manage, removeBean, removeBeans, unmanage
 
Methods inherited from class org.eclipse.jetty.util.component.AbstractLifeCycle
addLifeCycleListener, getState, getState, isFailed, isRunning, isStarted, isStarting, isStopped, isStopping, removeLifeCycleListener, start, stop
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.eclipse.jetty.server.Handler
destroy, getServer, handle
 
Methods inherited from interface org.eclipse.jetty.util.component.LifeCycle
addLifeCycleListener, isFailed, isRunning, isStarted, isStarting, isStopped, isStopping, removeLifeCycleListener, start, stop
 

Field Detail

SESSIONS

public static final int SESSIONS
See Also:
Constant Field Values

SECURITY

public static final int SECURITY
See Also:
Constant Field Values

NO_SESSIONS

public static final int NO_SESSIONS
See Also:
Constant Field Values

NO_SECURITY

public static final int NO_SECURITY
See Also:
Constant Field Values

_decorators

protected final List<ServletContextHandler.Decorator> _decorators

_defaultSecurityHandlerClass

protected Class<? extends SecurityHandler> _defaultSecurityHandlerClass

_sessionHandler

protected SessionHandler _sessionHandler

_securityHandler

protected SecurityHandler _securityHandler

_servletHandler

protected ServletHandler _servletHandler

_wrapper

protected HandlerWrapper _wrapper

_options

protected int _options

_jspConfig

protected JspConfigDescriptor _jspConfig

_restrictedContextListeners

protected Object _restrictedContextListeners
Constructor Detail

ServletContextHandler

public ServletContextHandler()

ServletContextHandler

public ServletContextHandler(int options)

ServletContextHandler

public ServletContextHandler(HandlerContainer parent,
                             String contextPath)

ServletContextHandler

public ServletContextHandler(HandlerContainer parent,
                             String contextPath,
                             int options)

ServletContextHandler

public ServletContextHandler(HandlerContainer parent,
                             String contextPath,
                             boolean sessions,
                             boolean security)

ServletContextHandler

public ServletContextHandler(HandlerContainer parent,
                             SessionHandler sessionHandler,
                             SecurityHandler securityHandler,
                             ServletHandler servletHandler,
                             ErrorHandler errorHandler)

ServletContextHandler

public ServletContextHandler(HandlerContainer parent,
                             String contextPath,
                             SessionHandler sessionHandler,
                             SecurityHandler securityHandler,
                             ServletHandler servletHandler,
                             ErrorHandler errorHandler)
Method Detail

doStop

protected void doStop()
               throws Exception
Description copied from class: AggregateLifeCycle
Stop the joined lifecycle beans in the reverse order they were added.

Overrides:
doStop in class ContextHandler
Throws:
Exception
See Also:
ContextHandler.doStop()

getDefaultSecurityHandlerClass

public Class<? extends SecurityHandler> getDefaultSecurityHandlerClass()
Get the defaultSecurityHandlerClass.

Returns:
the defaultSecurityHandlerClass

setDefaultSecurityHandlerClass

public void setDefaultSecurityHandlerClass(Class<? extends SecurityHandler> defaultSecurityHandlerClass)
Set the defaultSecurityHandlerClass.

Parameters:
defaultSecurityHandlerClass - the defaultSecurityHandlerClass to set

newSessionHandler

protected SessionHandler newSessionHandler()

newSecurityHandler

protected SecurityHandler newSecurityHandler()

newServletHandler

protected ServletHandler newServletHandler()

startContext

protected void startContext()
                     throws Exception
Finish constructing handlers and link them together.

Overrides:
startContext in class ContextHandler
Throws:
Exception
See Also:
ContextHandler.startContext()

getSecurityHandler

public SecurityHandler getSecurityHandler()
Returns:
Returns the securityHandler.

getServletHandler

public ServletHandler getServletHandler()
Returns:
Returns the servletHandler.

getSessionHandler

public SessionHandler getSessionHandler()
Returns:
Returns the sessionHandler.

addServlet

public ServletHolder addServlet(String className,
                                String pathSpec)
conveniance method to add a servlet.


addServlet

public ServletHolder addServlet(Class<? extends Servlet> servlet,
                                String pathSpec)
conveniance method to add a servlet.


addServlet

public void addServlet(ServletHolder servlet,
                       String pathSpec)
conveniance method to add a servlet.


addFilter

public void addFilter(FilterHolder holder,
                      String pathSpec,
                      EnumSet<DispatcherType> dispatches)
conveniance method to add a filter


addFilter

public FilterHolder addFilter(Class<? extends Filter> filterClass,
                              String pathSpec,
                              EnumSet<DispatcherType> dispatches)
convenience method to add a filter


addFilter

public FilterHolder addFilter(String filterClass,
                              String pathSpec,
                              EnumSet<DispatcherType> dispatches)
convenience method to add a filter


dynamicHolderAdded

protected ServletRegistration.Dynamic dynamicHolderAdded(ServletHolder holder)
notification that a ServletRegistration has been created so we can track the annotations

Parameters:
holder - new holder created through the api.
Returns:
the ServletRegistration.Dynamic

addRoles

protected void addRoles(String... roleNames)
delegate for ServletContext.declareRole method

Parameters:
roleNames - role names to add

setServletSecurity

public Set<String> setServletSecurity(ServletRegistration.Dynamic registration,
                                      ServletSecurityElement servletSecurityElement)
Delegate for ServletRegistration.Dynamic.setServletSecurity method

Parameters:
registration - ServletRegistration.Dynamic instance that setServletSecurity was called on
servletSecurityElement - new security info
Returns:
the set of exact URL mappings currently associated with the registration that are also present in the web.xml security constratins and thus will be unaffected by this call.

restrictEventListener

public void restrictEventListener(EventListener e)
Description copied from class: ContextHandler
Apply any necessary restrictions on a programmatically added listener. Superclasses should implement.

Overrides:
restrictEventListener in class ContextHandler

isRestrictListeners

public boolean isRestrictListeners()

setRestrictListeners

public void setRestrictListeners(boolean restrictListeners)

callContextInitialized

public void callContextInitialized(ServletContextListener l,
                                   ServletContextEvent e)
Overrides:
callContextInitialized in class ContextHandler

callContextDestroyed

public void callContextDestroyed(ServletContextListener l,
                                 ServletContextEvent e)
Overrides:
callContextDestroyed in class ContextHandler

setSessionHandler

public void setSessionHandler(SessionHandler sessionHandler)
Parameters:
sessionHandler - The sessionHandler to set.

setSecurityHandler

public void setSecurityHandler(SecurityHandler securityHandler)
Parameters:
securityHandler - The SecurityHandler to set on this context.

setServletHandler

public void setServletHandler(ServletHandler servletHandler)
Parameters:
servletHandler - The servletHandler to set.

getDecorators

public List<ServletContextHandler.Decorator> getDecorators()
Returns:
The decorator list used to resource inject new Filters, Servlets and EventListeners

setDecorators

public void setDecorators(List<ServletContextHandler.Decorator> decorators)
Parameters:
decorators - The lis of ServletContextHandler.Decorators

addDecorator

public void addDecorator(ServletContextHandler.Decorator decorator)
Parameters:
decorator - The decorator to add


Copyright © 1995-2012 Mort Bay Consulting. All Rights Reserved.