- 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.ContextHandlerServlet 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 Classes Modifier and Type Class Description classServletContextHandler.Contextstatic classServletContextHandler.InitializerA utility class to hold aServletContainerInitializerand implement theServletContextHandler.ServletContainerInitializerCallerinterface so that the SCI is correctly started if an instance of this class is added as a bean to aServletContextHandler.static classServletContextHandler.JspConfigstatic classServletContextHandler.JspPropertyGroupstatic interfaceServletContextHandler.ServletContainerInitializerCallerstatic classServletContextHandler.TagLib-
Nested 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.StaticContext
-
Nested classes/interfaces inherited from class org.eclipse.jetty.server.handler.AbstractHandler
org.eclipse.jetty.server.handler.AbstractHandler.ErrorDispatchHandler
-
Nested classes/interfaces inherited from class org.eclipse.jetty.util.component.AbstractLifeCycle
org.eclipse.jetty.util.component.AbstractLifeCycle.AbstractLifeCycleListener, org.eclipse.jetty.util.component.AbstractLifeCycle.StopException
-
Nested classes/interfaces inherited from interface org.eclipse.jetty.util.Attributes
org.eclipse.jetty.util.Attributes.Wrapper
-
Nested classes/interfaces inherited from interface org.eclipse.jetty.util.component.Container
org.eclipse.jetty.util.component.Container.InheritedListener, org.eclipse.jetty.util.component.Container.Listener
-
Nested classes/interfaces inherited from interface org.eclipse.jetty.util.component.Dumpable
org.eclipse.jetty.util.component.Dumpable.DumpableContainer
-
-
Field Summary
Fields Modifier and Type Field Description protected java.lang.Class<? extends org.eclipse.jetty.security.SecurityHandler>_defaultSecurityHandlerClassprotected jakarta.servlet.descriptor.JspConfigDescriptor_jspConfigprotected org.eclipse.jetty.util.DecoratedObjectFactory_objFactoryprotected int_optionsprotected org.eclipse.jetty.security.SecurityHandler_securityHandlerprotected ServletHandler_servletHandlerprotected org.eclipse.jetty.server.session.SessionHandler_sessionHandlerstatic intNO_SECURITYstatic intNO_SESSIONSstatic intSECURITYstatic intSESSIONS-
Fields 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_VERSION
-
-
Constructor Summary
Constructors Constructor Description ServletContextHandler()ServletContextHandler(int options)ServletContextHandler(org.eclipse.jetty.server.HandlerContainer parent, java.lang.String contextPath)ServletContextHandler(org.eclipse.jetty.server.HandlerContainer parent, java.lang.String contextPath, boolean sessions, boolean security)ServletContextHandler(org.eclipse.jetty.server.HandlerContainer parent, java.lang.String contextPath, int options)ServletContextHandler(org.eclipse.jetty.server.HandlerContainer parent, java.lang.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, java.lang.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
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description booleanaddEventListener(java.util.EventListener listener)Add EventListenerFilterHolderaddFilter(java.lang.Class<? extends jakarta.servlet.Filter> filterClass, java.lang.String pathSpec, java.util.EnumSet<jakarta.servlet.DispatcherType> dispatches)Convenience method to add a filterFilterHolderaddFilter(java.lang.String filterClass, java.lang.String pathSpec, java.util.EnumSet<jakarta.servlet.DispatcherType> dispatches)Convenience method to add a filtervoidaddFilter(FilterHolder holder, java.lang.String pathSpec, java.util.EnumSet<jakarta.servlet.DispatcherType> dispatches)Convenience method to add a filterprotected voidaddRoles(java.lang.String... roleNames)delegate for ServletContext.declareRole methodServletHolderaddServlet(java.lang.Class<? extends jakarta.servlet.Servlet> servlet, java.lang.String pathSpec)Convenience method to add a servlet.ServletHolderaddServlet(java.lang.String className, java.lang.String pathSpec)Convenience method to add a servlet.voidaddServlet(ServletHolder servlet, java.lang.String pathSpec)Convenience method to add a servlet.voidcallContextDestroyed(jakarta.servlet.ServletContextListener l, jakarta.servlet.ServletContextEvent e)voidcallContextInitialized(jakarta.servlet.ServletContextListener l, jakarta.servlet.ServletContextEvent e)protected voiddoStart()protected voiddoStop()protected jakarta.servlet.ServletRegistration.DynamicdynamicHolderAdded(ServletHolder holder)notification that a ServletRegistration has been created so we can track the annotationsjava.lang.Class<? extends org.eclipse.jetty.security.SecurityHandler>getDefaultSecurityHandlerClass()Get the defaultSecurityHandlerClass.org.eclipse.jetty.util.DecoratedObjectFactorygetObjectFactory()The DecoratedObjectFactory for use by IoC containers (weld / spring / etc)org.eclipse.jetty.security.SecurityHandlergetSecurityHandler()static ServletContextHandlergetServletContextHandler(jakarta.servlet.ServletContext context)static ServletContextHandlergetServletContextHandler(jakarta.servlet.ServletContext servletContext, java.lang.String purpose)ServletHandlergetServletHandler()org.eclipse.jetty.server.session.SessionHandlergetSessionHandler()voidinsertHandler(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.SecurityHandlernewSecurityHandler()protected ServletHandlernewServletHandler()protected org.eclipse.jetty.server.session.SessionHandlernewSessionHandler()voidsetDefaultSecurityHandlerClass(java.lang.Class<? extends org.eclipse.jetty.security.SecurityHandler> defaultSecurityHandlerClass)Set the defaultSecurityHandlerClass.voidsetGzipHandler(org.eclipse.jetty.server.handler.gzip.GzipHandler gzipHandler)Deprecated.useinsertHandler(HandlerWrapper)insteadvoidsetHandler(org.eclipse.jetty.server.Handler handler)protected voidsetParent(org.eclipse.jetty.server.HandlerContainer parent)voidsetSecurityHandler(org.eclipse.jetty.security.SecurityHandler securityHandler)voidsetServletHandler(ServletHandler servletHandler)java.util.Set<java.lang.String>setServletSecurity(jakarta.servlet.ServletRegistration.Dynamic registration, jakarta.servlet.ServletSecurityElement servletSecurityElement)Delegate for ServletRegistration.Dynamic.setServletSecurity methodvoidsetSessionHandler(org.eclipse.jetty.server.session.SessionHandler sessionHandler)protected voidstartContext()Finish constructing handlers and link them together.protected voidstopContext()-
Methods 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, toString
-
Methods inherited from class org.eclipse.jetty.server.handler.ScopedHandler
handle, nextHandle, nextScope
-
Methods inherited from class org.eclipse.jetty.server.handler.HandlerWrapper
destroy, expandChildren, getHandler, getHandlers
-
Methods inherited from class org.eclipse.jetty.server.handler.AbstractHandlerContainer
expandHandler, findContainerOf, getChildHandlerByClass, getChildHandlers, getChildHandlersByClass
-
Methods 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
-
Methods inherited from class org.eclipse.jetty.util.component.AbstractLifeCycle
getEventListeners, getState, getState, isFailed, isRunning, isStarted, isStarting, isStopped, isStopping, setEventListeners, 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.util.component.Container
getCachedBeans, getEventListeners
-
-
-
-
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
-
_objFactory
protected final org.eclipse.jetty.util.DecoratedObjectFactory _objFactory
-
_defaultSecurityHandlerClass
protected java.lang.Class<? extends org.eclipse.jetty.security.SecurityHandler> _defaultSecurityHandlerClass
-
_sessionHandler
protected org.eclipse.jetty.server.session.SessionHandler _sessionHandler
-
_securityHandler
protected org.eclipse.jetty.security.SecurityHandler _securityHandler
-
_servletHandler
protected ServletHandler _servletHandler
-
_options
protected int _options
-
_jspConfig
protected jakarta.servlet.descriptor.JspConfigDescriptor _jspConfig
-
-
Constructor Detail
-
ServletContextHandler
public ServletContextHandler()
-
ServletContextHandler
public ServletContextHandler(int options)
-
ServletContextHandler
public ServletContextHandler(org.eclipse.jetty.server.HandlerContainer parent, java.lang.String contextPath)
-
ServletContextHandler
public ServletContextHandler(org.eclipse.jetty.server.HandlerContainer parent, java.lang.String contextPath, int options)
-
ServletContextHandler
public ServletContextHandler(org.eclipse.jetty.server.HandlerContainer parent, java.lang.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, java.lang.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, java.lang.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 Detail
-
getServletContextHandler
public static ServletContextHandler getServletContextHandler(jakarta.servlet.ServletContext servletContext, java.lang.String purpose)
-
getServletContextHandler
public static ServletContextHandler getServletContextHandler(jakarta.servlet.ServletContext context)
-
setParent
protected void setParent(org.eclipse.jetty.server.HandlerContainer parent)
-
addEventListener
public boolean addEventListener(java.util.EventListener listener)
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:
HttpSessionAttributeListener,HttpSessionActivationListener,HttpSessionBindingListener,HttpSessionListener,HttpSessionIdListener,ContextHandler.addEventListener(EventListener)
-
setHandler
public void setHandler(org.eclipse.jetty.server.Handler handler)
- Overrides:
setHandlerin classorg.eclipse.jetty.server.handler.HandlerWrapper
-
doStart
protected void doStart() throws java.lang.Exception- Overrides:
doStartin classorg.eclipse.jetty.server.handler.ContextHandler- Throws:
java.lang.Exception
-
doStop
protected void doStop() throws java.lang.Exception- Overrides:
doStopin classorg.eclipse.jetty.server.handler.ContextHandler- Throws:
java.lang.Exception
-
getDefaultSecurityHandlerClass
public java.lang.Class<? extends org.eclipse.jetty.security.SecurityHandler> getDefaultSecurityHandlerClass()
Get the defaultSecurityHandlerClass.- Returns:
- the defaultSecurityHandlerClass
-
setDefaultSecurityHandlerClass
public void setDefaultSecurityHandlerClass(java.lang.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
protected ServletHandler newServletHandler()
-
startContext
protected void startContext() throws java.lang.ExceptionFinish constructing handlers and link them together.- Overrides:
startContextin classorg.eclipse.jetty.server.handler.ContextHandler- Throws:
java.lang.Exception
-
stopContext
protected void stopContext() throws java.lang.Exception- Overrides:
stopContextin classorg.eclipse.jetty.server.handler.ContextHandler- Throws:
java.lang.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
public ServletHolder addServlet(java.lang.String className, java.lang.String pathSpec)
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
public ServletHolder addServlet(java.lang.Class<? extends jakarta.servlet.Servlet> servlet, java.lang.String pathSpec)
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
public void addServlet(ServletHolder servlet, java.lang.String pathSpec)
Convenience method to add a servlet.- Parameters:
servlet- the servlet holderpathSpec- the path spec
-
addFilter
public void addFilter(FilterHolder holder, java.lang.String pathSpec, java.util.EnumSet<jakarta.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(java.lang.Class<? extends jakarta.servlet.Filter> filterClass, java.lang.String pathSpec, java.util.EnumSet<jakarta.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(java.lang.String filterClass, java.lang.String pathSpec, java.util.EnumSet<jakarta.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
-
dynamicHolderAdded
protected jakarta.servlet.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(java.lang.String... roleNames)
delegate for ServletContext.declareRole method- Parameters:
roleNames- role names to add
-
setServletSecurity
public java.util.Set<java.lang.String> setServletSecurity(jakarta.servlet.ServletRegistration.Dynamic registration, jakarta.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(jakarta.servlet.ServletContextListener l, jakarta.servlet.ServletContextEvent e)- Overrides:
callContextInitializedin classorg.eclipse.jetty.server.handler.ContextHandler
-
callContextDestroyed
public void callContextDestroyed(jakarta.servlet.ServletContextListener l, jakarta.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
public void setServletHandler(ServletHandler servletHandler)
- 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
-
-