java.lang.Object
org.eclipse.jetty.util.component.AbstractLifeCycle
org.eclipse.jetty.util.component.ContainerLifeCycle
org.eclipse.jetty.server.handler.AbstractHandler
org.eclipse.jetty.server.handler.AbstractHandlerContainer
org.eclipse.jetty.server.handler.HandlerWrapper
org.eclipse.jetty.server.handler.ScopedHandler
org.eclipse.jetty.server.handler.ContextHandler
org.eclipse.jetty.servlet.ServletContextHandler
- All Implemented Interfaces:
org.eclipse.jetty.server.Handler,org.eclipse.jetty.server.HandlerContainer,org.eclipse.jetty.util.Attributes,org.eclipse.jetty.util.component.Container,org.eclipse.jetty.util.component.Destroyable,org.eclipse.jetty.util.component.Dumpable,org.eclipse.jetty.util.component.Dumpable.DumpableContainer,org.eclipse.jetty.util.component.Graceful,org.eclipse.jetty.util.component.LifeCycle
@ManagedObject("Servlet Context Handler")
public class ServletContextHandler
extends org.eclipse.jetty.server.handler.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
Nested ClassesModifier and TypeClassDescriptionclassstatic classDeprecated.static classstatic classstatic interfacestatic classBean that is added to the ServletContextHandler to start all of the ServletContainerInitializers by starting their corresponding ServletContainerInitializerHolders when this bean is itself started.static classNested classes/interfaces inherited from class org.eclipse.jetty.server.handler.ContextHandler
org.eclipse.jetty.server.handler.ContextHandler.AliasCheck, org.eclipse.jetty.server.handler.ContextHandler.ApproveAliases, org.eclipse.jetty.server.handler.ContextHandler.ApproveNonExistentDirectoryAliases, org.eclipse.jetty.server.handler.ContextHandler.Availability, org.eclipse.jetty.server.handler.ContextHandler.ContextScopeListener, org.eclipse.jetty.server.handler.ContextHandler.ContextStatus, org.eclipse.jetty.server.handler.ContextHandler.StaticContextNested classes/interfaces inherited from class org.eclipse.jetty.server.handler.AbstractHandler
org.eclipse.jetty.server.handler.AbstractHandler.ErrorDispatchHandlerNested classes/interfaces inherited from class org.eclipse.jetty.util.component.AbstractLifeCycle
org.eclipse.jetty.util.component.AbstractLifeCycle.AbstractLifeCycleListener, org.eclipse.jetty.util.component.AbstractLifeCycle.StopExceptionNested classes/interfaces inherited from interface org.eclipse.jetty.util.Attributes
org.eclipse.jetty.util.Attributes.WrapperNested classes/interfaces inherited from interface org.eclipse.jetty.util.component.Container
org.eclipse.jetty.util.component.Container.InheritedListener, org.eclipse.jetty.util.component.Container.ListenerNested classes/interfaces inherited from interface org.eclipse.jetty.util.component.Dumpable
org.eclipse.jetty.util.component.Dumpable.DumpableContainerNested classes/interfaces inherited from interface org.eclipse.jetty.util.component.Graceful
org.eclipse.jetty.util.component.Graceful.Shutdown, org.eclipse.jetty.util.component.Graceful.ThrowingRunnableNested classes/interfaces inherited from interface org.eclipse.jetty.util.component.LifeCycle
org.eclipse.jetty.util.component.LifeCycle.Listener -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected Class<? extends org.eclipse.jetty.security.SecurityHandler> protected javax.servlet.descriptor.JspConfigDescriptorprotected final org.eclipse.jetty.util.DecoratedObjectFactoryprotected intprotected org.eclipse.jetty.security.SecurityHandlerprotected ServletHandlerprotected org.eclipse.jetty.server.session.SessionHandlerstatic final intstatic final intstatic final intstatic final intFields inherited from class org.eclipse.jetty.server.handler.ContextHandler
_contextStatus, _scontext, DEFAULT_LISTENER_TYPE_INDEX, DEFAULT_MAX_FORM_CONTENT_SIZE, DEFAULT_MAX_FORM_KEYS, EXTENDED_LISTENER_TYPE_INDEX, MANAGED_ATTRIBUTES, MAX_FORM_CONTENT_SIZE_KEY, MAX_FORM_KEYS_KEY, SERVLET_LISTENER_TYPES, SERVLET_MAJOR_VERSION, SERVLET_MINOR_VERSIONFields inherited from class org.eclipse.jetty.server.handler.ScopedHandler
_nextScope, _outerScopeFields inherited from class org.eclipse.jetty.server.handler.HandlerWrapper
_handlerFields inherited from class org.eclipse.jetty.util.component.AbstractLifeCycle
FAILED, STARTED, STARTING, STOPPED, STOPPINGFields inherited from interface org.eclipse.jetty.util.component.Dumpable
KEY -
Constructor Summary
ConstructorsConstructorDescriptionServletContextHandler(int options) ServletContextHandler(org.eclipse.jetty.server.HandlerContainer parent, String contextPath) ServletContextHandler(org.eclipse.jetty.server.HandlerContainer parent, String contextPath, boolean sessions, boolean security) ServletContextHandler(org.eclipse.jetty.server.HandlerContainer parent, String contextPath, int options) ServletContextHandler(org.eclipse.jetty.server.HandlerContainer parent, String contextPath, org.eclipse.jetty.server.session.SessionHandler sessionHandler, org.eclipse.jetty.security.SecurityHandler securityHandler, ServletHandler servletHandler, org.eclipse.jetty.server.handler.ErrorHandler errorHandler) ServletContextHandler(org.eclipse.jetty.server.HandlerContainer parent, String contextPath, org.eclipse.jetty.server.session.SessionHandler sessionHandler, org.eclipse.jetty.security.SecurityHandler securityHandler, ServletHandler servletHandler, org.eclipse.jetty.server.handler.ErrorHandler errorHandler, int options) ServletContextHandler(org.eclipse.jetty.server.HandlerContainer parent, org.eclipse.jetty.server.session.SessionHandler sessionHandler, org.eclipse.jetty.security.SecurityHandler securityHandler, ServletHandler servletHandler, org.eclipse.jetty.server.handler.ErrorHandler errorHandler) -
Method Summary
Modifier and TypeMethodDescriptionbooleanaddEventListener(EventListener listener) Add EventListeneraddFilter(Class<? extends javax.servlet.Filter> filterClass, String pathSpec, EnumSet<javax.servlet.DispatcherType> dispatches) Convenience method to add a filterConvenience method to add a filtervoidaddFilter(FilterHolder holder, String pathSpec, EnumSet<javax.servlet.DispatcherType> dispatches) Convenience method to add a filterprotected voiddelegate for ServletContext.declareRole methodaddServlet(Class<? extends javax.servlet.Servlet> servlet, String pathSpec) Convenience method to add a servlet.addServlet(String className, String pathSpec) Convenience method to add a servlet.voidaddServlet(ServletHolder servlet, String pathSpec) Convenience method to add a servlet.addServletContainerInitializer(javax.servlet.ServletContainerInitializer sci) Convenience method to programmatically add aServletContainerInitializer.addServletContainerInitializer(javax.servlet.ServletContainerInitializer sci, Class<?>... classes) Convenience method to programmatically add aServletContainerInitializer.voidaddServletContainerInitializer(ServletContainerInitializerHolder... sciHolders) Convenience method to programmatically add a list ofServletContainerInitializer.voidcallContextDestroyed(javax.servlet.ServletContextListener l, javax.servlet.ServletContextEvent e) voidcallContextInitialized(javax.servlet.ServletContextListener l, javax.servlet.ServletContextEvent e) protected voiddoStart()protected voiddoStop()protected javax.servlet.ServletRegistration.DynamicdynamicHolderAdded(ServletHolder holder) notification that a ServletRegistration has been created so we can track the annotationsClass<? extends org.eclipse.jetty.security.SecurityHandler> Get the defaultSecurityHandlerClass.org.eclipse.jetty.util.DecoratedObjectFactoryThe DecoratedObjectFactory for use by IoC containers (weld / spring / etc)org.eclipse.jetty.security.SecurityHandlerstatic ServletContextHandlergetServletContextHandler(javax.servlet.ServletContext context) static ServletContextHandlergetServletContextHandler(javax.servlet.ServletContext servletContext, String purpose) org.eclipse.jetty.server.session.SessionHandlervoidinsertHandler(org.eclipse.jetty.server.handler.HandlerWrapper handler) Insert a HandlerWrapper before the first Session, Security or ServletHandler but after any other HandlerWrappers.protected org.eclipse.jetty.security.SecurityHandlerprotected ServletHandlerprotected org.eclipse.jetty.server.session.SessionHandlervoidsetDefaultSecurityHandlerClass(Class<? extends org.eclipse.jetty.security.SecurityHandler> defaultSecurityHandlerClass) Set the defaultSecurityHandlerClass.voidsetGzipHandler(org.eclipse.jetty.server.handler.gzip.GzipHandler gzipHandler) Deprecated.voidsetHandler(org.eclipse.jetty.server.Handler handler) protected voidsetParent(org.eclipse.jetty.server.HandlerContainer parent) voidsetSecurityHandler(org.eclipse.jetty.security.SecurityHandler securityHandler) voidsetServletHandler(ServletHandler servletHandler) setServletSecurity(javax.servlet.ServletRegistration.Dynamic registration, javax.servlet.ServletSecurityElement servletSecurityElement) Delegate for ServletRegistration.Dynamic.setServletSecurity methodvoidsetSessionHandler(org.eclipse.jetty.server.session.SessionHandler sessionHandler) protected voidFinish constructing handlers and link them together.protected voidMethods inherited from class org.eclipse.jetty.server.handler.ContextHandler
addAliasCheck, addLocaleEncoding, addProgrammaticListener, addVirtualHosts, checkAlias, checkContext, checkContextPath, checkVirtualHost, clearAliasChecks, clearAttributes, contextDestroyed, contextInitialized, doHandle, doScope, dump, enterScope, exitScope, getAliasChecks, getAllowNullPathInfo, getAttribute, getAttributeNames, getAttributeNameSet, getAttributes, getBaseResource, getClassLoader, getClassPath, getContextHandler, getContextPath, getContextPathEncoded, getCurrentContext, getDefaultRequestCharacterEncoding, getDefaultResponseCharacterEncoding, getDisplayName, getErrorHandler, getInitParameter, getInitParameterNames, getInitParams, getLocaleEncoding, getLocaleEncoding, getLocaleEncodings, getLogger, getMaxFormContentSize, getMaxFormKeys, getMimeTypes, getProtectedTargets, getRequestContextPath, getResource, getResourceBase, getResourcePaths, getServerInfo, getServletContext, getVirtualHosts, getWelcomeFiles, handle, handle, isAvailable, isCompactPath, isContextPathDefault, isDurableListener, isProgrammaticListener, isProtectedTarget, isShutdown, isUsingSecurityManager, loadClass, newResource, newResource, newResource, removeAttribute, removeEventListener, removeVirtualHosts, requestDestroyed, requestInitialized, setAliasChecks, setAllowNullPathInfo, setAttribute, setAttributes, setAvailable, setBaseResource, setClassLoader, setCompactPath, setContextPath, setDefaultContextPath, setDefaultRequestCharacterEncoding, setDefaultResponseCharacterEncoding, setDisplayName, setErrorHandler, setInitParameter, setLogger, setMaxFormContentSize, setMaxFormKeys, setMimeTypes, setProtectedTargets, setResourceBase, setServer, setServerInfo, setUsingSecurityManager, setVirtualHosts, setWelcomeFiles, shutdown, toStringMethods inherited from class org.eclipse.jetty.server.handler.ScopedHandler
handle, nextHandle, nextScopeMethods inherited from class org.eclipse.jetty.server.handler.HandlerWrapper
destroy, expandChildren, getHandler, getHandlersMethods inherited from class org.eclipse.jetty.server.handler.AbstractHandlerContainer
expandHandler, findContainerOf, getChildHandlerByClass, getChildHandlers, getChildHandlersByClassMethods inherited from class org.eclipse.jetty.server.handler.AbstractHandler
doError, getServerMethods inherited from class org.eclipse.jetty.util.component.ContainerLifeCycle
addBean, addBean, addManaged, contains, dump, dump, dumpObjects, dumpStdErr, getBean, getBeans, getBeans, getContainedBeans, getContainedBeans, isAuto, isManaged, isUnmanaged, manage, removeBean, removeBeans, setBeans, start, stop, unmanage, updateBean, updateBean, updateBeans, updateBeansMethods inherited from class org.eclipse.jetty.util.component.AbstractLifeCycle
getEventListeners, getState, getState, isFailed, isRunning, isStarted, isStarting, isStopped, isStopping, setEventListeners, start, stopMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.eclipse.jetty.util.component.Container
getCachedBeans, getEventListenersMethods inherited from interface org.eclipse.jetty.util.component.Dumpable
dumpSelfMethods inherited from interface org.eclipse.jetty.util.component.Dumpable.DumpableContainer
isDumpableMethods inherited from interface org.eclipse.jetty.util.component.LifeCycle
isFailed, isRunning, isStarted, isStarting, isStopped, isStopping, start, stop
-
Field Details
-
SESSIONS
public static final int SESSIONS- See Also:
-
SECURITY
public static final int SECURITY- See Also:
-
NO_SESSIONS
public static final int NO_SESSIONS- See Also:
-
NO_SECURITY
public static final int NO_SECURITY- See Also:
-
_objFactory
protected final org.eclipse.jetty.util.DecoratedObjectFactory _objFactory -
_defaultSecurityHandlerClass
-
_sessionHandler
protected org.eclipse.jetty.server.session.SessionHandler _sessionHandler -
_securityHandler
protected org.eclipse.jetty.security.SecurityHandler _securityHandler -
_servletHandler
-
_options
protected int _options -
_jspConfig
protected javax.servlet.descriptor.JspConfigDescriptor _jspConfig
-
-
Constructor Details
-
ServletContextHandler
public ServletContextHandler() -
ServletContextHandler
public ServletContextHandler(int options) -
ServletContextHandler
-
ServletContextHandler
public ServletContextHandler(org.eclipse.jetty.server.HandlerContainer parent, String contextPath, int options) -
ServletContextHandler
public ServletContextHandler(org.eclipse.jetty.server.HandlerContainer parent, String contextPath, boolean sessions, boolean security) -
ServletContextHandler
public ServletContextHandler(org.eclipse.jetty.server.HandlerContainer parent, org.eclipse.jetty.server.session.SessionHandler sessionHandler, org.eclipse.jetty.security.SecurityHandler securityHandler, ServletHandler servletHandler, org.eclipse.jetty.server.handler.ErrorHandler errorHandler) -
ServletContextHandler
public ServletContextHandler(org.eclipse.jetty.server.HandlerContainer parent, String contextPath, org.eclipse.jetty.server.session.SessionHandler sessionHandler, org.eclipse.jetty.security.SecurityHandler securityHandler, ServletHandler servletHandler, org.eclipse.jetty.server.handler.ErrorHandler errorHandler) -
ServletContextHandler
public ServletContextHandler(org.eclipse.jetty.server.HandlerContainer parent, String contextPath, org.eclipse.jetty.server.session.SessionHandler sessionHandler, org.eclipse.jetty.security.SecurityHandler securityHandler, ServletHandler servletHandler, org.eclipse.jetty.server.handler.ErrorHandler errorHandler, int options)
-
-
Method Details
-
getServletContextHandler
public static ServletContextHandler getServletContextHandler(javax.servlet.ServletContext servletContext, String purpose) -
getServletContextHandler
-
setParent
protected void setParent(org.eclipse.jetty.server.HandlerContainer parent) -
addEventListener
Add EventListener- Specified by:
addEventListenerin interfaceorg.eclipse.jetty.util.component.Container- Specified by:
addEventListenerin interfaceorg.eclipse.jetty.util.component.LifeCycle- Overrides:
addEventListenerin classorg.eclipse.jetty.server.handler.ContextHandler- Parameters:
listener- the listener to add- Returns:
- true if the listener was added
- See Also:
-
setHandler
public void setHandler(org.eclipse.jetty.server.Handler handler) - Overrides:
setHandlerin classorg.eclipse.jetty.server.handler.HandlerWrapper
-
doStart
- Overrides:
doStartin classorg.eclipse.jetty.server.handler.ContextHandler- Throws:
Exception
-
doStop
- Overrides:
doStopin classorg.eclipse.jetty.server.handler.ContextHandler- Throws:
Exception
-
getDefaultSecurityHandlerClass
Get the defaultSecurityHandlerClass.- Returns:
- the defaultSecurityHandlerClass
-
setDefaultSecurityHandlerClass
public void setDefaultSecurityHandlerClass(Class<? extends org.eclipse.jetty.security.SecurityHandler> defaultSecurityHandlerClass) Set the defaultSecurityHandlerClass.- Parameters:
defaultSecurityHandlerClass- the defaultSecurityHandlerClass to set
-
newSessionHandler
protected org.eclipse.jetty.server.session.SessionHandler newSessionHandler() -
newSecurityHandler
protected org.eclipse.jetty.security.SecurityHandler newSecurityHandler() -
newServletHandler
-
startContext
Finish constructing handlers and link them together.- Overrides:
startContextin classorg.eclipse.jetty.server.handler.ContextHandler- Throws:
Exception
-
stopContext
- Overrides:
stopContextin classorg.eclipse.jetty.server.handler.ContextHandler- Throws:
Exception
-
getSecurityHandler
@ManagedAttribute(value="context security handler", readonly=true) public org.eclipse.jetty.security.SecurityHandler getSecurityHandler()- Returns:
- Returns the securityHandler.
-
getServletHandler
@ManagedAttribute(value="context servlet handler", readonly=true) public ServletHandler getServletHandler()- Returns:
- Returns the servletHandler.
-
getSessionHandler
@ManagedAttribute(value="context session handler", readonly=true) public org.eclipse.jetty.server.session.SessionHandler getSessionHandler()- Returns:
- Returns the sessionHandler.
-
addServlet
Convenience method to add a servlet.- Parameters:
className- the servlet class namepathSpec- the path spec to map servlet to- Returns:
- the ServletHolder for the added servlet
-
addServlet
Convenience method to add a servlet.- Parameters:
servlet- the servlet classpathSpec- the path spec to map servlet to- Returns:
- the ServletHolder for the added servlet
-
addServlet
Convenience method to add a servlet.- Parameters:
servlet- the servlet holderpathSpec- the path spec
-
addFilter
public void addFilter(FilterHolder holder, String pathSpec, EnumSet<javax.servlet.DispatcherType> dispatches) Convenience method to add a filter- Parameters:
holder- the filter holderpathSpec- the path specdispatches- the dispatcher types for this filter
-
addFilter
public FilterHolder addFilter(Class<? extends javax.servlet.Filter> filterClass, String pathSpec, EnumSet<javax.servlet.DispatcherType> dispatches) Convenience method to add a filter- Parameters:
filterClass- the filter classpathSpec- the path specdispatches- the dispatcher types for this filter- Returns:
- the FilterHolder that was created
-
addFilter
public FilterHolder addFilter(String filterClass, String pathSpec, EnumSet<javax.servlet.DispatcherType> dispatches) Convenience method to add a filter- Parameters:
filterClass- the filter class namepathSpec- the path specdispatches- the dispatcher types for this filter- Returns:
- the FilterHolder that was created
-
addServletContainerInitializer
public ServletContainerInitializerHolder addServletContainerInitializer(javax.servlet.ServletContainerInitializer sci) Convenience method to programmatically add aServletContainerInitializer.- Parameters:
sci- the ServletContainerInitializer to register.- Returns:
- the ServletContainerInitializerHolder that was created
-
addServletContainerInitializer
public ServletContainerInitializerHolder addServletContainerInitializer(javax.servlet.ServletContainerInitializer sci, Class<?>... classes) Convenience method to programmatically add aServletContainerInitializer.- Parameters:
sci- the ServletContainerInitializer to register.classes- the Set of application classes.- Returns:
- the ServletContainerInitializerHolder that was created
-
addServletContainerInitializer
Convenience method to programmatically add a list ofServletContainerInitializer. The initializers are guaranteed to be called in the order they are passed into this method.- Parameters:
sciHolders- the ServletContainerInitializerHolders
-
dynamicHolderAdded
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
delegate for ServletContext.declareRole method- Parameters:
roleNames- role names to add
-
setServletSecurity
public Set<String> setServletSecurity(javax.servlet.ServletRegistration.Dynamic registration, javax.servlet.ServletSecurityElement servletSecurityElement) Delegate for ServletRegistration.Dynamic.setServletSecurity method- Parameters:
registration- ServletRegistration.Dynamic instance that setServletSecurity was called onservletSecurityElement- new security info- Returns:
- the set of exact URL mappings currently associated with the registration that are also present in the web.xml security constraints and thus will be unaffected by this call.
-
callContextInitialized
public void callContextInitialized(javax.servlet.ServletContextListener l, javax.servlet.ServletContextEvent e) - Overrides:
callContextInitializedin classorg.eclipse.jetty.server.handler.ContextHandler
-
callContextDestroyed
public void callContextDestroyed(javax.servlet.ServletContextListener l, javax.servlet.ServletContextEvent e) - Overrides:
callContextDestroyedin classorg.eclipse.jetty.server.handler.ContextHandler
-
setSessionHandler
public void setSessionHandler(org.eclipse.jetty.server.session.SessionHandler sessionHandler) - Parameters:
sessionHandler- The sessionHandler to set.
-
setSecurityHandler
public void setSecurityHandler(org.eclipse.jetty.security.SecurityHandler securityHandler) - Parameters:
securityHandler- TheSecurityHandlerto set on this context.
-
setServletHandler
- Parameters:
servletHandler- The servletHandler to set.
-
setGzipHandler
@Deprecated public void setGzipHandler(org.eclipse.jetty.server.handler.gzip.GzipHandler gzipHandler) Deprecated.useinsertHandler(HandlerWrapper)instead- Parameters:
gzipHandler- the GzipHandler for this ServletContextHandler
-
insertHandler
public void insertHandler(org.eclipse.jetty.server.handler.HandlerWrapper handler) Insert a HandlerWrapper before the first Session, Security or ServletHandler but after any other HandlerWrappers.- Overrides:
insertHandlerin classorg.eclipse.jetty.server.handler.HandlerWrapper
-
getObjectFactory
public org.eclipse.jetty.util.DecoratedObjectFactory getObjectFactory()The DecoratedObjectFactory for use by IoC containers (weld / spring / etc)- Returns:
- The DecoratedObjectFactory
-
insertHandler(HandlerWrapper)instead