Package org.apache.catalina.core
Class StandardWrapper
java.lang.Object
org.apache.catalina.util.LifecycleBase
org.apache.catalina.util.LifecycleMBeanBase
org.apache.catalina.core.ContainerBase
org.apache.catalina.core.StandardWrapper
- All Implemented Interfaces:
MBeanRegistration
,NotificationBroadcaster
,NotificationEmitter
,ServletConfig
,Container
,JmxEnabled
,Lifecycle
,Wrapper
- Direct Known Subclasses:
Tomcat.ExistingStandardWrapper
public class StandardWrapper
extends ContainerBase
implements ServletConfig, Wrapper, NotificationEmitter
Standard implementation of the Wrapper interface that represents an individual servlet definition. No child
Containers are allowed, and the parent Container must be a Context.
- Author:
- Craig R. McClanahan, Remy Maucherat
-
Nested Class Summary
Nested classes/interfaces inherited from class org.apache.catalina.core.ContainerBase
ContainerBase.ContainerBackgroundProcessor, ContainerBase.PrivilegedAddChild
Nested classes/interfaces inherited from interface org.apache.catalina.Lifecycle
Lifecycle.SingleUse
-
Field Summary
Modifier and TypeFieldDescriptionprotected boolean
Async supportprotected long
The date and time at which this servlet will become available (in milliseconds since the epoch), or zero if the servlet is available.protected final NotificationBroadcasterSupport
The broadcaster that sends j2ee notifications.protected int
protected static Class<?>[]
Static class array used when the SecurityManager is turned on andServlet.init
is invoked.protected final AtomicInteger
The count of allocations that are currently active (even if they are for the same instance, as will be true on a non-STM servlet).protected static final String[]
protected boolean
Enabledprotected final StandardWrapperFacade
The facade associated with this wrapper.protected Servlet
The (single) possibly uninitialized instance of this servlet.protected boolean
Flag that indicates if this instance has been initializedDeprecated.This will be removed in Tomcat 10.1 onwards.protected boolean
True if this StandardWrapper is for the JspServletprotected ObjectName
The ObjectName of the JSP monitoring mbeanprotected int
The load-on-startup order value (negative value means load on first call) for this servlet.protected long
Mappings associated with the wrapper.protected int
Deprecated.This will be removed in Tomcat 10.1 onwards.protected MultipartConfigElement
Multipart configprotected int
Deprecated.This will be removed in Tomcat 10.1 onwards.protected MBeanNotificationInfo[]
The initialization parameters for this servlet, keyed by parameter name.The security role references for this servlet, keyed by role name used in the servlet.protected String
The run-as identity for this servlet.protected long
The notification sequence number.protected String
The fully qualified servlet class name for this servlet.protected boolean
Deprecated.This will be removed in Tomcat 10.1 onwards.protected boolean
Should we swallow System.outprotected org.apache.catalina.core.StandardWrapperValve
protected long
Wait time for servlet unload in ms.protected boolean
Are we unloading our servlet instance at the moment?Fields inherited from class org.apache.catalina.core.ContainerBase
accessLog, backgroundProcessorDelay, children, cluster, listeners, logger, logName, name, parent, parentClassLoader, pipeline, sm, startChildren, startStopExecutor, support
Fields inherited from class org.apache.catalina.util.LifecycleMBeanBase
mserver
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.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
Fields inherited from interface org.apache.catalina.Wrapper
ADD_MAPPING_EVENT, REMOVE_MAPPING_EVENT
-
Constructor Summary
ConstructorDescriptionCreate a new StandardWrapper component with the default basic Valve. -
Method Summary
Modifier and TypeMethodDescriptionvoid
Refuse to add a child Container, because Wrappers are the lowest level of the Container hierarchy.void
addInitParameter
(String name, String value) Add a new servlet initialization parameter for this servlet.void
addMapping
(String mapping) Add a mapping associated with the Wrapper.void
addNotificationListener
(NotificationListener listener, NotificationFilter filter, Object object) Add a JMX-NotificationListenervoid
addSecurityReference
(String name, String link) Add a new security role reference record to the set of records for this servlet.allocate()
Allocate an initialized instance of this Servlet that is ready to have itsservice()
method called.void
Execute a periodic task, such as reloading, etc.void
deallocate
(Servlet servlet) Return this previously allocated servlet to the pool of available instances.findInitParameter
(String name) Return the value for the specified initialization parameter name, if any; otherwise returnnull
.String[]
Return the names of all defined initialization parameters for this servlet.String[]
Return the mappings associated with this wrapper.findSecurityReference
(String name) Return the security role link for the specified security role reference name, if any; otherwise returnnull
.String[]
Return the set of security role reference names associated with this servlet, if any; otherwise return a zero-length array.protected Method[]
getAllDeclaredMethods
(Class<?> c) long
Return the available date/time for this servlet, in milliseconds since the epoch.int
int
int
getInitParameter
(String name) Returns aString
containing the value of the named initialization parameter, ornull
if the parameter does not exist.Returns the names of the servlet's initialization parameters as anEnumeration
ofString
objects, or an emptyEnumeration
if the servlet has no initialization parameters.int
long
int
Deprecated.This will be removed in Tomcat 10.1 onwards.long
long
Get JMX Broadcaster Infoprotected String
Allow sub-classes to specify the key properties component of theObjectName
that will be used to register this component.long
int
static Throwable
Extract the root cause from a servlet exception.getRunAs()
Returns a reference to theServletContext
in which the caller is executing.String[]
Gets the names of the methods supported by the underlying servlet.Returns the name of this servlet instance.void
Increment the error count used for monitoring.boolean
Does the associated Servlet support async processing?protected boolean
isContainerProvidedServlet
(String classname) Deprecated.Unused.boolean
Is the associated Servlet enabled?boolean
Is the Servlet overridable by a ServletContainerInitializer?Deprecated.This will be removed in Tomcat 10.1 onwards.boolean
void
load()
Load and initialize an instance of this servlet, if there is not already at least one initialized instance.Load and initialize an instance of this servlet, if there is not already at least one initialized instance.void
removeInitParameter
(String name) Remove the specified initialization parameter from this servlet.void
removeMapping
(String mapping) Remove a mapping associated with the wrapper.void
Remove a JMX-NotificationListenervoid
removeNotificationListener
(NotificationListener listener, NotificationFilter filter, Object object) Remove a JMX notificationListenervoid
Remove any security role reference for the specified role name.void
This method is no longer used.void
setAsyncSupported
(boolean asyncSupported) Set the async support for the associated Servlet.void
setAvailable
(long available) Set the available date/time for this servlet, in milliseconds since the epoch.void
setEnabled
(boolean enabled) Sets the enabled attribute for the associated servlet.void
setLoadOnStartup
(int value) Set the load-on-startup order value (negative value means load on first call).void
setLoadOnStartupString
(String value) Set the load-on-startup order value from a (possibly null) string.void
setMaxInstances
(int maxInstances) Deprecated.This will be removed in Tomcat 10.1 onwards.void
setMultipartConfigElement
(MultipartConfigElement multipartConfigElement) Set the multi-part configuration for the associated Servlet.void
setOverridable
(boolean overridable) Sets the overridable attribute for this Servlet.void
Set the parent Container of this Wrapper, but only if it is a Context.void
Set the run-as identity for this servlet.void
setServlet
(Servlet servlet) Set the associated servlet instance.void
setServletClass
(String servletClass) Set the fully qualified servlet class name for this servlet.void
setServletName
(String name) Set the name of this servlet.void
setServletSecurityAnnotationScanRequired
(boolean b) This method is no longer used.protected void
Start this component and implement the requirements ofLifecycleBase.startInternal()
.protected void
Stop this component and implement the requirements ofLifecycleBase.stopInternal()
.void
unavailable
(UnavailableException unavailable) Process an UnavailableException, marking this servlet as unavailable for the specified amount of time.void
unload()
Unload all initialized instances of this servlet, after calling thedestroy()
method for each instance.Methods inherited from class org.apache.catalina.core.ContainerBase
addContainerListener, addPropertyChangeListener, addValve, destroyInternal, findChild, findChildren, findContainerListeners, fireContainerEvent, getAccessLog, getBackgroundProcessorDelay, getCatalinaBase, getCatalinaHome, getChildren, getCluster, getClusterInternal, getDomainInternal, getLogger, getLogName, getMBeanKeyProperties, getName, getParent, getParentClassLoader, getPipeline, getRealm, getRealmInternal, getStartChildren, getStartStopThreads, initInternal, logAccess, removeChild, removeContainerListener, removePropertyChangeListener, setBackgroundProcessorDelay, setCluster, setName, setParentClassLoader, setRealm, setStartChildren, setStartStopThreads, threadStart, threadStop, toString
Methods inherited from class org.apache.catalina.util.LifecycleMBeanBase
getDomain, getObjectName, postDeregister, postRegister, preDeregister, preRegister, register, setDomain, 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
addContainerListener, addPropertyChangeListener, findChild, findChildren, findContainerListeners, fireContainerEvent, getAccessLog, getBackgroundProcessorDelay, getCatalinaBase, getCatalinaHome, getCluster, getDomain, getLogger, getLogName, getMBeanKeyProperties, getName, getObjectName, getParent, getParentClassLoader, getPipeline, getRealm, getStartStopThreads, logAccess, removeChild, removeContainerListener, removePropertyChangeListener, setBackgroundProcessorDelay, setCluster, setName, setParentClassLoader, setRealm, setStartStopThreads
Methods inherited from interface org.apache.catalina.Lifecycle
addLifecycleListener, destroy, findLifecycleListeners, getState, getStateName, init, removeLifecycleListener, start, stop
-
Field Details
-
DEFAULT_SERVLET_METHODS
-
available
protected long availableThe date and time at which this servlet will become available (in milliseconds since the epoch), or zero if the servlet is available. If this value equals Long.MAX_VALUE, the unavailability of this servlet is considered permanent. -
broadcaster
The broadcaster that sends j2ee notifications. -
countAllocated
The count of allocations that are currently active (even if they are for the same instance, as will be true on a non-STM servlet). -
facade
The facade associated with this wrapper. -
instance
The (single) possibly uninitialized instance of this servlet. -
instanceInitialized
protected volatile boolean instanceInitializedFlag that indicates if this instance has been initialized -
loadOnStartup
protected int loadOnStartupThe load-on-startup order value (negative value means load on first call) for this servlet. -
mappings
Mappings associated with the wrapper. -
parameters
The initialization parameters for this servlet, keyed by parameter name. -
references
The security role references for this servlet, keyed by role name used in the servlet. The corresponding value is the role name of the web application itself. -
runAs
The run-as identity for this servlet. -
sequenceNumber
protected long sequenceNumberThe notification sequence number. -
servletClass
The fully qualified servlet class name for this servlet. -
singleThreadModel
Deprecated.This will be removed in Tomcat 10.1 onwards.Does this servlet implement the SingleThreadModel interface? -
unloading
protected volatile boolean unloadingAre we unloading our servlet instance at the moment? -
maxInstances
Deprecated.This will be removed in Tomcat 10.1 onwards.Maximum number of STM instances. -
nInstances
Deprecated.This will be removed in Tomcat 10.1 onwards.Number of instances currently loaded for a STM servlet. -
instancePool
Deprecated.This will be removed in Tomcat 10.1 onwards.Stack containing the STM instances. -
unloadDelay
protected long unloadDelayWait time for servlet unload in ms. -
isJspServlet
protected boolean isJspServletTrue if this StandardWrapper is for the JspServlet -
jspMonitorON
The ObjectName of the JSP monitoring mbean -
swallowOutput
protected boolean swallowOutputShould we swallow System.out -
swValve
protected org.apache.catalina.core.StandardWrapperValve swValve -
loadTime
protected long loadTime -
classLoadTime
protected int classLoadTime -
multipartConfigElement
Multipart config -
asyncSupported
protected boolean asyncSupportedAsync support -
enabled
protected boolean enabledEnabled -
classType
Static class array used when the SecurityManager is turned on andServlet.init
is invoked. -
notificationInfo
-
-
Constructor Details
-
StandardWrapper
public StandardWrapper()Create a new StandardWrapper component with the default basic Valve.
-
-
Method Details
-
isOverridable
public boolean isOverridable()Description copied from interface:Wrapper
Is the Servlet overridable by a ServletContainerInitializer?- Specified by:
isOverridable
in interfaceWrapper
- Returns:
true
if the Servlet can be overridden in a ServletContainerInitializer
-
setOverridable
public void setOverridable(boolean overridable) Description copied from interface:Wrapper
Sets the overridable attribute for this Servlet.- Specified by:
setOverridable
in interfaceWrapper
- Parameters:
overridable
- the new value
-
getAvailable
public long getAvailable()Return the available date/time for this servlet, in milliseconds since the epoch. If this date/time is Long.MAX_VALUE, it is considered to mean that unavailability is permanent and any request for this servlet will return an SC_NOT_FOUND error. If this date/time is in the future, any request for this servlet will return an SC_SERVICE_UNAVAILABLE error. If it is zero, the servlet is currently available.- Specified by:
getAvailable
in interfaceWrapper
- Returns:
- the available date/time for this servlet, in milliseconds since the epoch. If this date/time is in the future, any request for this servlet will return an SC_SERVICE_UNAVAILABLE error. If it is zero, the servlet is currently available. A value equal to Long.MAX_VALUE is considered to mean that unavailability is permanent.
-
setAvailable
public void setAvailable(long available) Set the available date/time for this servlet, in milliseconds since the epoch. If this date/time is Long.MAX_VALUE, it is considered to mean that unavailability is permanent and any request for this servlet will return an SC_NOT_FOUND error. If this date/time is in the future, any request for this servlet will return an SC_SERVICE_UNAVAILABLE error.- Specified by:
setAvailable
in interfaceWrapper
- Parameters:
available
- The new available date/time
-
getCountAllocated
public int getCountAllocated()- Returns:
- the number of active allocations of this servlet, even if they are all for the same instance (as will be
true for servlets that do not implement
SingleThreadModel
.
-
getLoadOnStartup
public int getLoadOnStartup()- Specified by:
getLoadOnStartup
in interfaceWrapper
- Returns:
- the load-on-startup order value (negative value means load on first call).
-
setLoadOnStartup
public void setLoadOnStartup(int value) Set the load-on-startup order value (negative value means load on first call).- Specified by:
setLoadOnStartup
in interfaceWrapper
- Parameters:
value
- New load-on-startup value
-
setLoadOnStartupString
Set the load-on-startup order value from a (possibly null) string. Per the specification, any missing or non-numeric value is converted to a zero, so that this servlet will still be loaded at startup time, but in an arbitrary order.- Parameters:
value
- New load-on-startup value
-
getLoadOnStartupString
- Returns:
- the load-on-startup value that was parsed
-
getMaxInstances
Deprecated.This will be removed in Tomcat 10.1 onwards.- Returns:
- maximum number of instances that will be allocated when a single thread model servlet is used.
-
setMaxInstances
Deprecated.This will be removed in Tomcat 10.1 onwards.Set the maximum number of instances that will be allocated when a single thread model servlet is used.- Parameters:
maxInstances
- New value of maxInstances
-
setParent
Set the parent Container of this Wrapper, but only if it is a Context.- Specified by:
setParent
in interfaceContainer
- Overrides:
setParent
in classContainerBase
- Parameters:
container
- Proposed parent Container
-
getRunAs
-
setRunAs
Set the run-as identity for this servlet. -
getServletClass
- Specified by:
getServletClass
in interfaceWrapper
- Returns:
- the fully qualified servlet class name for this servlet.
-
setServletClass
Set the fully qualified servlet class name for this servlet.- Specified by:
setServletClass
in interfaceWrapper
- Parameters:
servletClass
- Servlet class name
-
setServletName
Set the name of this servlet. This is an alias for the normalContainer.setName()
method, and complements thegetServletName()
method required by theServletConfig
interface.- Parameters:
name
- The new name of this servlet
-
isSingleThreadModel
Deprecated.This will be removed in Tomcat 10.1 onwards.Does the servlet class represented by this component implement theSingleThreadModel
interface? This can only be determined once the class is loaded. Calling this method will not trigger loading the class since that may cause the application to behave unexpectedly.- Returns:
null
if the class has not been loaded, otherwisetrue
if the servlet does implementSingleThreadModel
andfalse
if it does not.
-
getServletMethods
Description copied from interface:Wrapper
Gets the names of the methods supported by the underlying servlet. This is the same set of methods included in the Allow response header in response to an OPTIONS request method processed by the underlying servlet.- Specified by:
getServletMethods
in interfaceWrapper
- Returns:
- Array of names of the methods supported by the underlying servlet
- Throws:
ServletException
- If the target servlet cannot be loaded
-
getServlet
- Specified by:
getServlet
in interfaceWrapper
- Returns:
- the associated servlet instance.
-
setServlet
Set the associated servlet instance.- Specified by:
setServlet
in interfaceWrapper
- Parameters:
servlet
- The associated Servlet
-
setServletSecurityAnnotationScanRequired
public void setServletSecurityAnnotationScanRequired(boolean b) Description copied from interface:Wrapper
This method is no longer used. All implementations should be NO-OPs.- Specified by:
setServletSecurityAnnotationScanRequired
in interfaceWrapper
- Parameters:
b
- Unused.
-
backgroundProcess
public void backgroundProcess()Execute 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:
backgroundProcess
in interfaceContainer
- Overrides:
backgroundProcess
in classContainerBase
-
getRootCause
Extract the root cause from a servlet exception.- Parameters:
e
- The servlet exception- Returns:
- the root cause of the Servlet exception
-
addChild
Refuse to add a child Container, because Wrappers are the lowest level of the Container hierarchy.- Specified by:
addChild
in interfaceContainer
- Overrides:
addChild
in classContainerBase
- Parameters:
child
- Child container to be added
-
addInitParameter
Add a new servlet initialization parameter for this servlet.- Specified by:
addInitParameter
in interfaceWrapper
- Parameters:
name
- Name of this initialization parameter to addvalue
- Value of this initialization parameter to add
-
addMapping
Add a mapping associated with the Wrapper.- Specified by:
addMapping
in interfaceWrapper
- Parameters:
mapping
- The new wrapper mapping
-
addSecurityReference
Add a new security role reference record to the set of records for this servlet.- Specified by:
addSecurityReference
in interfaceWrapper
- Parameters:
name
- Role name used within this servletlink
- Role name used within the web application
-
allocate
Allocate an initialized instance of this Servlet that is ready to have itsservice()
method called. If the servlet class does not implementSingleThreadModel
, the (only) initialized instance may be returned immediately. If the servlet class implementsSingleThreadModel
, the Wrapper implementation must ensure that this instance is not allocated again until it is deallocated by a call todeallocate()
.- Specified by:
allocate
in interfaceWrapper
- Returns:
- a new Servlet instance
- Throws:
ServletException
- if the servlet init() method threw an exceptionServletException
- if a loading error occurs
-
deallocate
Return this previously allocated servlet to the pool of available instances. If this servlet class does not implement SingleThreadModel, no action is actually required.- Specified by:
deallocate
in interfaceWrapper
- Parameters:
servlet
- The servlet to be returned- Throws:
ServletException
- if a deallocation error occurs
-
findInitParameter
Return the value for the specified initialization parameter name, if any; otherwise returnnull
.- Specified by:
findInitParameter
in interfaceWrapper
- Parameters:
name
- Name of the requested initialization parameter- Returns:
- the value for the specified initialization parameter name,
if any; otherwise return
null
.
-
findInitParameters
Return the names of all defined initialization parameters for this servlet.- Specified by:
findInitParameters
in interfaceWrapper
- Returns:
- the names of all defined initialization parameters for this servlet.
-
findMappings
Return the mappings associated with this wrapper.- Specified by:
findMappings
in interfaceWrapper
- Returns:
- the mappings associated with this wrapper.
-
findSecurityReference
Return the security role link for the specified security role reference name, if any; otherwise returnnull
.- Specified by:
findSecurityReference
in interfaceWrapper
- Parameters:
name
- Security role reference used within this servlet- Returns:
- the security role link for the specified security role
reference name, if any; otherwise return
null
.
-
findSecurityReferences
Return the set of security role reference names associated with this servlet, if any; otherwise return a zero-length array.- Specified by:
findSecurityReferences
in interfaceWrapper
- Returns:
- the set of security role reference names associated with this servlet, if any; otherwise return a zero-length array.
-
load
Load and initialize an instance of this servlet, if there is not already at least one initialized instance. This can be used, for example, to load servlets that are marked in the deployment descriptor to be loaded at server startup time.IMPLEMENTATION NOTE: Servlets whose classnames begin with
org.apache.catalina.
(so-called "container" servlets) are loaded by the same classloader that loaded this class, rather than the classloader for the current web application. This gives such classes access to Catalina internals, which are prevented for classes loaded for web applications.- Specified by:
load
in interfaceWrapper
- Throws:
ServletException
- if the servlet init() method threw an exceptionServletException
- if some other loading problem occurs
-
loadServlet
Load and initialize an instance of this servlet, if there is not already at least one initialized instance. This can be used, for example, to load servlets that are marked in the deployment descriptor to be loaded at server startup time.- Returns:
- the loaded Servlet instance
- Throws:
ServletException
- for a Servlet load error
-
servletSecurityAnnotationScan
Description copied from interface:Wrapper
This method is no longer used. All implementations should be NO-OPs.- Specified by:
servletSecurityAnnotationScan
in interfaceWrapper
- Throws:
ServletException
- Never thrown
-
removeInitParameter
Remove the specified initialization parameter from this servlet.- Specified by:
removeInitParameter
in interfaceWrapper
- Parameters:
name
- Name of the initialization parameter to remove
-
removeMapping
Remove a mapping associated with the wrapper.- Specified by:
removeMapping
in interfaceWrapper
- Parameters:
mapping
- The pattern to remove
-
removeSecurityReference
Remove any security role reference for the specified role name.- Specified by:
removeSecurityReference
in interfaceWrapper
- Parameters:
name
- Security role used within this servlet to be removed
-
unload
Unload all initialized instances of this servlet, after calling thedestroy()
method for each instance. This can be used, for example, prior to shutting down the entire servlet engine, or prior to reloading all of the classes from the Loader associated with our Loader's repository.- Specified by:
unload
in interfaceWrapper
- Throws:
ServletException
- if an exception is thrown by the destroy() method
-
getInitParameter
Description copied from interface:javax.servlet.ServletConfig
Returns aString
containing the value of the named initialization parameter, ornull
if the parameter does not exist.- Specified by:
getInitParameter
in interfaceServletConfig
- Parameters:
name
- Name of the initialization parameter to retrieve- Returns:
- the initialization parameter value for the specified name, if any; otherwise return
null
.
-
getInitParameterNames
Description copied from interface:javax.servlet.ServletConfig
Returns the names of the servlet's initialization parameters as anEnumeration
ofString
objects, or an emptyEnumeration
if the servlet has no initialization parameters.- Specified by:
getInitParameterNames
in interfaceServletConfig
- Returns:
- the set of initialization parameter names defined for this servlet. If none are defined, an empty Enumeration is returned.
-
getServletContext
Description copied from interface:javax.servlet.ServletConfig
Returns a reference to theServletContext
in which the caller is executing.- Specified by:
getServletContext
in interfaceServletConfig
- Returns:
- the servlet context with which this servlet is associated.
- See Also:
-
getServletName
Description copied from interface:javax.servlet.ServletConfig
Returns the name of this servlet instance. The name may be provided via server administration, assigned in the web application deployment descriptor, or for an unregistered (and thus unnamed) servlet instance it will be the servlet's class name.- Specified by:
getServletName
in interfaceServletConfig
- Returns:
- the name of this servlet.
-
getProcessingTime
public long getProcessingTime() -
getMaxTime
public long getMaxTime() -
getMinTime
public long getMinTime() -
getRequestCount
public int getRequestCount() -
getErrorCount
public int getErrorCount() -
incrementErrorCount
public void incrementErrorCount()Increment the error count used for monitoring.- Specified by:
incrementErrorCount
in interfaceWrapper
-
getLoadTime
public long getLoadTime() -
getClassLoadTime
public int getClassLoadTime() -
getMultipartConfigElement
- Specified by:
getMultipartConfigElement
in interfaceWrapper
- Returns:
- the multi-part configuration for the associated Servlet. If no
multi-part configuration has been defined, then
null
will be returned.
-
setMultipartConfigElement
Description copied from interface:Wrapper
Set the multi-part configuration for the associated Servlet. To clear the multi-part configuration specifynull
as the new value.- Specified by:
setMultipartConfigElement
in interfaceWrapper
- Parameters:
multipartConfigElement
- The configuration associated with the Servlet
-
isAsyncSupported
public boolean isAsyncSupported()Description copied from interface:Wrapper
Does the associated Servlet support async processing? Defaults tofalse
.- Specified by:
isAsyncSupported
in interfaceWrapper
- Returns:
true
if the Servlet supports async
-
setAsyncSupported
public void setAsyncSupported(boolean asyncSupported) Description copied from interface:Wrapper
Set the async support for the associated Servlet.- Specified by:
setAsyncSupported
in interfaceWrapper
- Parameters:
asyncSupported
- the new value
-
isEnabled
public boolean isEnabled()Description copied from interface:Wrapper
Is the associated Servlet enabled? Defaults totrue
. -
setEnabled
public void setEnabled(boolean enabled) Description copied from interface:Wrapper
Sets the enabled attribute for the associated servlet.- Specified by:
setEnabled
in interfaceWrapper
- Parameters:
enabled
- the new value
-
isContainerProvidedServlet
Deprecated.Unused. Will be removed in Tomcat 9- Parameters:
classname
- Name of the class to be checked- Returns:
true
if the specified class name represents a container provided servlet class that should be loaded by the server class loader.
-
getAllDeclaredMethods
-
startInternal
Start this component and implement the requirements ofLifecycleBase.startInternal()
.- Overrides:
startInternal
in classContainerBase
- Throws:
LifecycleException
- if this component detects a fatal error that prevents this component from being used
-
stopInternal
Stop this component and implement the requirements ofLifecycleBase.stopInternal()
.- Overrides:
stopInternal
in classContainerBase
- Throws:
LifecycleException
- if this component detects a fatal error that prevents this component from being used
-
getObjectNameKeyProperties
Description copied from class:LifecycleMBeanBase
Allow sub-classes to specify the key properties component of theObjectName
that will be used to register this component.- Specified by:
getObjectNameKeyProperties
in classLifecycleMBeanBase
- Returns:
- The string representation of the key properties component of the
desired
ObjectName
-
removeNotificationListener
public void removeNotificationListener(NotificationListener listener, NotificationFilter filter, Object object) throws ListenerNotFoundException Remove a JMX notificationListener -
getNotificationInfo
Get JMX Broadcaster Info- Specified by:
getNotificationInfo
in interfaceNotificationBroadcaster
- See Also:
-
addNotificationListener
public void addNotificationListener(NotificationListener listener, NotificationFilter filter, Object object) throws IllegalArgumentException Add a JMX-NotificationListener -
removeNotificationListener
public void removeNotificationListener(NotificationListener listener) throws ListenerNotFoundException Remove a JMX-NotificationListener- Specified by:
removeNotificationListener
in interfaceNotificationBroadcaster
- Throws:
ListenerNotFoundException
- See Also:
-