Package org.apache.catalina.startup
Class FailedContext
- java.lang.Object
-
- org.apache.catalina.util.LifecycleBase
-
- org.apache.catalina.util.LifecycleMBeanBase
-
- org.apache.catalina.startup.FailedContext
-
- All Implemented Interfaces:
MBeanRegistration,Container,Context,JmxEnabled,Lifecycle,ContextBind
public class FailedContext extends LifecycleMBeanBase implements Context
An implementation ofContextthat is used as a place-holder for deployed applications when their deployment fails and a Context instance (usuallyStandardContextbut may be any Context implementation) cannot be created.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.apache.catalina.Lifecycle
Lifecycle.SingleUse
-
-
Field Summary
Fields Modifier and Type Field Description protected static StringManagersm-
Fields inherited from interface org.apache.catalina.Container
ADD_CHILD_EVENT, ADD_VALVE_EVENT, REMOVE_CHILD_EVENT, REMOVE_VALVE_EVENT
-
Fields inherited from interface org.apache.catalina.Context
ADD_WELCOME_FILE_EVENT, CHANGE_SESSION_ID_EVENT, CLEAR_WELCOME_FILES_EVENT, REMOVE_WELCOME_FILE_EVENT
-
Fields inherited from interface org.apache.catalina.Lifecycle
AFTER_DESTROY_EVENT, AFTER_INIT_EVENT, AFTER_START_EVENT, AFTER_STOP_EVENT, BEFORE_DESTROY_EVENT, BEFORE_INIT_EVENT, BEFORE_START_EVENT, BEFORE_STOP_EVENT, CONFIGURE_START_EVENT, CONFIGURE_STOP_EVENT, PERIODIC_EVENT, START_EVENT, STOP_EVENT
-
-
Constructor Summary
Constructors Constructor Description FailedContext()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddApplicationListener(String listener)Add a new Listener class name to the set of Listeners configured for this application.voidaddApplicationParameter(ApplicationParameter parameter)Add a new application parameter for this application.voidaddChild(Container child)Add a new child Container to those associated with this Container, if supported.voidaddConstraint(SecurityConstraint constraint)Add a security constraint to the set for this web application.voidaddContainerListener(ContainerListener listener)Add a container event listener to this component.voidaddErrorPage(ErrorPage errorPage)Add an error page for the specified error or Java exception.voidaddFilterDef(FilterDef filterDef)Add a filter definition to this Context.voidaddFilterMap(FilterMap filterMap)Add a filter mapping to this Context.voidaddFilterMapBefore(FilterMap filterMap)Add a filter mapping to this Context before the mappings defined in the deployment descriptor but after any other mappings added via this method.voidaddLocaleEncodingMappingParameter(String locale, String encoding)Add a Locale Encoding Mapping (see Sec 5.4 of Servlet spec 2.4)voidaddMimeMapping(String extension, String mimeType)Add a new MIME mapping, replacing any existing mapping for the specified extension.voidaddParameter(String name, String value)Add a new context initialization parameter, replacing any existing value for the specified name.voidaddPostConstructMethod(String clazz, String method)Add a post construct method definition for the given class, if there is an existing definition for the specified class - IllegalArgumentException will be thrown.voidaddPreDestroyMethod(String clazz, String method)Add a pre destroy method definition for the given class, if there is an existing definition for the specified class - IllegalArgumentException will be thrown.voidaddPropertyChangeListener(PropertyChangeListener listener)Add a property change listener to this component.voidaddRoleMapping(String role, String link)Add a security role reference for this web application.voidaddSecurityRole(String role)Add a new security role for this web application.voidaddServletContainerInitializer(ServletContainerInitializer sci, Set<Class<?>> classes)Add a ServletContainerInitializer instance to this web application.voidaddServletMappingDecoded(String pattern, String name, boolean jspWildcard)Add a new servlet mapping, replacing any existing mapping for the specified pattern.Set<String>addServletSecurity(ServletRegistration.Dynamic registration, ServletSecurityElement servletSecurityElement)Notification that Servlet security has been dynamically set in aServletRegistration.DynamicvoidaddValve(Valve valve)voidaddWatchedResource(String name)Add a resource which will be watched for reloading by the host auto deployer.voidaddWelcomeFile(String name)Add a new welcome file to the set recognized by this Context.voidaddWrapperLifecycle(String listener)Add the classname of a LifecycleListener to be added to each Wrapper appended to this Context.voidaddWrapperListener(String listener)Add the classname of a ContainerListener to be added to each Wrapper appended to this Context.voidbackgroundProcess()Execute a periodic task, such as reloading, etc.ClassLoaderbind(boolean usePrivilegedAction, ClassLoader originalClassLoader)Change the current thread context class loader to the web application class loader.InstanceManagercreateInstanceManager()Factory method to create and return a new InstanceManager instance.WrappercreateWrapper()Factory method to create and return a new Wrapper instance, of the Java implementation class appropriate for this Context implementation.voiddecrementInProgressAsyncCount()String[]findApplicationListeners()ApplicationParameter[]findApplicationParameters()ContainerfindChild(String name)Obtain a child Container by name.Container[]findChildren()Obtain the child Containers associated with this Container.SecurityConstraint[]findConstraints()ContainerListener[]findContainerListeners()Obtain the container listeners associated with this Container.ErrorPagefindErrorPage(int errorCode)ErrorPagefindErrorPage(Throwable throwable)Find and return the ErrorPage instance for the specified exception's class, or an ErrorPage instance for the closest superclass for which there is such a definition.ErrorPage[]findErrorPages()FilterDeffindFilterDef(String filterName)FilterDef[]findFilterDefs()FilterMap[]findFilterMaps()StringfindMimeMapping(String extension)String[]findMimeMappings()StringfindParameter(String name)String[]findParameters()StringfindPostConstructMethod(String clazz)Returns the method name that is specified as post construct method for the given class, if it exists; otherwiseNULLwill be returned.Map<String,String>findPostConstructMethods()Returns a map with keys - fully qualified class names of the classes that have post construct methods and the values are the corresponding method names.StringfindPreDestroyMethod(String clazz)Returns the method name that is specified as pre destroy method for the given class, if it exists; otherwiseNULLwill be returned.Map<String,String>findPreDestroyMethods()Returns a map with keys - fully qualified class names of the classes that have pre destroy methods and the values are the corresponding method names.StringfindRoleMapping(String role)For the given security role (as used by an application), return the corresponding role name (as defined by the underlying Realm) if there is one.booleanfindSecurityRole(String role)String[]findSecurityRoles()StringfindServletMapping(String pattern)String[]findServletMappings()String[]findWatchedResources()booleanfindWelcomeFile(String name)String[]findWelcomeFiles()String[]findWrapperLifecycles()String[]findWrapperListeners()voidfireContainerEvent(String type, Object data)Notify all container event listeners that a particular event has occurred for this Container.booleanfireRequestDestroyEvent(ServletRequest request)Notify allServletRequestListeners that a request has ended.booleanfireRequestInitEvent(ServletRequest request)Notify allServletRequestListeners that a request has started.AccessLoggetAccessLog()Obtain the AccessLog to use to log a request/response that is destined for this container.booleangetAddWebinfClassesResources()booleangetAllowCasualMultipartParsing()Returnstrueif requests mapped to servlets without "multipart config" to parse multipart/form-data requests anyway.booleangetAllowMultipleLeadingForwardSlashInPath()When returning a context path fromHttpServletRequest.getContextPath(), is it allowed to contain multiple leading '/' characters?StringgetAltDDName()Return the alternate Deployment Descriptor name.booleangetAlwaysAccessSession()If this istrue, every request that is associated with a session will cause the session's last accessed time to be updated regardless of whether or not the request explicitly accesses the session.Object[]getApplicationEventListeners()Obtain the registered application event listeners.Object[]getApplicationLifecycleListeners()Obtain the registered application lifecycle listeners.AuthenticatorgetAuthenticator()intgetBackgroundProcessorDelay()Get the delay between the invocation of the backgroundProcess method on this container and its children.StringgetBaseName()FilegetCatalinaBase()Obtain the location of CATALINA_BASE.FilegetCatalinaHome()Obtain the location of CATALINA_HOME.StringgetCharset(Locale locale)Obtain the character set name to use with the given Locale.ClustergetCluster()Get the Cluster for this container.URLgetConfigFile()Return the URL of the XML descriptor for this context.booleangetConfigured()Return the "correctly configured" flag for this Context.StringgetContainerSciFilter()Obtains the regular expression that specifies which container provided SCIs should be filtered out and not used for this context.booleangetContextGetResourceRequiresSlash()If this istruethen the path passed toServletContext.getResource()orServletContext.getResourceAsStream()must start with "/".CookieProcessorgetCookieProcessor()booleangetCookies()Return the "use cookies for session ids" flag.booleangetCreateUploadTargets()Will Tomcat attempt to create an upload target used by this web application if it does not exist when the web application attempts to use it?booleangetCrossContext()Return the "allow crossing servlet contexts" flag.booleangetDenyUncoveredHttpMethods()Return the deny-uncovered-http-methods flag for this web application.booleangetDispatchersUseEncodedPaths()Are paths used in calls to obtain a request dispatcher expected to be encoded?booleangetDispatcherWrapsSameObject()If this istruethen any wrapped request or response object passed to an application dispatcher will be checked to ensure that it has wrapped the original request or response.StringgetDisplayName()Return the display name of this web application.booleangetDistributable()Get the distributable flag for this web application.StringgetDocBase()Obtain the document root for this Context.protected StringgetDomainInternal()Method implemented by sub-classes to identify the domain in which MBeans should be registered.intgetEffectiveMajorVersion()intgetEffectiveMinorVersion()StringgetEncodedPath()Return the URL encoded context pathbooleangetFireRequestListenersOnForwards()booleangetIgnoreAnnotations()Determine if annotations parsing is currently disabledInstanceManagergetInstanceManager()JarScannergetJarScanner()Get the Jar Scanner to be used to scan for JAR resources for this context.JspConfigDescriptorgetJspConfigDescriptor()LoadergetLoader()booleangetLogEffectiveWebXml()Should the effective web.xml for this context be logged on context start?LoggetLogger()Obtain the log to which events for this container should be logged.LoginConfiggetLoginConfig()StringgetLogName()Return the logger name that the container will use.ManagergetManager()booleangetMapperContextRootRedirectEnabled()Determines if requests for a web application context root will be redirected (adding a trailing slash) by the Mapper.booleangetMapperDirectoryRedirectEnabled()Determines if requests for a directory will be redirected (adding a trailing slash) by the Mapper.StringgetMBeanKeyProperties()Calculate the key properties string to be added to an object'sObjectNameto indicate that it is associated with this container.StringgetName()Return a name string (suitable for use by humans) that describes this Container.NamingResourcesImplgetNamingResources()ObjectgetNamingToken()protected StringgetObjectNameKeyProperties()Allow sub-classes to specify the key properties component of theObjectNamethat will be used to register this component.booleangetOverride()booleangetParallelAnnotationScanning()ContainergetParent()Get the parent container.ClassLoadergetParentClassLoader()Get the parent class loader.StringgetPath()booleangetPaused()Is this Context paused whilst it is reloaded?PipelinegetPipeline()Return the Pipeline object that manages the Valves associated with this Container.booleangetPreemptiveAuthentication()booleangetPrivileged()StringgetPublicId()RealmgetRealm()Obtain the Realm with which this Container is associated.StringgetRealPath(String path)booleangetReloadable()StringgetRequestCharacterEncoding()Get the default request body encoding for this web application.StringgetResourceOnlyServlets()Obtains the list of Servlets that expect a resource to be present.WebResourceRootgetResources()StringgetResponseCharacterEncoding()Get the default response body encoding for this web application.booleangetSendRedirectBody()ServletContextgetServletContext()StringgetSessionCookieDomain()Gets the domain to use for session cookies.StringgetSessionCookieName()Gets the name to use for session cookies.StringgetSessionCookiePath()Gets the path to use for session cookies.booleangetSessionCookiePathUsesTrailingSlash()Is a / added to the end of the session cookie path to ensure browsers, particularly IE, don't send a session cookie for context /foo with requests intended for context /foobar.intgetSessionTimeout()intgetStartStopThreads()Obtain the number of threads available for starting and stopping any children associated with this container.booleangetSwallowAbortedUploads()Returnstrueif remaining request data will be read (swallowed) even the request violates a data size constraint.booleangetSwallowOutput()ThreadBindingListenergetThreadBindingListener()booleangetTldValidation()Will the parsing of *.tld files for this Context be performed by a validating parser?booleangetUseBloomFilterForArchives()booleangetUseHttpOnly()Gets the value of the use HttpOnly cookies for session cookies flag.booleangetUseRelativeRedirects()Will HTTP 1.1 and later location headers generated by a call toHttpServletResponse.sendRedirect(String)use relative or absolute redirects.booleangetValidateClientProvidedNewSessionId()Will client provided session IDs be validated (seeContext.setValidateClientProvidedNewSessionId(boolean)) before use?StringgetWebappVersion()StringgetWrapperClass()booleangetXmlBlockExternal()Will the parsing of web.xml, web-fragment.xml, *.tld, *.jspx, *.tagx and tagplugin.xml files for this Context block the use of external entities?booleangetXmlNamespaceAware()Will the parsing of web.xml and web-fragment.xml files for this Context be performed by a namespace aware parser?booleangetXmlValidation()Will the parsing of web.xml and web-fragment.xml files for this Context be performed by a validating parser?voidincrementInProgressAsyncCount()booleanisResourceOnlyServlet(String servletName)Checks the named Servlet to see if it expects a resource to be present.booleanisServlet22()Is this context using version 2.2 of the Servlet spec?voidlogAccess(Request request, Response response, long time, boolean useDefault)Log a request/response that was destined for this container but has been handled earlier in the processing chain so that the request/response still appears in the correct access logs.voidreload()Reload this web application, if reloading is supported.voidremoveApplicationListener(String listener)Remove the specified application listener class from the set of listeners for this application.voidremoveApplicationParameter(String name)Remove the application parameter with the specified name from the set for this application.voidremoveChild(Container child)Remove an existing child Container from association with this parent Container.voidremoveConstraint(SecurityConstraint constraint)Remove the specified security constraint from this web application.voidremoveContainerListener(ContainerListener listener)Remove a container event listener from this component.voidremoveErrorPage(ErrorPage errorPage)Remove the error page for the specified error code or Java language exception, if it exists; otherwise, no action is taken.voidremoveFilterDef(FilterDef filterDef)Remove the specified filter definition from this Context, if it exists; otherwise, no action is taken.voidremoveFilterMap(FilterMap filterMap)Remove a filter mapping from this Context.voidremoveMimeMapping(String extension)Remove the MIME mapping for the specified extension, if it exists; otherwise, no action is taken.voidremoveParameter(String name)Remove the context initialization parameter with the specified name, if it exists; otherwise, no action is taken.voidremovePostConstructMethod(String clazz)Removes the post construct method definition for the given class, if it exists; otherwise, no action is taken.voidremovePreDestroyMethod(String clazz)Removes the pre destroy method definition for the given class, if it exists; otherwise, no action is taken.voidremovePropertyChangeListener(PropertyChangeListener listener)Remove a property change listener from this component.voidremoveRoleMapping(String role)Remove any security role reference for the specified namevoidremoveSecurityRole(String role)Remove any security role with the specified name.voidremoveServletMapping(String pattern)Remove any servlet mapping for the specified pattern, if it exists; otherwise, no action is taken.voidremoveWatchedResource(String name)Remove the specified watched resource name from the list associated with this Context.voidremoveWelcomeFile(String name)Remove the specified welcome file name from the list recognized by this Context.voidremoveWrapperLifecycle(String listener)Remove a class name from the set of LifecycleListener classes that will be added to newly created Wrappers.voidremoveWrapperListener(String listener)Remove a class name from the set of ContainerListener classes that will be added to newly created Wrappers.voidsetAddWebinfClassesResources(boolean addWebinfClassesResources)Sets the flag that indicates if /WEB-INF/classes should be treated like an exploded JAR and JAR resources made available as if they were in a JAR.voidsetAllowCasualMultipartParsing(boolean allowCasualMultipartParsing)Set totrueto allow requests mapped to servlets that do not explicitly declare @MultipartConfig or have <multipart-config> specified in web.xml to parse multipart/form-data requests.voidsetAllowMultipleLeadingForwardSlashInPath(boolean allowMultipleLeadingForwardSlashInPath)Configure if, when returning a context path fromHttpServletRequest.getContextPath(), the return value is allowed to contain multiple leading '/' characters.voidsetAltDDName(String altDDName)Set an alternate Deployment Descriptor name.voidsetAlwaysAccessSession(boolean alwaysAccessSession)Set the session access behavior.voidsetApplicationEventListeners(Object[] listeners)Store the set of initialized application event listener objects, in the order they were specified in the web application deployment descriptor, for this application.voidsetApplicationLifecycleListeners(Object[] listeners)Store the set of initialized application lifecycle listener objects, in the order they were specified in the web application deployment descriptor, for this application.voidsetBackgroundProcessorDelay(int delay)Set the delay between the invocation of the execute method on this container and its children.voidsetCluster(Cluster cluster)Set the Cluster with which this Container is associated.voidsetConfigFile(URL configFile)Set the URL of the XML descriptor for this context.voidsetConfigured(boolean configured)Set the "correctly configured" flag for this Context.voidsetContainerSciFilter(String containerSciFilter)Sets the regular expression that specifies which container provided SCIs should be filtered out and not used for this context.voidsetContextGetResourceRequiresSlash(boolean contextGetResourceRequiresSlash)Allow usingServletContext.getResource()orServletContext.getResourceAsStream()without a leading "/".voidsetCookieProcessor(CookieProcessor cookieProcessor)Sets theCookieProcessorthat will be used to process cookies for this Context.voidsetCookies(boolean cookies)Set the "use cookies for session ids" flag.voidsetCreateUploadTargets(boolean createUploadTargets)Configure whether Tomcat will attempt to create an upload target used by this web application if it does not exist when the web application attempts to use it.voidsetCrossContext(boolean crossContext)Set the "allow crossing servlet contexts" flag.voidsetDenyUncoveredHttpMethods(boolean denyUncoveredHttpMethods)Set the deny-uncovered-http-methods flag for this web application.voidsetDispatchersUseEncodedPaths(boolean dispatchersUseEncodedPaths)Are paths used in calls to obtain a request dispatcher expected to be encoded?voidsetDispatcherWrapsSameObject(boolean dispatcherWrapsSameObject)Allow disabling the object wrap check in the request dispatcher.voidsetDisplayName(String displayName)Set the display name of this web application.voidsetDistributable(boolean distributable)Set the distributable flag for this web application.voidsetDocBase(String docBase)Set the document root for this Context.voidsetEffectiveMajorVersion(int major)Set the effective major version of the Servlet spec used by this context.voidsetEffectiveMinorVersion(int minor)Set the effective minor version of the Servlet spec used by this context.voidsetFireRequestListenersOnForwards(boolean enable)Configure whether or not requests listeners will be fired on forwards for this Context.voidsetIgnoreAnnotations(boolean ignoreAnnotations)Set the boolean on the annotations parsing for this web application.voidsetInstanceManager(InstanceManager instanceManager)Set the instance manager associated with this context.voidsetJarScanner(JarScanner jarScanner)Set the Jar Scanner to be used to scan for JAR resources for this context.voidsetJspConfigDescriptor(JspConfigDescriptor descriptor)Set the JspConfigDescriptor for this context.voidsetLoader(Loader loader)Set the Loader with which this Context is associated.voidsetLogEffectiveWebXml(boolean logEffectiveWebXml)Set whether or not the effective web.xml for this context should be logged on context start.voidsetLoginConfig(LoginConfig config)Set the login configuration descriptor for this web application.voidsetManager(Manager manager)Set the Manager with which this Context is associated.voidsetMapperContextRootRedirectEnabled(boolean mapperContextRootRedirectEnabled)If enabled, requests for a web application context root will be redirected (adding a trailing slash) by the Mapper.voidsetMapperDirectoryRedirectEnabled(boolean mapperDirectoryRedirectEnabled)If enabled, requests for a directory will be redirected (adding a trailing slash) by the Mapper.voidsetName(String name)Set a name string (suitable for use by humans) that describes this Container.voidsetNamingResources(NamingResourcesImpl namingResources)Set the naming resources for this web application.voidsetOverride(boolean override)Set the override flag for this web application.voidsetParallelAnnotationScanning(boolean parallelAnnotationScanning)Set the parallel annotation scanning value.voidsetParent(Container parent)Set the parent Container to which this Container is being added as a child.voidsetParentClassLoader(ClassLoader parent)Set the parent class loader for this component.voidsetPath(String path)Set the context path for this web application.voidsetPreemptiveAuthentication(boolean enable)Configures if a user presents authentication credentials, whether the context will process them when the request is for a non-protected resource.voidsetPrivileged(boolean privileged)Set the privileged flag for this web application.voidsetPublicId(String publicId)Set the public identifier of the deployment descriptor DTD that is currently being parsed.voidsetRealm(Realm realm)Set the Realm with which this Container is associated.voidsetReloadable(boolean reloadable)Set the reloadable flag for this web application.voidsetRequestCharacterEncoding(String encoding)Set the default request body encoding for this web application.voidsetResourceOnlyServlets(String resourceOnlyServlets)Sets the (comma separated) list of Servlets that expect a resource to be present.voidsetResources(WebResourceRoot resources)Set the Resources object with which this Context is associated.voidsetResponseCharacterEncoding(String encoding)Set the default response body encoding for this web application.voidsetSendRedirectBody(boolean enable)Configures if a response body is included when a redirect response is sent to the client.voidsetSessionCookieDomain(String sessionCookieDomain)Sets the domain to use for session cookies.voidsetSessionCookieName(String sessionCookieName)Sets the name to use for session cookies.voidsetSessionCookiePath(String sessionCookiePath)Sets the path to use for session cookies.voidsetSessionCookiePathUsesTrailingSlash(boolean sessionCookiePathUsesTrailingSlash)Configures if a / is added to the end of the session cookie path to ensure browsers, particularly IE, don't send a session cookie for context /foo with requests intended for context /foobar.voidsetSessionTimeout(int timeout)Set the default session timeout (in minutes) for this web application.voidsetStartStopThreads(int startStopThreads)Sets the number of threads available for starting and stopping any children associated with this container.voidsetSwallowAbortedUploads(boolean swallowAbortedUploads)Set tofalseto disable request data swallowing after an upload was aborted due to size constraints.voidsetSwallowOutput(boolean swallowOutput)Set the value of the swallowOutput flag.voidsetThreadBindingListener(ThreadBindingListener threadBindingListener)Get the associated ThreadBindingListener.voidsetTldValidation(boolean tldValidation)Controls whether the parsing of *.tld files for this Context will be performed by a validating parser.voidsetUseBloomFilterForArchives(boolean useBloomFilterForArchives)Set bloom filter flag value.voidsetUseHttpOnly(boolean useHttpOnly)Sets the use HttpOnly cookies for session cookies flag.voidsetUseRelativeRedirects(boolean useRelativeRedirects)Controls whether HTTP 1.1 and later location headers generated by a call toHttpServletResponse.sendRedirect(String)will use relative or absolute redirects.voidsetValidateClientProvidedNewSessionId(boolean validateClientProvidedNewSessionId)When a client provides the ID for a new session, should that ID be validated?voidsetWebappVersion(String webappVersion)Set the version of this web application - used to differentiate different versions of the same web application when using parallel deployment.voidsetWrapperClass(String wrapperClass)Set the Java class name of the Wrapper implementation used for servlets registered in this Context.voidsetXmlBlockExternal(boolean xmlBlockExternal)Controls whether the parsing of web.xml, web-fragment.xml, *.tld, *.jspx, *.tagx and tagplugin.xml files for this Context will block the use of external entities.voidsetXmlNamespaceAware(boolean xmlNamespaceAware)Controls whether the parsing of web.xml and web-fragment.xml files for this Context will be performed by a namespace aware parser.voidsetXmlValidation(boolean xmlValidation)Controls whether the parsing of web.xml and web-fragment.xml files for this Context will be performed by a validating parser.protected voidstartInternal()Sub-classes must ensure that the state is changed toLifecycleState.STARTINGduring the execution of this method.protected voidstopInternal()Sub-classes must ensure that the state is changed toLifecycleState.STOPPINGduring the execution of this method.StringtoString()voidunbind(boolean usePrivilegedAction, ClassLoader originalClassLoader)Restore the current thread context class loader to the original class loader in used beforeContextBind.bind(boolean, ClassLoader)was called.-
Methods inherited from class org.apache.catalina.util.LifecycleMBeanBase
destroyInternal, getDomain, getObjectName, initInternal, postDeregister, postRegister, preDeregister, preRegister, register, setDomain, unregister, unregister
-
Methods inherited from class org.apache.catalina.util.LifecycleBase
addLifecycleListener, destroy, findLifecycleListeners, fireLifecycleEvent, getState, getStateName, getThrowOnFailure, init, removeLifecycleListener, setState, setState, setThrowOnFailure, start, stop
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.apache.catalina.Container
getDomain, getObjectName
-
Methods inherited from interface org.apache.catalina.Context
addServletMappingDecoded, isParallelAnnotationScanning
-
Methods inherited from interface org.apache.catalina.Lifecycle
addLifecycleListener, destroy, findLifecycleListeners, getState, getStateName, init, removeLifecycleListener, start, stop
-
-
-
-
Field Detail
-
sm
protected static final StringManager sm
-
-
Method Detail
-
getConfigFile
public URL getConfigFile()
Description copied from interface:ContextReturn the URL of the XML descriptor for this context.- Specified by:
getConfigFilein interfaceContext- Returns:
- The URL of the XML descriptor for this context
-
setConfigFile
public void setConfigFile(URL configFile)
Description copied from interface:ContextSet the URL of the XML descriptor for this context.- Specified by:
setConfigFilein interfaceContext- Parameters:
configFile- The URL of the XML descriptor for this context.
-
getDocBase
public String getDocBase()
Description copied from interface:ContextObtain the document root for this Context.- Specified by:
getDocBasein interfaceContext- Returns:
- An absolute pathname or a relative (to the Host's appBase) pathname.
-
setDocBase
public void setDocBase(String docBase)
Description copied from interface:ContextSet the document root for this Context. This can be either an absolute pathname or a relative pathname. Relative pathnames are relative to the containing Host's appBase.- Specified by:
setDocBasein interfaceContext- Parameters:
docBase- The new document root
-
getName
public String getName()
Description copied from interface:ContainerReturn a name string (suitable for use by humans) that describes this Container. Within the set of child containers belonging to a particular parent, Container names must be unique.
-
setName
public void setName(String name)
Description copied from interface:ContainerSet a name string (suitable for use by humans) that describes this Container. Within the set of child containers belonging to a particular parent, Container names must be unique.
-
getParent
public Container getParent()
Description copied from interface:ContainerGet the parent container.
-
setParent
public void setParent(Container parent)
Description copied from interface:ContainerSet the parent Container to which this Container is being added as a child. This Container may refuse to become attached to the specified Container by throwing an exception.
-
getPath
public String getPath()
-
setPath
public void setPath(String path)
Description copied from interface:ContextSet the context path for this web application.
-
getWebappVersion
public String getWebappVersion()
- Specified by:
getWebappVersionin interfaceContext- Returns:
- The version of this web application, used to differentiate different versions of the same web application when using parallel deployment. If not specified, defaults to the empty string.
-
setWebappVersion
public void setWebappVersion(String webappVersion)
Description copied from interface:ContextSet the version of this web application - used to differentiate different versions of the same web application when using parallel deployment.- Specified by:
setWebappVersionin interfaceContext- Parameters:
webappVersion- The webapp version associated with the context, which should be unique
-
getDomainInternal
protected String getDomainInternal()
Description copied from class:LifecycleMBeanBaseMethod implemented by sub-classes to identify the domain in which MBeans should be registered.- Specified by:
getDomainInternalin classLifecycleMBeanBase- Returns:
- The name of the domain to use to register MBeans.
-
getMBeanKeyProperties
public String getMBeanKeyProperties()
Description copied from interface:ContainerCalculate the key properties string to be added to an object'sObjectNameto indicate that it is associated with this container.- Specified by:
getMBeanKeyPropertiesin interfaceContainer- Returns:
- A string suitable for appending to the ObjectName
-
getObjectNameKeyProperties
protected String getObjectNameKeyProperties()
Description copied from class:LifecycleMBeanBaseAllow sub-classes to specify the key properties component of theObjectNamethat will be used to register this component.- Specified by:
getObjectNameKeyPropertiesin classLifecycleMBeanBase- Returns:
- The string representation of the key properties component of the
desired
ObjectName
-
startInternal
protected void startInternal() throws LifecycleExceptionDescription copied from class:LifecycleBaseSub-classes must ensure that the state is changed toLifecycleState.STARTINGduring the execution of this method. Changing state will trigger theLifecycle.START_EVENTevent. If a component fails to start it may either throw aLifecycleExceptionwhich will cause it's parent to fail to start or it can place itself in the error state in which caseLifecycleBase.stop()will be called on the failed component but the parent component will continue to start normally.- Specified by:
startInternalin classLifecycleBase- Throws:
LifecycleException- Start error occurred
-
stopInternal
protected void stopInternal() throws LifecycleExceptionDescription copied from class:LifecycleBaseSub-classes must ensure that the state is changed toLifecycleState.STOPPINGduring the execution of this method. Changing state will trigger theLifecycle.STOP_EVENTevent.- Specified by:
stopInternalin classLifecycleBase- Throws:
LifecycleException- Stop error occurred
-
addWatchedResource
public void addWatchedResource(String name)
Description copied from interface:ContextAdd a resource which will be watched for reloading by the host auto deployer. Note: this will not be used in embedded mode.- Specified by:
addWatchedResourcein interfaceContext- Parameters:
name- Path to the resource, relative to docBase
-
findWatchedResources
public String[] findWatchedResources()
- Specified by:
findWatchedResourcesin interfaceContext- Returns:
- the set of watched resources for this Context. If none are defined, a zero length array will be returned.
-
removeWatchedResource
public void removeWatchedResource(String name)
Description copied from interface:ContextRemove the specified watched resource name from the list associated with this Context.- Specified by:
removeWatchedResourcein interfaceContext- Parameters:
name- Name of the watched resource to be removed
-
addChild
public void addChild(Container child)
Description copied from interface:ContainerAdd a new child Container to those associated with this Container, if supported. Prior to adding this Container to the set of children, the child'ssetParent()method must be called, with this Container as an argument. This method may thrown anIllegalArgumentExceptionif this Container chooses not to be attached to the specified Container, in which case it is not added
-
findChild
public Container findChild(String name)
Description copied from interface:ContainerObtain a child Container by name.
-
findChildren
public Container[] findChildren()
Description copied from interface:ContainerObtain the child Containers associated with this Container.- Specified by:
findChildrenin interfaceContainer- Returns:
- An array containing all children of this container. If this Container has no children, a zero-length array is returned.
-
removeChild
public void removeChild(Container child)
Description copied from interface:ContainerRemove an existing child Container from association with this parent Container.- Specified by:
removeChildin interfaceContainer- Parameters:
child- Existing child Container to be removed
-
getLoader
public Loader getLoader()
-
setLoader
public void setLoader(Loader loader)
Description copied from interface:ContextSet the Loader with which this Context is associated.
-
getLogger
public Log getLogger()
Description copied from interface:ContainerObtain the log to which events for this container should be logged.
-
getLogName
public String getLogName()
Description copied from interface:ContainerReturn the logger name that the container will use.- Specified by:
getLogNamein interfaceContainer- Returns:
- the abbreviated name of this container for logging messages
-
getManager
public Manager getManager()
- Specified by:
getManagerin interfaceContext- Returns:
- the Manager with which this Context is associated. If there is
no associated Manager, return
null.
-
setManager
public void setManager(Manager manager)
Description copied from interface:ContextSet the Manager with which this Context is associated.- Specified by:
setManagerin interfaceContext- Parameters:
manager- The newly associated Manager
-
getPipeline
public Pipeline getPipeline()
Description copied from interface:ContainerReturn the Pipeline object that manages the Valves associated with this Container.- Specified by:
getPipelinein interfaceContainer- Returns:
- The Pipeline
-
getCluster
public Cluster getCluster()
Description copied from interface:ContainerGet the Cluster for this container.- Specified by:
getClusterin interfaceContainer- Returns:
- The Cluster with which this Container is associated. If there is
no associated Cluster, return the Cluster associated with our
parent Container (if any); otherwise return
null.
-
setCluster
public void setCluster(Cluster cluster)
Description copied from interface:ContainerSet the Cluster with which this Container is associated.- Specified by:
setClusterin interfaceContainer- Parameters:
cluster- the Cluster with which this Container is associated.
-
getBackgroundProcessorDelay
public int getBackgroundProcessorDelay()
Description copied from interface:ContainerGet the delay between the invocation of the backgroundProcess method on this container and its children. Child containers will not be invoked if their delay value is positive (which would mean they are using their own thread). Setting this to a positive value will cause a thread to be spawned. After waiting the specified amount of time, the thread will invoke theContainer.backgroundProcess()method on this container and all children with non-positive delay values.- Specified by:
getBackgroundProcessorDelayin interfaceContainer- Returns:
- The delay between the invocation of the backgroundProcess method on this container and its children. A non-positive value indicates that background processing will be managed by the parent.
-
setBackgroundProcessorDelay
public void setBackgroundProcessorDelay(int delay)
Description copied from interface:ContainerSet the delay between the invocation of the execute method on this container and its children.- Specified by:
setBackgroundProcessorDelayin interfaceContainer- Parameters:
delay- The delay in seconds between the invocation of backgroundProcess methods
-
getParentClassLoader
public ClassLoader getParentClassLoader()
Description copied from interface:ContainerGet the parent class loader.- Specified by:
getParentClassLoaderin interfaceContainer- Returns:
- the parent class loader for this component. If not set, return
Container.getParent().Container.getParentClassLoader(). If no parent has been set, return the system class loader.
-
setParentClassLoader
public void setParentClassLoader(ClassLoader parent)
Description copied from interface:ContainerSet the parent class loader for this component. ForContexts this call is meaningful only before a Loader has been configured, and the specified value (if non-null) should be passed as an argument to the class loader constructor.- Specified by:
setParentClassLoaderin interfaceContainer- Parameters:
parent- The new parent class loader
-
getRealm
public Realm getRealm()
Description copied from interface:ContainerObtain the Realm with which this Container is associated.
-
setRealm
public void setRealm(Realm realm)
Description copied from interface:ContainerSet the Realm with which this Container is associated.
-
getResources
public WebResourceRoot getResources()
- Specified by:
getResourcesin interfaceContext- Returns:
- the Resources with which this Context is associated.
-
setResources
public void setResources(WebResourceRoot resources)
Description copied from interface:ContextSet the Resources object with which this Context is associated.- Specified by:
setResourcesin interfaceContext- Parameters:
resources- The newly associated Resources
-
backgroundProcess
public void backgroundProcess()
Description copied from interface:ContainerExecute a periodic task, such as reloading, etc. This method will be invoked inside the classloading context of this container. Unexpected throwables will be caught and logged.- Specified by:
backgroundProcessin interfaceContainer
-
addContainerListener
public void addContainerListener(ContainerListener listener)
Description copied from interface:ContainerAdd a container event listener to this component.- Specified by:
addContainerListenerin interfaceContainer- Parameters:
listener- The listener to add
-
findContainerListeners
public ContainerListener[] findContainerListeners()
Description copied from interface:ContainerObtain the container listeners associated with this Container.- Specified by:
findContainerListenersin interfaceContainer- Returns:
- An array containing the container listeners associated with this Container. If this Container has no registered container listeners, a zero-length array is returned.
-
removeContainerListener
public void removeContainerListener(ContainerListener listener)
Description copied from interface:ContainerRemove a container event listener from this component.- Specified by:
removeContainerListenerin interfaceContainer- Parameters:
listener- The listener to remove
-
addPropertyChangeListener
public void addPropertyChangeListener(PropertyChangeListener listener)
Description copied from interface:ContainerAdd a property change listener to this component.- Specified by:
addPropertyChangeListenerin interfaceContainer- Parameters:
listener- The listener to add
-
removePropertyChangeListener
public void removePropertyChangeListener(PropertyChangeListener listener)
Description copied from interface:ContainerRemove a property change listener from this component.- Specified by:
removePropertyChangeListenerin interfaceContainer- Parameters:
listener- The listener to remove
-
fireContainerEvent
public void fireContainerEvent(String type, Object data)
Description copied from interface:ContainerNotify all container event listeners that a particular event has occurred for this Container. The default implementation performs this notification synchronously using the calling thread.- Specified by:
fireContainerEventin interfaceContainer- Parameters:
type- Event typedata- Event data
-
logAccess
public void logAccess(Request request, Response response, long time, boolean useDefault)
Description copied from interface:ContainerLog a request/response that was destined for this container but has been handled earlier in the processing chain so that the request/response still appears in the correct access logs.- Specified by:
logAccessin interfaceContainer- Parameters:
request- Request (associated with the response) to logresponse- Response (associated with the request) to logtime- Time taken to process the request/response in milliseconds (use 0 if not known)useDefault- Flag that indicates that the request/response should be logged in the engine's default access log
-
getAccessLog
public AccessLog getAccessLog()
Description copied from interface:ContainerObtain the AccessLog to use to log a request/response that is destined for this container. This is typically used when the request/response was handled (and rejected) earlier in the processing chain so that the request/response still appears in the correct access logs.- Specified by:
getAccessLogin interfaceContainer- Returns:
- The AccessLog to use for a request/response destined for this container
-
getStartStopThreads
public int getStartStopThreads()
Description copied from interface:ContainerObtain the number of threads available for starting and stopping any children associated with this container. This allows start/stop calls to children to be processed in parallel.- Specified by:
getStartStopThreadsin interfaceContainer- Returns:
- The currently configured number of threads used to start/stop children associated with this container
-
setStartStopThreads
public void setStartStopThreads(int startStopThreads)
Description copied from interface:ContainerSets the number of threads available for starting and stopping any children associated with this container. This allows start/stop calls to children to be processed in parallel.- Specified by:
setStartStopThreadsin interfaceContainer- Parameters:
startStopThreads- The new number of threads to be used
-
getAllowCasualMultipartParsing
public boolean getAllowCasualMultipartParsing()
Description copied from interface:ContextReturnstrueif requests mapped to servlets without "multipart config" to parse multipart/form-data requests anyway.- Specified by:
getAllowCasualMultipartParsingin interfaceContext- Returns:
trueif requests mapped to servlets without "multipart config" to parse multipart/form-data requests,falseotherwise.
-
setAllowCasualMultipartParsing
public void setAllowCasualMultipartParsing(boolean allowCasualMultipartParsing)
Description copied from interface:ContextSet totrueto allow requests mapped to servlets that do not explicitly declare @MultipartConfig or have <multipart-config> specified in web.xml to parse multipart/form-data requests.- Specified by:
setAllowCasualMultipartParsingin interfaceContext- Parameters:
allowCasualMultipartParsing-trueto allow such casual parsing,falseotherwise.
-
getApplicationEventListeners
public Object[] getApplicationEventListeners()
Description copied from interface:ContextObtain the registered application event listeners.- Specified by:
getApplicationEventListenersin interfaceContext- Returns:
- An array containing the application event listener instances for this web application in the order they were specified in the web application deployment descriptor
-
setApplicationEventListeners
public void setApplicationEventListeners(Object[] listeners)
Description copied from interface:ContextStore the set of initialized application event listener objects, in the order they were specified in the web application deployment descriptor, for this application.- Specified by:
setApplicationEventListenersin interfaceContext- Parameters:
listeners- The set of instantiated listener objects.
-
getApplicationLifecycleListeners
public Object[] getApplicationLifecycleListeners()
Description copied from interface:ContextObtain the registered application lifecycle listeners.- Specified by:
getApplicationLifecycleListenersin interfaceContext- Returns:
- An array containing the application lifecycle listener instances for this web application in the order they were specified in the web application deployment descriptor
-
setApplicationLifecycleListeners
public void setApplicationLifecycleListeners(Object[] listeners)
Description copied from interface:ContextStore the set of initialized application lifecycle listener objects, in the order they were specified in the web application deployment descriptor, for this application.- Specified by:
setApplicationLifecycleListenersin interfaceContext- Parameters:
listeners- The set of instantiated listener objects.
-
getCharset
public String getCharset(Locale locale)
Description copied from interface:ContextObtain the character set name to use with the given Locale. Note that different Contexts may have different mappings of Locale to character set.- Specified by:
getCharsetin interfaceContext- Parameters:
locale- The locale for which the mapped character set should be returned- Returns:
- The name of the character set to use with the given Locale
-
getConfigured
public boolean getConfigured()
Description copied from interface:ContextReturn the "correctly configured" flag for this Context.- Specified by:
getConfiguredin interfaceContext- Returns:
trueif the Context has been correctly configured, otherwisefalse
-
setConfigured
public void setConfigured(boolean configured)
Description copied from interface:ContextSet the "correctly configured" flag for this Context. This can be set to false by startup listeners that detect a fatal configuration error to avoid the application from being made available.- Specified by:
setConfiguredin interfaceContext- Parameters:
configured- The new correctly configured flag
-
getCookies
public boolean getCookies()
Description copied from interface:ContextReturn the "use cookies for session ids" flag.- Specified by:
getCookiesin interfaceContext- Returns:
trueif it is permitted to use cookies to track session IDs for this web application, otherwisefalse
-
setCookies
public void setCookies(boolean cookies)
Description copied from interface:ContextSet the "use cookies for session ids" flag.- Specified by:
setCookiesin interfaceContext- Parameters:
cookies- The new flag
-
getSessionCookieName
public String getSessionCookieName()
Description copied from interface:ContextGets the name to use for session cookies. Overrides any setting that may be specified by the application.- Specified by:
getSessionCookieNamein interfaceContext- Returns:
- The value of the default session cookie name or null if not specified
-
setSessionCookieName
public void setSessionCookieName(String sessionCookieName)
Description copied from interface:ContextSets the name to use for session cookies. Overrides any setting that may be specified by the application.- Specified by:
setSessionCookieNamein interfaceContext- Parameters:
sessionCookieName- The name to use
-
getUseHttpOnly
public boolean getUseHttpOnly()
Description copied from interface:ContextGets the value of the use HttpOnly cookies for session cookies flag.- Specified by:
getUseHttpOnlyin interfaceContext- Returns:
trueif the HttpOnly flag should be set on session cookies
-
setUseHttpOnly
public void setUseHttpOnly(boolean useHttpOnly)
Description copied from interface:ContextSets the use HttpOnly cookies for session cookies flag.- Specified by:
setUseHttpOnlyin interfaceContext- Parameters:
useHttpOnly- Set totrueto use HttpOnly cookies for session cookies
-
getSessionCookieDomain
public String getSessionCookieDomain()
Description copied from interface:ContextGets the domain to use for session cookies. Overrides any setting that may be specified by the application.- Specified by:
getSessionCookieDomainin interfaceContext- Returns:
- The value of the default session cookie domain or null if not specified
-
setSessionCookieDomain
public void setSessionCookieDomain(String sessionCookieDomain)
Description copied from interface:ContextSets the domain to use for session cookies. Overrides any setting that may be specified by the application.- Specified by:
setSessionCookieDomainin interfaceContext- Parameters:
sessionCookieDomain- The domain to use
-
getSessionCookiePath
public String getSessionCookiePath()
Description copied from interface:ContextGets the path to use for session cookies. Overrides any setting that may be specified by the application.- Specified by:
getSessionCookiePathin interfaceContext- Returns:
- The value of the default session cookie path or null if not specified
-
setSessionCookiePath
public void setSessionCookiePath(String sessionCookiePath)
Description copied from interface:ContextSets the path to use for session cookies. Overrides any setting that may be specified by the application.- Specified by:
setSessionCookiePathin interfaceContext- Parameters:
sessionCookiePath- The path to use
-
getSessionCookiePathUsesTrailingSlash
public boolean getSessionCookiePathUsesTrailingSlash()
Description copied from interface:ContextIs a / added to the end of the session cookie path to ensure browsers, particularly IE, don't send a session cookie for context /foo with requests intended for context /foobar.- Specified by:
getSessionCookiePathUsesTrailingSlashin interfaceContext- Returns:
trueif the slash is added, otherwisefalse
-
setSessionCookiePathUsesTrailingSlash
public void setSessionCookiePathUsesTrailingSlash(boolean sessionCookiePathUsesTrailingSlash)
Description copied from interface:ContextConfigures if a / is added to the end of the session cookie path to ensure browsers, particularly IE, don't send a session cookie for context /foo with requests intended for context /foobar.- Specified by:
setSessionCookiePathUsesTrailingSlashin interfaceContext- Parameters:
sessionCookiePathUsesTrailingSlash-trueif the slash is should be added, otherwisefalse
-
getCrossContext
public boolean getCrossContext()
Description copied from interface:ContextReturn the "allow crossing servlet contexts" flag.- Specified by:
getCrossContextin interfaceContext- Returns:
trueif cross-contest requests are allowed from this web applications, otherwisefalse
-
setCrossContext
public void setCrossContext(boolean crossContext)
Description copied from interface:ContextSet the "allow crossing servlet contexts" flag.- Specified by:
setCrossContextin interfaceContext- Parameters:
crossContext- The new cross contexts flag
-
getAltDDName
public String getAltDDName()
Description copied from interface:ContextReturn the alternate Deployment Descriptor name.- Specified by:
getAltDDNamein interfaceContext- Returns:
- the name
-
setAltDDName
public void setAltDDName(String altDDName)
Description copied from interface:ContextSet an alternate Deployment Descriptor name.- Specified by:
setAltDDNamein interfaceContext- Parameters:
altDDName- The new name
-
getDenyUncoveredHttpMethods
public boolean getDenyUncoveredHttpMethods()
Description copied from interface:ContextReturn the deny-uncovered-http-methods flag for this web application.- Specified by:
getDenyUncoveredHttpMethodsin interfaceContext- Returns:
- The current value of the flag
-
setDenyUncoveredHttpMethods
public void setDenyUncoveredHttpMethods(boolean denyUncoveredHttpMethods)
Description copied from interface:ContextSet the deny-uncovered-http-methods flag for this web application.- Specified by:
setDenyUncoveredHttpMethodsin interfaceContext- Parameters:
denyUncoveredHttpMethods- The new deny-uncovered-http-methods flag
-
getDisplayName
public String getDisplayName()
Description copied from interface:ContextReturn the display name of this web application.- Specified by:
getDisplayNamein interfaceContext- Returns:
- The display name
-
setDisplayName
public void setDisplayName(String displayName)
Description copied from interface:ContextSet the display name of this web application.- Specified by:
setDisplayNamein interfaceContext- Parameters:
displayName- The new display name
-
getDistributable
public boolean getDistributable()
Description copied from interface:ContextGet the distributable flag for this web application.- Specified by:
getDistributablein interfaceContext- Returns:
- The value of the distributable flag for this web application.
-
setDistributable
public void setDistributable(boolean distributable)
Description copied from interface:ContextSet the distributable flag for this web application.- Specified by:
setDistributablein interfaceContext- Parameters:
distributable- The new distributable flag
-
getEncodedPath
public String getEncodedPath()
Description copied from interface:ContextReturn the URL encoded context path- Specified by:
getEncodedPathin interfaceContext- Returns:
- The URL encoded (with UTF-8) context path
-
getIgnoreAnnotations
public boolean getIgnoreAnnotations()
Description copied from interface:ContextDetermine if annotations parsing is currently disabled- Specified by:
getIgnoreAnnotationsin interfaceContext- Returns:
trueif annotation parsing is disabled for this web application
-
setIgnoreAnnotations
public void setIgnoreAnnotations(boolean ignoreAnnotations)
Description copied from interface:ContextSet the boolean on the annotations parsing for this web application.- Specified by:
setIgnoreAnnotationsin interfaceContext- Parameters:
ignoreAnnotations- The boolean on the annotations parsing
-
getLoginConfig
public LoginConfig getLoginConfig()
- Specified by:
getLoginConfigin interfaceContext- Returns:
- the login configuration descriptor for this web application.
-
setLoginConfig
public void setLoginConfig(LoginConfig config)
Description copied from interface:ContextSet the login configuration descriptor for this web application.- Specified by:
setLoginConfigin interfaceContext- Parameters:
config- The new login configuration
-
getNamingResources
public NamingResourcesImpl getNamingResources()
- Specified by:
getNamingResourcesin interfaceContext- Returns:
- the naming resources associated with this web application.
-
setNamingResources
public void setNamingResources(NamingResourcesImpl namingResources)
Description copied from interface:ContextSet the naming resources for this web application.- Specified by:
setNamingResourcesin interfaceContext- Parameters:
namingResources- The new naming resources
-
getPublicId
public String getPublicId()
- Specified by:
getPublicIdin interfaceContext- Returns:
- the public identifier of the deployment descriptor DTD that is currently being parsed.
-
setPublicId
public void setPublicId(String publicId)
Description copied from interface:ContextSet the public identifier of the deployment descriptor DTD that is currently being parsed.- Specified by:
setPublicIdin interfaceContext- Parameters:
publicId- The public identifier
-
getReloadable
public boolean getReloadable()
- Specified by:
getReloadablein interfaceContext- Returns:
- the reloadable flag for this web application.
-
setReloadable
public void setReloadable(boolean reloadable)
Description copied from interface:ContextSet the reloadable flag for this web application.- Specified by:
setReloadablein interfaceContext- Parameters:
reloadable- The new reloadable flag
-
getOverride
public boolean getOverride()
- Specified by:
getOverridein interfaceContext- Returns:
- the override flag for this web application.
-
setOverride
public void setOverride(boolean override)
Description copied from interface:ContextSet the override flag for this web application.- Specified by:
setOverridein interfaceContext- Parameters:
override- The new override flag
-
getPrivileged
public boolean getPrivileged()
- Specified by:
getPrivilegedin interfaceContext- Returns:
- the privileged flag for this web application.
-
setPrivileged
public void setPrivileged(boolean privileged)
Description copied from interface:ContextSet the privileged flag for this web application.- Specified by:
setPrivilegedin interfaceContext- Parameters:
privileged- The new privileged flag
-
getServletContext
public ServletContext getServletContext()
- Specified by:
getServletContextin interfaceContext- Returns:
- the Servlet context for which this Context is a facade.
-
getSessionTimeout
public int getSessionTimeout()
- Specified by:
getSessionTimeoutin interfaceContext- Returns:
- the default session timeout (in minutes) for this web application.
-
setSessionTimeout
public void setSessionTimeout(int timeout)
Description copied from interface:ContextSet the default session timeout (in minutes) for this web application.- Specified by:
setSessionTimeoutin interfaceContext- Parameters:
timeout- The new default session timeout
-
getSwallowAbortedUploads
public boolean getSwallowAbortedUploads()
Description copied from interface:ContextReturnstrueif remaining request data will be read (swallowed) even the request violates a data size constraint.- Specified by:
getSwallowAbortedUploadsin interfaceContext- Returns:
trueif data will be swallowed (default),falseotherwise.
-
setSwallowAbortedUploads
public void setSwallowAbortedUploads(boolean swallowAbortedUploads)
Description copied from interface:ContextSet tofalseto disable request data swallowing after an upload was aborted due to size constraints.- Specified by:
setSwallowAbortedUploadsin interfaceContext- Parameters:
swallowAbortedUploads-falseto disable swallowing,trueotherwise (default).
-
getSwallowOutput
public boolean getSwallowOutput()
- Specified by:
getSwallowOutputin interfaceContext- Returns:
- the value of the swallowOutput flag.
-
setSwallowOutput
public void setSwallowOutput(boolean swallowOutput)
Description copied from interface:ContextSet the value of the swallowOutput flag. If set to true, the system.out and system.err will be redirected to the logger during a servlet execution.- Specified by:
setSwallowOutputin interfaceContext- Parameters:
swallowOutput- The new value
-
getWrapperClass
public String getWrapperClass()
- Specified by:
getWrapperClassin interfaceContext- Returns:
- the Java class name of the Wrapper implementation used for servlets registered in this Context.
-
setWrapperClass
public void setWrapperClass(String wrapperClass)
Description copied from interface:ContextSet the Java class name of the Wrapper implementation used for servlets registered in this Context.- Specified by:
setWrapperClassin interfaceContext- Parameters:
wrapperClass- The new wrapper class
-
getXmlNamespaceAware
public boolean getXmlNamespaceAware()
Description copied from interface:ContextWill the parsing of web.xml and web-fragment.xml files for this Context be performed by a namespace aware parser?- Specified by:
getXmlNamespaceAwarein interfaceContext- Returns:
- true if namespace awareness is enabled.
-
setXmlNamespaceAware
public void setXmlNamespaceAware(boolean xmlNamespaceAware)
Description copied from interface:ContextControls whether the parsing of web.xml and web-fragment.xml files for this Context will be performed by a namespace aware parser.- Specified by:
setXmlNamespaceAwarein interfaceContext- Parameters:
xmlNamespaceAware- true to enable namespace awareness
-
getXmlValidation
public boolean getXmlValidation()
Description copied from interface:ContextWill the parsing of web.xml and web-fragment.xml files for this Context be performed by a validating parser?- Specified by:
getXmlValidationin interfaceContext- Returns:
- true if validation is enabled.
-
setXmlValidation
public void setXmlValidation(boolean xmlValidation)
Description copied from interface:ContextControls whether the parsing of web.xml and web-fragment.xml files for this Context will be performed by a validating parser.- Specified by:
setXmlValidationin interfaceContext- Parameters:
xmlValidation- true to enable xml validation
-
getXmlBlockExternal
public boolean getXmlBlockExternal()
Description copied from interface:ContextWill the parsing of web.xml, web-fragment.xml, *.tld, *.jspx, *.tagx and tagplugin.xml files for this Context block the use of external entities?- Specified by:
getXmlBlockExternalin interfaceContext- Returns:
- true if access to external entities is blocked
-
setXmlBlockExternal
public void setXmlBlockExternal(boolean xmlBlockExternal)
Description copied from interface:ContextControls whether the parsing of web.xml, web-fragment.xml, *.tld, *.jspx, *.tagx and tagplugin.xml files for this Context will block the use of external entities.- Specified by:
setXmlBlockExternalin interfaceContext- Parameters:
xmlBlockExternal- true to block external entities
-
getTldValidation
public boolean getTldValidation()
Description copied from interface:ContextWill the parsing of *.tld files for this Context be performed by a validating parser?- Specified by:
getTldValidationin interfaceContext- Returns:
- true if validation is enabled.
-
setTldValidation
public void setTldValidation(boolean tldValidation)
Description copied from interface:ContextControls whether the parsing of *.tld files for this Context will be performed by a validating parser.- Specified by:
setTldValidationin interfaceContext- Parameters:
tldValidation- true to enable xml validation
-
getJarScanner
public JarScanner getJarScanner()
Description copied from interface:ContextGet the Jar Scanner to be used to scan for JAR resources for this context.- Specified by:
getJarScannerin interfaceContext- Returns:
- The Jar Scanner configured for this context.
-
setJarScanner
public void setJarScanner(JarScanner jarScanner)
Description copied from interface:ContextSet the Jar Scanner to be used to scan for JAR resources for this context.- Specified by:
setJarScannerin interfaceContext- Parameters:
jarScanner- The Jar Scanner to be used for this context.
-
getAuthenticator
public Authenticator getAuthenticator()
- Specified by:
getAuthenticatorin interfaceContext- Returns:
- the
Authenticatorthat is used by this context. This is always non-nullfor a started Context
-
setLogEffectiveWebXml
public void setLogEffectiveWebXml(boolean logEffectiveWebXml)
Description copied from interface:ContextSet whether or not the effective web.xml for this context should be logged on context start.- Specified by:
setLogEffectiveWebXmlin interfaceContext- Parameters:
logEffectiveWebXml- set totrueto log the complete web.xml that will be used for the webapp
-
getLogEffectiveWebXml
public boolean getLogEffectiveWebXml()
Description copied from interface:ContextShould the effective web.xml for this context be logged on context start?- Specified by:
getLogEffectiveWebXmlin interfaceContext- Returns:
- true if the reconstructed web.xml that will be used for the webapp should be logged
-
addApplicationListener
public void addApplicationListener(String listener)
Description copied from interface:ContextAdd a new Listener class name to the set of Listeners configured for this application.- Specified by:
addApplicationListenerin interfaceContext- Parameters:
listener- Java class name of a listener class
-
findApplicationListeners
public String[] findApplicationListeners()
- Specified by:
findApplicationListenersin interfaceContext- Returns:
- the set of application listener class names configured for this application.
-
removeApplicationListener
public void removeApplicationListener(String listener)
Description copied from interface:ContextRemove the specified application listener class from the set of listeners for this application.- Specified by:
removeApplicationListenerin interfaceContext- Parameters:
listener- Java class name of the listener to be removed
-
addApplicationParameter
public void addApplicationParameter(ApplicationParameter parameter)
Description copied from interface:ContextAdd a new application parameter for this application.- Specified by:
addApplicationParameterin interfaceContext- Parameters:
parameter- The new application parameter
-
findApplicationParameters
public ApplicationParameter[] findApplicationParameters()
- Specified by:
findApplicationParametersin interfaceContext- Returns:
- the set of application parameters for this application.
-
removeApplicationParameter
public void removeApplicationParameter(String name)
Description copied from interface:ContextRemove the application parameter with the specified name from the set for this application.- Specified by:
removeApplicationParameterin interfaceContext- Parameters:
name- Name of the application parameter to remove
-
addConstraint
public void addConstraint(SecurityConstraint constraint)
Description copied from interface:ContextAdd a security constraint to the set for this web application.- Specified by:
addConstraintin interfaceContext- Parameters:
constraint- The security constraint that should be added
-
findConstraints
public SecurityConstraint[] findConstraints()
- Specified by:
findConstraintsin interfaceContext- Returns:
- the set of security constraints for this web application. If there are none, a zero-length array is returned.
-
removeConstraint
public void removeConstraint(SecurityConstraint constraint)
Description copied from interface:ContextRemove the specified security constraint from this web application.- Specified by:
removeConstraintin interfaceContext- Parameters:
constraint- Constraint to be removed
-
addErrorPage
public void addErrorPage(ErrorPage errorPage)
Description copied from interface:ContextAdd an error page for the specified error or Java exception.- Specified by:
addErrorPagein interfaceContext- Parameters:
errorPage- The error page definition to be added
-
findErrorPage
public ErrorPage findErrorPage(int errorCode)
- Specified by:
findErrorPagein interfaceContext- Parameters:
errorCode- Error code to look up- Returns:
- the error page entry for the specified HTTP error code,
if any; otherwise return
null.
-
findErrorPage
public ErrorPage findErrorPage(Throwable throwable)
Description copied from interface:ContextFind and return the ErrorPage instance for the specified exception's class, or an ErrorPage instance for the closest superclass for which there is such a definition. If no associated ErrorPage instance is found, returnnull.- Specified by:
findErrorPagein interfaceContext- Parameters:
throwable- The exception type for which to find an ErrorPage- Returns:
- the error page entry for the specified Java exception type,
if any; otherwise return
null.
-
findErrorPages
public ErrorPage[] findErrorPages()
- Specified by:
findErrorPagesin interfaceContext- Returns:
- the set of defined error pages for all specified error codes and exception types.
-
removeErrorPage
public void removeErrorPage(ErrorPage errorPage)
Description copied from interface:ContextRemove the error page for the specified error code or Java language exception, if it exists; otherwise, no action is taken.- Specified by:
removeErrorPagein interfaceContext- Parameters:
errorPage- The error page definition to be removed
-
addFilterDef
public void addFilterDef(FilterDef filterDef)
Description copied from interface:ContextAdd a filter definition to this Context.- Specified by:
addFilterDefin interfaceContext- Parameters:
filterDef- The filter definition to be added
-
findFilterDef
public FilterDef findFilterDef(String filterName)
- Specified by:
findFilterDefin interfaceContext- Parameters:
filterName- Filter name to look up- Returns:
- the filter definition for the specified filter name, if any;
otherwise return
null.
-
findFilterDefs
public FilterDef[] findFilterDefs()
- Specified by:
findFilterDefsin interfaceContext- Returns:
- the set of defined filters for this Context.
-
removeFilterDef
public void removeFilterDef(FilterDef filterDef)
Description copied from interface:ContextRemove the specified filter definition from this Context, if it exists; otherwise, no action is taken.- Specified by:
removeFilterDefin interfaceContext- Parameters:
filterDef- Filter definition to be removed
-
addFilterMap
public void addFilterMap(FilterMap filterMap)
Description copied from interface:ContextAdd a filter mapping to this Context.- Specified by:
addFilterMapin interfaceContext- Parameters:
filterMap- The filter mapping to be added
-
addFilterMapBefore
public void addFilterMapBefore(FilterMap filterMap)
Description copied from interface:ContextAdd a filter mapping to this Context before the mappings defined in the deployment descriptor but after any other mappings added via this method.- Specified by:
addFilterMapBeforein interfaceContext- Parameters:
filterMap- The filter mapping to be added
-
findFilterMaps
public FilterMap[] findFilterMaps()
- Specified by:
findFilterMapsin interfaceContext- Returns:
- the set of filter mappings for this Context.
-
removeFilterMap
public void removeFilterMap(FilterMap filterMap)
Description copied from interface:ContextRemove a filter mapping from this Context.- Specified by:
removeFilterMapin interfaceContext- Parameters:
filterMap- The filter mapping to be removed
-
addLocaleEncodingMappingParameter
public void addLocaleEncodingMappingParameter(String locale, String encoding)
Description copied from interface:ContextAdd a Locale Encoding Mapping (see Sec 5.4 of Servlet spec 2.4)- Specified by:
addLocaleEncodingMappingParameterin interfaceContext- Parameters:
locale- locale to map an encoding forencoding- encoding to be used for a give locale
-
addMimeMapping
public void addMimeMapping(String extension, String mimeType)
Description copied from interface:ContextAdd a new MIME mapping, replacing any existing mapping for the specified extension.- Specified by:
addMimeMappingin interfaceContext- Parameters:
extension- Filename extension being mappedmimeType- Corresponding MIME type
-
findMimeMapping
public String findMimeMapping(String extension)
- Specified by:
findMimeMappingin interfaceContext- Parameters:
extension- Extension to map to a MIME type- Returns:
- the MIME type to which the specified extension is mapped,
if any; otherwise return
null.
-
findMimeMappings
public String[] findMimeMappings()
- Specified by:
findMimeMappingsin interfaceContext- Returns:
- the extensions for which MIME mappings are defined. If there are none, a zero-length array is returned.
-
removeMimeMapping
public void removeMimeMapping(String extension)
Description copied from interface:ContextRemove the MIME mapping for the specified extension, if it exists; otherwise, no action is taken.- Specified by:
removeMimeMappingin interfaceContext- Parameters:
extension- Extension to remove the mapping for
-
addParameter
public void addParameter(String name, String value)
Description copied from interface:ContextAdd a new context initialization parameter, replacing any existing value for the specified name.- Specified by:
addParameterin interfaceContext- Parameters:
name- Name of the new parametervalue- Value of the new parameter
-
findParameter
public String findParameter(String name)
- Specified by:
findParameterin interfaceContext- Parameters:
name- Name of the parameter to return- Returns:
- the value for the specified context initialization
parameter name, if any; otherwise return
null.
-
findParameters
public String[] findParameters()
- Specified by:
findParametersin interfaceContext- Returns:
- the names of all defined context initialization parameters for this Context. If no parameters are defined, a zero-length array is returned.
-
removeParameter
public void removeParameter(String name)
Description copied from interface:ContextRemove the context initialization parameter with the specified name, if it exists; otherwise, no action is taken.- Specified by:
removeParameterin interfaceContext- Parameters:
name- Name of the parameter to remove
-
addRoleMapping
public void addRoleMapping(String role, String link)
Description copied from interface:ContextAdd a security role reference for this web application.- Specified by:
addRoleMappingin interfaceContext- Parameters:
role- Security role used in the applicationlink- Actual security role to check for
-
findRoleMapping
public String findRoleMapping(String role)
Description copied from interface:ContextFor the given security role (as used by an application), return the corresponding role name (as defined by the underlying Realm) if there is one. Otherwise, return the specified role unchanged.- Specified by:
findRoleMappingin interfaceContext- Parameters:
role- Security role to map- Returns:
- The role name that was mapped to the specified role
-
removeRoleMapping
public void removeRoleMapping(String role)
Description copied from interface:ContextRemove any security role reference for the specified name- Specified by:
removeRoleMappingin interfaceContext- Parameters:
role- Security role (as used in the application) to remove
-
addSecurityRole
public void addSecurityRole(String role)
Description copied from interface:ContextAdd a new security role for this web application.- Specified by:
addSecurityRolein interfaceContext- Parameters:
role- New security role
-
findSecurityRole
public boolean findSecurityRole(String role)
- Specified by:
findSecurityRolein interfaceContext- Parameters:
role- Security role to verify- Returns:
trueif the specified security role is defined for this application; otherwise returnfalse.
-
findSecurityRoles
public String[] findSecurityRoles()
- Specified by:
findSecurityRolesin interfaceContext- Returns:
- the security roles defined for this application. If none have been defined, a zero-length array is returned.
-
removeSecurityRole
public void removeSecurityRole(String role)
Description copied from interface:ContextRemove any security role with the specified name.- Specified by:
removeSecurityRolein interfaceContext- Parameters:
role- Security role to remove
-
addServletMappingDecoded
public void addServletMappingDecoded(String pattern, String name, boolean jspWildcard)
Description copied from interface:ContextAdd a new servlet mapping, replacing any existing mapping for the specified pattern.- Specified by:
addServletMappingDecodedin interfaceContext- Parameters:
pattern- URL pattern to be mappedname- Name of the corresponding servlet to executejspWildcard- true if name identifies the JspServlet and pattern contains a wildcard; false otherwise
-
findServletMapping
public String findServletMapping(String pattern)
- Specified by:
findServletMappingin interfaceContext- Parameters:
pattern- Pattern for which a mapping is requested- Returns:
- the servlet name mapped by the specified pattern (if any);
otherwise return
null.
-
findServletMappings
public String[] findServletMappings()
- Specified by:
findServletMappingsin interfaceContext- Returns:
- the patterns of all defined servlet mappings for this Context. If no mappings are defined, a zero-length array is returned.
-
removeServletMapping
public void removeServletMapping(String pattern)
Description copied from interface:ContextRemove any servlet mapping for the specified pattern, if it exists; otherwise, no action is taken.- Specified by:
removeServletMappingin interfaceContext- Parameters:
pattern- URL pattern of the mapping to remove
-
addWelcomeFile
public void addWelcomeFile(String name)
Description copied from interface:ContextAdd a new welcome file to the set recognized by this Context.- Specified by:
addWelcomeFilein interfaceContext- Parameters:
name- New welcome file name
-
findWelcomeFile
public boolean findWelcomeFile(String name)
- Specified by:
findWelcomeFilein interfaceContext- Parameters:
name- Welcome file to verify- Returns:
trueif the specified welcome file is defined for this Context; otherwise returnfalse.
-
findWelcomeFiles
public String[] findWelcomeFiles()
- Specified by:
findWelcomeFilesin interfaceContext- Returns:
- the set of welcome files defined for this Context. If none are defined, a zero-length array is returned.
-
removeWelcomeFile
public void removeWelcomeFile(String name)
Description copied from interface:ContextRemove the specified welcome file name from the list recognized by this Context.- Specified by:
removeWelcomeFilein interfaceContext- Parameters:
name- Name of the welcome file to be removed
-
addWrapperLifecycle
public void addWrapperLifecycle(String listener)
Description copied from interface:ContextAdd the classname of a LifecycleListener to be added to each Wrapper appended to this Context.- Specified by:
addWrapperLifecyclein interfaceContext- Parameters:
listener- Java class name of a LifecycleListener class
-
findWrapperLifecycles
public String[] findWrapperLifecycles()
- Specified by:
findWrapperLifecyclesin interfaceContext- Returns:
- the set of LifecycleListener classes that will be added to newly created Wrappers automatically.
-
removeWrapperLifecycle
public void removeWrapperLifecycle(String listener)
Description copied from interface:ContextRemove a class name from the set of LifecycleListener classes that will be added to newly created Wrappers.- Specified by:
removeWrapperLifecyclein interfaceContext- Parameters:
listener- Class name of a LifecycleListener class to be removed
-
addWrapperListener
public void addWrapperListener(String listener)
Description copied from interface:ContextAdd the classname of a ContainerListener to be added to each Wrapper appended to this Context.- Specified by:
addWrapperListenerin interfaceContext- Parameters:
listener- Java class name of a ContainerListener class
-
findWrapperListeners
public String[] findWrapperListeners()
- Specified by:
findWrapperListenersin interfaceContext- Returns:
- the set of ContainerListener classes that will be added to newly created Wrappers automatically.
-
removeWrapperListener
public void removeWrapperListener(String listener)
Description copied from interface:ContextRemove a class name from the set of ContainerListener classes that will be added to newly created Wrappers.- Specified by:
removeWrapperListenerin interfaceContext- Parameters:
listener- Class name of a ContainerListener class to be removed
-
createInstanceManager
public InstanceManager createInstanceManager()
Description copied from interface:ContextFactory method to create and return a new InstanceManager instance. This can be used for framework integration or easier configuration with custom Context implementations.- Specified by:
createInstanceManagerin interfaceContext- Returns:
- the instance manager
-
createWrapper
public Wrapper createWrapper()
Description copied from interface:ContextFactory method to create and return a new Wrapper instance, of the Java implementation class appropriate for this Context implementation. The constructor of the instantiated Wrapper will have been called, but no properties will have been set.- Specified by:
createWrapperin interfaceContext- Returns:
- a newly created wrapper instance that is used to wrap a Servlet
-
fireRequestInitEvent
public boolean fireRequestInitEvent(ServletRequest request)
Description copied from interface:ContextNotify allServletRequestListeners that a request has started.- Specified by:
fireRequestInitEventin interfaceContext- Parameters:
request- The request object that will be passed to the listener- Returns:
trueif the listeners fire successfully, elsefalse
-
fireRequestDestroyEvent
public boolean fireRequestDestroyEvent(ServletRequest request)
Description copied from interface:ContextNotify allServletRequestListeners that a request has ended.- Specified by:
fireRequestDestroyEventin interfaceContext- Parameters:
request- The request object that will be passed to the listener- Returns:
trueif the listeners fire successfully, elsefalse
-
reload
public void reload()
Description copied from interface:ContextReload this web application, if reloading is supported.
-
getRealPath
public String getRealPath(String path)
- Specified by:
getRealPathin interfaceContext- Parameters:
path- The path to the desired resource- Returns:
- the real path for a given virtual path, if possible; otherwise
return
null.
-
getEffectiveMajorVersion
public int getEffectiveMajorVersion()
- Specified by:
getEffectiveMajorVersionin interfaceContext- Returns:
- the effective major version of the Servlet spec used by this context.
-
setEffectiveMajorVersion
public void setEffectiveMajorVersion(int major)
Description copied from interface:ContextSet the effective major version of the Servlet spec used by this context.- Specified by:
setEffectiveMajorVersionin interfaceContext- Parameters:
major- Set the version number
-
getEffectiveMinorVersion
public int getEffectiveMinorVersion()
- Specified by:
getEffectiveMinorVersionin interfaceContext- Returns:
- the effective minor version of the Servlet spec used by this context.
-
setEffectiveMinorVersion
public void setEffectiveMinorVersion(int minor)
Description copied from interface:ContextSet the effective minor version of the Servlet spec used by this context.- Specified by:
setEffectiveMinorVersionin interfaceContext- Parameters:
minor- Set the version number
-
getJspConfigDescriptor
public JspConfigDescriptor getJspConfigDescriptor()
- Specified by:
getJspConfigDescriptorin interfaceContext- Returns:
- the JSP configuration for this context. Will be null if there is no JSP configuration.
-
setJspConfigDescriptor
public void setJspConfigDescriptor(JspConfigDescriptor descriptor)
Description copied from interface:ContextSet the JspConfigDescriptor for this context. A null value indicates there is not JSP configuration.- Specified by:
setJspConfigDescriptorin interfaceContext- Parameters:
descriptor- the new JSP configuration
-
addServletContainerInitializer
public void addServletContainerInitializer(ServletContainerInitializer sci, Set<Class<?>> classes)
Description copied from interface:ContextAdd a ServletContainerInitializer instance to this web application.- Specified by:
addServletContainerInitializerin interfaceContext- Parameters:
sci- The instance to addclasses- The classes in which the initializer expressed an interest
-
getPaused
public boolean getPaused()
Description copied from interface:ContextIs this Context paused whilst it is reloaded?
-
isServlet22
public boolean isServlet22()
Description copied from interface:ContextIs this context using version 2.2 of the Servlet spec?- Specified by:
isServlet22in interfaceContext- Returns:
truefor a legacy Servlet 2.2 webapp
-
addServletSecurity
public Set<String> addServletSecurity(ServletRegistration.Dynamic registration, ServletSecurityElement servletSecurityElement)
Description copied from interface:ContextNotification that Servlet security has been dynamically set in aServletRegistration.Dynamic- Specified by:
addServletSecurityin interfaceContext- Parameters:
registration- Servlet security was modified forservletSecurityElement- new security constraints for this Servlet- Returns:
- urls currently mapped to this registration that are already present in web.xml
-
setResourceOnlyServlets
public void setResourceOnlyServlets(String resourceOnlyServlets)
Description copied from interface:ContextSets the (comma separated) list of Servlets that expect a resource to be present. Used to ensure that welcome files associated with Servlets that expect a resource to be present are not mapped when there is no resource.- Specified by:
setResourceOnlyServletsin interfaceContext- Parameters:
resourceOnlyServlets- The Servlet names comma separated list
-
getResourceOnlyServlets
public String getResourceOnlyServlets()
Description copied from interface:ContextObtains the list of Servlets that expect a resource to be present.- Specified by:
getResourceOnlyServletsin interfaceContext- Returns:
- A comma separated list of Servlet names as used in web.xml
-
isResourceOnlyServlet
public boolean isResourceOnlyServlet(String servletName)
Description copied from interface:ContextChecks the named Servlet to see if it expects a resource to be present.- Specified by:
isResourceOnlyServletin interfaceContext- Parameters:
servletName- Name of the Servlet (as per web.xml) to check- Returns:
trueif the Servlet expects a resource, otherwisefalse
-
getBaseName
public String getBaseName()
- Specified by:
getBaseNamein interfaceContext- Returns:
- the base name to use for WARs, directories or context.xml files for this context.
-
setFireRequestListenersOnForwards
public void setFireRequestListenersOnForwards(boolean enable)
Description copied from interface:ContextConfigure whether or not requests listeners will be fired on forwards for this Context.- Specified by:
setFireRequestListenersOnForwardsin interfaceContext- Parameters:
enable-trueto fire request listeners when forwarding
-
getFireRequestListenersOnForwards
public boolean getFireRequestListenersOnForwards()
- Specified by:
getFireRequestListenersOnForwardsin interfaceContext- Returns:
- whether or not requests listeners will be fired on forwards for this Context.
-
setPreemptiveAuthentication
public void setPreemptiveAuthentication(boolean enable)
Description copied from interface:ContextConfigures if a user presents authentication credentials, whether the context will process them when the request is for a non-protected resource.- Specified by:
setPreemptiveAuthenticationin interfaceContext- Parameters:
enable-trueto perform authentication even outside security constraints
-
getPreemptiveAuthentication
public boolean getPreemptiveAuthentication()
- Specified by:
getPreemptiveAuthenticationin interfaceContext- Returns:
- if a user presents authentication credentials, will the context will process them when the request is for a non-protected resource.
-
setSendRedirectBody
public void setSendRedirectBody(boolean enable)
Description copied from interface:ContextConfigures if a response body is included when a redirect response is sent to the client.- Specified by:
setSendRedirectBodyin interfaceContext- Parameters:
enable-trueto send a response body for redirects
-
getSendRedirectBody
public boolean getSendRedirectBody()
- Specified by:
getSendRedirectBodyin interfaceContext- Returns:
- if the context is configured to include a response body as part of a redirect response.
-
addValve
public void addValve(Valve valve)
-
getCatalinaBase
public File getCatalinaBase()
Description copied from interface:ContainerObtain the location of CATALINA_BASE.- Specified by:
getCatalinaBasein interfaceContainer- Returns:
- The location of CATALINA_BASE.
-
getCatalinaHome
public File getCatalinaHome()
Description copied from interface:ContainerObtain the location of CATALINA_HOME.- Specified by:
getCatalinaHomein interfaceContainer- Returns:
- The location of CATALINA_HOME.
-
setAddWebinfClassesResources
public void setAddWebinfClassesResources(boolean addWebinfClassesResources)
Description copied from interface:ContextSets the flag that indicates if /WEB-INF/classes should be treated like an exploded JAR and JAR resources made available as if they were in a JAR.- Specified by:
setAddWebinfClassesResourcesin interfaceContext- Parameters:
addWebinfClassesResources- The new value for the flag
-
getAddWebinfClassesResources
public boolean getAddWebinfClassesResources()
- Specified by:
getAddWebinfClassesResourcesin interfaceContext- Returns:
- the flag that indicates if /WEB-INF/classes should be treated like an exploded JAR and JAR resources made available as if they were in a JAR.
-
addPostConstructMethod
public void addPostConstructMethod(String clazz, String method)
Description copied from interface:ContextAdd a post construct method definition for the given class, if there is an existing definition for the specified class - IllegalArgumentException will be thrown.- Specified by:
addPostConstructMethodin interfaceContext- Parameters:
clazz- Fully qualified class namemethod- Post construct method name
-
addPreDestroyMethod
public void addPreDestroyMethod(String clazz, String method)
Description copied from interface:ContextAdd a pre destroy method definition for the given class, if there is an existing definition for the specified class - IllegalArgumentException will be thrown.- Specified by:
addPreDestroyMethodin interfaceContext- Parameters:
clazz- Fully qualified class namemethod- Post construct method name
-
removePostConstructMethod
public void removePostConstructMethod(String clazz)
Description copied from interface:ContextRemoves the post construct method definition for the given class, if it exists; otherwise, no action is taken.- Specified by:
removePostConstructMethodin interfaceContext- Parameters:
clazz- Fully qualified class name
-
removePreDestroyMethod
public void removePreDestroyMethod(String clazz)
Description copied from interface:ContextRemoves the pre destroy method definition for the given class, if it exists; otherwise, no action is taken.- Specified by:
removePreDestroyMethodin interfaceContext- Parameters:
clazz- Fully qualified class name
-
findPostConstructMethod
public String findPostConstructMethod(String clazz)
Description copied from interface:ContextReturns the method name that is specified as post construct method for the given class, if it exists; otherwiseNULLwill be returned.- Specified by:
findPostConstructMethodin interfaceContext- Parameters:
clazz- Fully qualified class name- Returns:
- the method name that is specified as post construct method for
the given class, if it exists; otherwise
NULLwill be returned.
-
findPreDestroyMethod
public String findPreDestroyMethod(String clazz)
Description copied from interface:ContextReturns the method name that is specified as pre destroy method for the given class, if it exists; otherwiseNULLwill be returned.- Specified by:
findPreDestroyMethodin interfaceContext- Parameters:
clazz- Fully qualified class name- Returns:
- the method name that is specified as pre destroy method for the
given class, if it exists; otherwise
NULLwill be returned.
-
findPostConstructMethods
public Map<String,String> findPostConstructMethods()
Description copied from interface:ContextReturns a map with keys - fully qualified class names of the classes that have post construct methods and the values are the corresponding method names. If there are no such classes an empty map will be returned.- Specified by:
findPostConstructMethodsin interfaceContext- Returns:
- a map with keys - fully qualified class names of the classes that have post construct methods and the values are the corresponding method names.
-
findPreDestroyMethods
public Map<String,String> findPreDestroyMethods()
Description copied from interface:ContextReturns a map with keys - fully qualified class names of the classes that have pre destroy methods and the values are the corresponding method names. If there are no such classes an empty map will be returned.- Specified by:
findPreDestroyMethodsin interfaceContext- Returns:
- a map with keys - fully qualified class names of the classes that have pre destroy methods and the values are the corresponding method names.
-
getInstanceManager
public InstanceManager getInstanceManager()
- Specified by:
getInstanceManagerin interfaceContext- Returns:
- the instance manager associated with this context.
-
setInstanceManager
public void setInstanceManager(InstanceManager instanceManager)
Description copied from interface:ContextSet the instance manager associated with this context.- Specified by:
setInstanceManagerin interfaceContext- Parameters:
instanceManager- the new instance manager instance
-
setContainerSciFilter
public void setContainerSciFilter(String containerSciFilter)
Description copied from interface:ContextSets the regular expression that specifies which container provided SCIs should be filtered out and not used for this context. Matching usesMatcher.find()so the regular expression only has to match a sub-string of the fully qualified class name of the container provided SCI for it to be filtered out.- Specified by:
setContainerSciFilterin interfaceContext- Parameters:
containerSciFilter- The regular expression against which the fully qualified class name of each container provided SCI should be checked
-
getContainerSciFilter
public String getContainerSciFilter()
Description copied from interface:ContextObtains the regular expression that specifies which container provided SCIs should be filtered out and not used for this context. Matching usesMatcher.find()so the regular expression only has to match a sub-string of the fully qualified class name of the container provided SCI for it to be filtered out.- Specified by:
getContainerSciFilterin interfaceContext- Returns:
- The regular expression against which the fully qualified class name of each container provided SCI will be checked
-
getThreadBindingListener
public ThreadBindingListener getThreadBindingListener()
- Specified by:
getThreadBindingListenerin interfaceContext- Returns:
- the associated ThreadBindingListener.
-
setThreadBindingListener
public void setThreadBindingListener(ThreadBindingListener threadBindingListener)
Description copied from interface:ContextGet the associated ThreadBindingListener.- Specified by:
setThreadBindingListenerin interfaceContext- Parameters:
threadBindingListener- Set the listener that will receive notifications when entering and exiting the application scope
-
bind
public ClassLoader bind(boolean usePrivilegedAction, ClassLoader originalClassLoader)
Description copied from interface:ContextBindChange the current thread context class loader to the web application class loader. If no web application class loader is defined, or if the current thread is already using the web application class loader then no change will be made. If the class loader is changed and aThreadBindingListeneris configured thenThreadBindingListener.bind()will be called after the change has been made.- Specified by:
bindin interfaceContextBind- Parameters:
usePrivilegedAction- Should aPrivilegedActionbe used when obtaining the current thread context class loader and setting the new one?originalClassLoader- The current class loader if known to save this method having to look it up- Returns:
- If the class loader has been changed by the method it will return the thread context class loader in use when the method was called. If no change was made then this method returns null.
-
unbind
public void unbind(boolean usePrivilegedAction, ClassLoader originalClassLoader)Description copied from interface:ContextBindRestore the current thread context class loader to the original class loader in used beforeContextBind.bind(boolean, ClassLoader)was called. If no original class loader is passed to this method then no change will be made. If the class loader is changed and aThreadBindingListeneris configured thenThreadBindingListener.unbind()will be called before the change is made.- Specified by:
unbindin interfaceContextBind- Parameters:
usePrivilegedAction- Should aPrivilegedActionbe used when setting the current thread context class loader?originalClassLoader- The class loader to restore as the thread context class loader
-
getNamingToken
public Object getNamingToken()
- Specified by:
getNamingTokenin interfaceContext- Returns:
- the token necessary for operations on the associated JNDI naming context.
-
setCookieProcessor
public void setCookieProcessor(CookieProcessor cookieProcessor)
Description copied from interface:ContextSets theCookieProcessorthat will be used to process cookies for this Context.- Specified by:
setCookieProcessorin interfaceContext- Parameters:
cookieProcessor- The new cookie processor
-
getCookieProcessor
public CookieProcessor getCookieProcessor()
- Specified by:
getCookieProcessorin interfaceContext- Returns:
- the
CookieProcessorthat will be used to process cookies for this Context.
-
setValidateClientProvidedNewSessionId
public void setValidateClientProvidedNewSessionId(boolean validateClientProvidedNewSessionId)
Description copied from interface:ContextWhen a client provides the ID for a new session, should that ID be validated? The only use case for using a client provided session ID is to have a common session ID across multiple web applications. Therefore, any client provided session ID should already exist in another web application. If this check is enabled, the client provided session ID will only be used if the session ID exists in at least one other web application for the current host. Note that the following additional tests are always applied, irrespective of this setting:- The session ID is provided by a cookie
- The session cookie has a path of
/
- Specified by:
setValidateClientProvidedNewSessionIdin interfaceContext- Parameters:
validateClientProvidedNewSessionId-trueif validation should be applied
-
getValidateClientProvidedNewSessionId
public boolean getValidateClientProvidedNewSessionId()
Description copied from interface:ContextWill client provided session IDs be validated (seeContext.setValidateClientProvidedNewSessionId(boolean)) before use?- Specified by:
getValidateClientProvidedNewSessionIdin interfaceContext- Returns:
trueif validation will be applied. Otherwise,false
-
setMapperContextRootRedirectEnabled
public void setMapperContextRootRedirectEnabled(boolean mapperContextRootRedirectEnabled)
Description copied from interface:ContextIf enabled, requests for a web application context root will be redirected (adding a trailing slash) by the Mapper. This is more efficient but has the side effect of confirming that the context path is valid.- Specified by:
setMapperContextRootRedirectEnabledin interfaceContext- Parameters:
mapperContextRootRedirectEnabled- Should the redirects be enabled?
-
getMapperContextRootRedirectEnabled
public boolean getMapperContextRootRedirectEnabled()
Description copied from interface:ContextDetermines if requests for a web application context root will be redirected (adding a trailing slash) by the Mapper. This is more efficient but has the side effect of confirming that the context path is valid.- Specified by:
getMapperContextRootRedirectEnabledin interfaceContext- Returns:
trueif the Mapper level redirect is enabled for this Context.
-
setMapperDirectoryRedirectEnabled
public void setMapperDirectoryRedirectEnabled(boolean mapperDirectoryRedirectEnabled)
Description copied from interface:ContextIf enabled, requests for a directory will be redirected (adding a trailing slash) by the Mapper. This is more efficient but has the side effect of confirming that the directory is valid.- Specified by:
setMapperDirectoryRedirectEnabledin interfaceContext- Parameters:
mapperDirectoryRedirectEnabled- Should the redirects be enabled?
-
getMapperDirectoryRedirectEnabled
public boolean getMapperDirectoryRedirectEnabled()
Description copied from interface:ContextDetermines if requests for a directory will be redirected (adding a trailing slash) by the Mapper. This is more efficient but has the side effect of confirming that the directory is valid.- Specified by:
getMapperDirectoryRedirectEnabledin interfaceContext- Returns:
trueif the Mapper level redirect is enabled for this Context.
-
setUseRelativeRedirects
public void setUseRelativeRedirects(boolean useRelativeRedirects)
Description copied from interface:ContextControls whether HTTP 1.1 and later location headers generated by a call toHttpServletResponse.sendRedirect(String)will use relative or absolute redirects.Relative redirects are more efficient but may not work with reverse proxies that change the context path. It should be noted that it is not recommended to use a reverse proxy to change the context path because of the multiple issues it creates.
Absolute redirects should work with reverse proxies that change the context path but may cause issues with the
RemoteIpFilterif the filter is changing the scheme and/or port.- Specified by:
setUseRelativeRedirectsin interfaceContext- Parameters:
useRelativeRedirects-trueto use relative redirects andfalseto use absolute redirects
-
getUseRelativeRedirects
public boolean getUseRelativeRedirects()
Description copied from interface:ContextWill HTTP 1.1 and later location headers generated by a call toHttpServletResponse.sendRedirect(String)use relative or absolute redirects.- Specified by:
getUseRelativeRedirectsin interfaceContext- Returns:
trueif relative redirects will be usedfalseif absolute redirects are used.- See Also:
Context.setUseRelativeRedirects(boolean)
-
setDispatchersUseEncodedPaths
public void setDispatchersUseEncodedPaths(boolean dispatchersUseEncodedPaths)
Description copied from interface:ContextAre paths used in calls to obtain a request dispatcher expected to be encoded? This affects both how Tomcat handles calls to obtain a request dispatcher as well as how Tomcat generates paths used to obtain request dispatchers internally.- Specified by:
setDispatchersUseEncodedPathsin interfaceContext- Parameters:
dispatchersUseEncodedPaths-trueto use encoded paths, otherwisefalse
-
getDispatchersUseEncodedPaths
public boolean getDispatchersUseEncodedPaths()
Description copied from interface:ContextAre paths used in calls to obtain a request dispatcher expected to be encoded? This applys to both how Tomcat handles calls to obtain a request dispatcher as well as how Tomcat generates paths used to obtain request dispatchers internally.- Specified by:
getDispatchersUseEncodedPathsin interfaceContext- Returns:
trueif encoded paths will be used, otherwisefalse
-
setRequestCharacterEncoding
public void setRequestCharacterEncoding(String encoding)
Description copied from interface:ContextSet the default request body encoding for this web application.- Specified by:
setRequestCharacterEncodingin interfaceContext- Parameters:
encoding- The default encoding
-
getRequestCharacterEncoding
public String getRequestCharacterEncoding()
Description copied from interface:ContextGet the default request body encoding for this web application.- Specified by:
getRequestCharacterEncodingin interfaceContext- Returns:
- The default request body encoding
-
setResponseCharacterEncoding
public void setResponseCharacterEncoding(String encoding)
Description copied from interface:ContextSet the default response body encoding for this web application.- Specified by:
setResponseCharacterEncodingin interfaceContext- Parameters:
encoding- The default encoding
-
getResponseCharacterEncoding
public String getResponseCharacterEncoding()
Description copied from interface:ContextGet the default response body encoding for this web application.- Specified by:
getResponseCharacterEncodingin interfaceContext- Returns:
- The default response body encoding
-
setAllowMultipleLeadingForwardSlashInPath
public void setAllowMultipleLeadingForwardSlashInPath(boolean allowMultipleLeadingForwardSlashInPath)
Description copied from interface:ContextConfigure if, when returning a context path fromHttpServletRequest.getContextPath(), the return value is allowed to contain multiple leading '/' characters.- Specified by:
setAllowMultipleLeadingForwardSlashInPathin interfaceContext- Parameters:
allowMultipleLeadingForwardSlashInPath- The new value for the flag
-
getAllowMultipleLeadingForwardSlashInPath
public boolean getAllowMultipleLeadingForwardSlashInPath()
Description copied from interface:ContextWhen returning a context path fromHttpServletRequest.getContextPath(), is it allowed to contain multiple leading '/' characters?- Specified by:
getAllowMultipleLeadingForwardSlashInPathin interfaceContext- Returns:
trueif multiple leading '/' characters are allowed, otherwisefalse
-
incrementInProgressAsyncCount
public void incrementInProgressAsyncCount()
- Specified by:
incrementInProgressAsyncCountin interfaceContext
-
decrementInProgressAsyncCount
public void decrementInProgressAsyncCount()
- Specified by:
decrementInProgressAsyncCountin interfaceContext
-
setCreateUploadTargets
public void setCreateUploadTargets(boolean createUploadTargets)
Description copied from interface:ContextConfigure whether Tomcat will attempt to create an upload target used by this web application if it does not exist when the web application attempts to use it.- Specified by:
setCreateUploadTargetsin interfaceContext- Parameters:
createUploadTargets-trueif Tomcat should attempt to create the upload target, otherwisefalse
-
getCreateUploadTargets
public boolean getCreateUploadTargets()
Description copied from interface:ContextWill Tomcat attempt to create an upload target used by this web application if it does not exist when the web application attempts to use it?- Specified by:
getCreateUploadTargetsin interfaceContext- Returns:
trueif Tomcat will attempt to create an upload target otherwisefalse
-
getAlwaysAccessSession
public boolean getAlwaysAccessSession()
Description copied from interface:ContextIf this istrue, every request that is associated with a session will cause the session's last accessed time to be updated regardless of whether or not the request explicitly accesses the session. Iforg.apache.catalina.STRICT_SERVLET_COMPLIANCEis set totrue, the default of this setting will betrue, else the default value will befalse.- Specified by:
getAlwaysAccessSessionin interfaceContext- Returns:
- the flag value
-
setAlwaysAccessSession
public void setAlwaysAccessSession(boolean alwaysAccessSession)
Description copied from interface:ContextSet the session access behavior.- Specified by:
setAlwaysAccessSessionin interfaceContext- Parameters:
alwaysAccessSession- the new flag value
-
getContextGetResourceRequiresSlash
public boolean getContextGetResourceRequiresSlash()
Description copied from interface:ContextIf this istruethen the path passed toServletContext.getResource()orServletContext.getResourceAsStream()must start with "/". Iffalse, code likegetResource("myfolder/myresource.txt")will work as Tomcat will prepend "/" to the provided path. Iforg.apache.catalina.STRICT_SERVLET_COMPLIANCEis set totrue, the default of this setting will betrue, else the default value will befalse.- Specified by:
getContextGetResourceRequiresSlashin interfaceContext- Returns:
- the flag value
-
setContextGetResourceRequiresSlash
public void setContextGetResourceRequiresSlash(boolean contextGetResourceRequiresSlash)
Description copied from interface:ContextAllow usingServletContext.getResource()orServletContext.getResourceAsStream()without a leading "/".- Specified by:
setContextGetResourceRequiresSlashin interfaceContext- Parameters:
contextGetResourceRequiresSlash- the new flag value
-
getDispatcherWrapsSameObject
public boolean getDispatcherWrapsSameObject()
Description copied from interface:ContextIf this istruethen any wrapped request or response object passed to an application dispatcher will be checked to ensure that it has wrapped the original request or response. Iforg.apache.catalina.STRICT_SERVLET_COMPLIANCEis set totrue, the default of this setting will betrue, else the default value will befalse.- Specified by:
getDispatcherWrapsSameObjectin interfaceContext- Returns:
- the flag value
-
setDispatcherWrapsSameObject
public void setDispatcherWrapsSameObject(boolean dispatcherWrapsSameObject)
Description copied from interface:ContextAllow disabling the object wrap check in the request dispatcher.- Specified by:
setDispatcherWrapsSameObjectin interfaceContext- Parameters:
dispatcherWrapsSameObject- the new flag value
-
getParallelAnnotationScanning
public boolean getParallelAnnotationScanning()
- Specified by:
getParallelAnnotationScanningin interfaceContext- Returns:
- the value of the parallel annotation scanning flag. If true, it will dispatch scanning to the utility executor.
-
setParallelAnnotationScanning
public void setParallelAnnotationScanning(boolean parallelAnnotationScanning)
Description copied from interface:ContextSet the parallel annotation scanning value.- Specified by:
setParallelAnnotationScanningin interfaceContext- Parameters:
parallelAnnotationScanning- new parallel annotation scanning flag
-
getUseBloomFilterForArchives
public boolean getUseBloomFilterForArchives()
- Specified by:
getUseBloomFilterForArchivesin interfaceContext- Returns:
trueif the resources archive lookup will use a bloom filter.
-
setUseBloomFilterForArchives
public void setUseBloomFilterForArchives(boolean useBloomFilterForArchives)
Description copied from interface:ContextSet bloom filter flag value.- Specified by:
setUseBloomFilterForArchivesin interfaceContext- Parameters:
useBloomFilterForArchives- The new fast class path scan flag
-
-