| 
 | Apache Tomcat 6.0.53 | ||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectorg.apache.catalina.core.ContainerBase
org.apache.catalina.core.StandardWrapper
public class StandardWrapper
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.
| Nested Class Summary | 
|---|
| Nested classes/interfaces inherited from class org.apache.catalina.core.ContainerBase | 
|---|
| ContainerBase.ContainerBackgroundProcessor, ContainerBase.NoopAccessLog, ContainerBase.PrivilegedAddChild | 
| Field Summary | |
|---|---|
| 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. | 
| protected  javax.management.NotificationBroadcasterSupport | broadcasterThe broadcaster that sends j2ee notifications. | 
| protected  int | classLoadTime | 
| protected static java.lang.Class[] | classTypeStatic class array used when the SecurityManager is turned on and Servlet.initis invoked. | 
| protected static java.lang.Class[] | classTypeUsedInServiceStatic class array used when the SecurityManager is turned on and Servlet.serviceis invoked. | 
| protected  java.util.concurrent.atomic.AtomicInteger | countAllocatedThe 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 java.lang.String[] | DEFAULT_SERVLET_METHODS | 
| protected  StandardWrapperFacade | facadeThe facade associated with this wrapper. | 
| protected static java.lang.String | infoThe descriptive information string for this implementation. | 
| protected  javax.servlet.Servlet | instanceThe (single) initialized instance of this servlet. | 
| protected  java.util.Stack | instancePoolStack containing the STM instances. | 
| protected  InstanceSupport | instanceSupportThe support object for our instance listeners. | 
| protected  boolean | isJspServletTrue if this StandardWrapper is for the JspServlet | 
| protected  java.lang.String | jspFileThe context-relative URI of the JSP file for this servlet. | 
| protected  javax.management.ObjectName | jspMonitorONThe ObjectName of the JSP monitoring mbean | 
| protected  int | loadOnStartupThe load-on-startup order value (negative value means load on first call) for this servlet. | 
| protected  long | loadTime | 
| protected static Log | log | 
| protected  java.util.ArrayList | mappingsMappings associated with the wrapper. | 
| protected  int | maxInstancesMaximum number of STM instances. | 
| protected  int | nInstancesNumber of instances currently loaded for a STM servlet. | 
| protected  javax.management.MBeanNotificationInfo[] | notificationInfo | 
| protected  java.util.HashMap | parametersThe initialization parameters for this servlet, keyed by parameter name. | 
| protected  java.util.HashMap | referencesThe security role references for this servlet, keyed by role name used in the servlet. | 
| protected static java.util.Properties | restrictedServletsRestricted servlets (which can only be loaded by a privileged webapp). | 
| protected  java.lang.String | runAsThe run-as identity for this servlet. | 
| protected  long | sequenceNumberThe notification sequence number. | 
| protected  java.lang.String | servletClassThe fully qualified servlet class name for this servlet. | 
| protected  boolean | singleThreadModelDoes this servlet implement the SingleThreadModel interface? | 
| protected  boolean | swallowOutputShould we swallow System.out | 
| protected  org.apache.catalina.core.StandardWrapperValve | swValve | 
| protected  long | unloadDelayWait time for servlet unload in ms. | 
| protected  boolean | unloadingAre we unloading our servlet instance at the moment? | 
| Fields inherited from class org.apache.catalina.core.ContainerBase | 
|---|
| accessLog, backgroundProcessorDelay, children, cluster, controller, domain, initialized, lifecycle, listeners, loader, logger, logName, manager, mserver, name, oname, parent, parentClassLoader, pipeline, realm, resources, sm, startChildren, started, suffix, support, type | 
| Fields inherited from interface org.apache.catalina.Container | 
|---|
| ADD_CHILD_EVENT, ADD_MAPPER_EVENT, ADD_VALVE_EVENT, REMOVE_CHILD_EVENT, REMOVE_MAPPER_EVENT, REMOVE_VALVE_EVENT | 
| Fields inherited from interface org.apache.catalina.Lifecycle | 
|---|
| AFTER_START_EVENT, AFTER_STOP_EVENT, BEFORE_START_EVENT, BEFORE_STOP_EVENT, DESTROY_EVENT, INIT_EVENT, PERIODIC_EVENT, START_EVENT, STOP_EVENT | 
| Constructor Summary | |
|---|---|
| StandardWrapper()Create a new StandardWrapper component with the default basic Valve. | |
| Method Summary | |
|---|---|
|  void | addChild(Container child)Refuse to add a child Container, because Wrappers are the lowest level of the Container hierarchy. | 
| protected  void | addDefaultMapper(java.lang.String mapperClass)Add a default Mapper implementation if none have been configured explicitly. | 
|  void | addInitParameter(java.lang.String name,
                 java.lang.String value)Add a new servlet initialization parameter for this servlet. | 
|  void | addInstanceListener(InstanceListener listener)Add a new listener interested in InstanceEvents. | 
|  void | addMapping(java.lang.String mapping)Add a mapping associated with the Wrapper. | 
|  void | addNotificationListener(javax.management.NotificationListener listener,
                        javax.management.NotificationFilter filter,
                        java.lang.Object object) | 
|  void | addSecurityReference(java.lang.String name,
                     java.lang.String link)Add a new security role reference record to the set of records for this servlet. | 
|  javax.servlet.Servlet | allocate()Allocate an initialized instance of this Servlet that is ready to have its service()method called. | 
|  void | backgroundProcess()Execute a periodic task, such as reloading, etc. | 
|  void | deallocate(javax.servlet.Servlet servlet)Return this previously allocated servlet to the pool of available instances. | 
|  java.lang.String | findInitParameter(java.lang.String name)Return the value for the specified initialization parameter name, if any; otherwise return null. | 
|  java.lang.String[] | findInitParameters()Return the names of all defined initialization parameters for this servlet. | 
|  Wrapper | findMappingObject()FIXME: Fooling introspection ... | 
|  java.lang.String[] | findMappings()Return the mappings associated with this wrapper. | 
|  java.lang.String | findSecurityReference(java.lang.String name)Return the security role link for the specified security role reference name, if any; otherwise return null. | 
|  java.lang.String[] | findSecurityReferences()Return the set of security role reference names associated with this servlet, if any; otherwise return a zero-length array. | 
| protected  java.lang.reflect.Method[] | getAllDeclaredMethods(java.lang.Class c) | 
|  long | getAvailable()Return the available date/time for this servlet, in milliseconds since the epoch. | 
|  int | getClassLoadTime() | 
|  int | getCountAllocated()Return 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. | 
|  java.lang.String | getEngineName() | 
|  int | getErrorCount() | 
|  java.lang.String | getInfo()Return descriptive information about this Container implementation and the corresponding version number, in the format <description>/<version>. | 
|  java.lang.String | getInitParameter(java.lang.String name)Return the initialization parameter value for the specified name, if any; otherwise return null. | 
|  java.util.Enumeration | getInitParameterNames()Return the set of initialization parameter names defined for this servlet. | 
|  InstanceSupport | getInstanceSupport()Return the InstanceSupport object for this Wrapper instance. | 
|  java.lang.String | getJspFile()Return the context-relative URI of the JSP file for this servlet. | 
|  int | getLoadOnStartup()Return the load-on-startup order value (negative value means load on first call). | 
|  java.lang.String | getLoadOnStartupString() | 
|  long | getLoadTime() | 
|  int | getMaxInstances()Return maximum number of instances that will be allocated when a single thread model servlet is used. | 
|  long | getMaxTime() | 
|  long | getMinTime() | 
|  javax.management.MBeanNotificationInfo[] | getNotificationInfo() | 
|  long | getProcessingTime() | 
|  int | getRequestCount() | 
| static java.lang.Throwable | getRootCause(javax.servlet.ServletException e)Extract the root cause from a servlet exception. | 
|  java.lang.String | getRunAs()Return the run-as identity for this servlet. | 
|  javax.servlet.Servlet | getServlet()Return the associated servlet instance. | 
|  java.lang.String | getServletClass()Return the fully qualified servlet class name for this servlet. | 
|  javax.servlet.ServletContext | getServletContext()Return the servlet context with which this servlet is associated. | 
|  java.lang.String[] | getServletMethods()Gets the names of the methods supported by the underlying servlet. | 
|  java.lang.String | getServletName()Return the name of this servlet. | 
|  void | incrementErrorCount()Increment the error count used for monitoring. | 
| protected  boolean | isContainerProvidedServlet(java.lang.String classname)Return trueif the specified class name represents a
 container provided servlet class that should be loaded by the
 server class loader. | 
|  boolean | isEventProvider() | 
| protected  boolean | isServletAllowed(java.lang.Object servlet)Return trueif loading this servlet is allowed. | 
|  boolean | isSingleThreadModel()Return trueif the servlet class represented by this
 component implements theSingleThreadModelinterface. | 
|  boolean | isStateManageable() | 
|  boolean | isStatisticsProvider() | 
|  boolean | isUnavailable()Is this servlet currently unavailable? | 
|  void | load()Load and initialize an instance of this servlet, if there is not already at least one initialized instance. | 
|  javax.servlet.Servlet | loadServlet()Load and initialize an instance of this servlet, if there is not already at least one initialized instance. | 
| protected  void | registerJMX(StandardContext ctx) | 
|  void | removeInitParameter(java.lang.String name)Remove the specified initialization parameter from this servlet. | 
|  void | removeInstanceListener(InstanceListener listener)Remove a listener no longer interested in InstanceEvents. | 
|  void | removeMapping(java.lang.String mapping)Remove a mapping associated with the wrapper. | 
|  void | removeNotificationListener(javax.management.NotificationListener listener)Remove a JMX-NotificationListener | 
|  void | removeNotificationListener(javax.management.NotificationListener listener,
                           javax.management.NotificationFilter filter,
                           java.lang.Object object) | 
|  void | removeSecurityReference(java.lang.String name)Remove any security role reference for the specified role name. | 
|  void | setAvailable(long available)Set the available date/time for this servlet, in milliseconds since the epoch. | 
|  void | setErrorCount(int errorCount) | 
|  void | setJspFile(java.lang.String jspFile)Set the context-relative URI of the JSP file for this servlet. | 
|  void | setLoadOnStartup(int value)Set the load-on-startup order value (negative value means load on first call). | 
|  void | setLoadOnStartupString(java.lang.String value)Set the load-on-startup order value from a (possibly null) string. | 
|  void | setLoadTime(long loadTime) | 
|  void | setMaxInstances(int maxInstances)Set the maximum number of instances that will be allocated when a single thread model servlet is used. | 
|  void | setMaxTime(long maxTime) | 
|  void | setMinTime(long minTime) | 
|  void | setParent(Container container)Set the parent Container of this Wrapper, but only if it is a Context. | 
|  void | setProcessingTime(long processingTime) | 
|  void | setRequestCount(int requestCount) | 
|  void | setRunAs(java.lang.String runAs)Set the run-as identity for this servlet. | 
|  void | setServletClass(java.lang.String servletClass)Set the fully qualified servlet class name for this servlet. | 
|  void | setServletName(java.lang.String name)Set the name of this servlet. | 
|  void | start()Start this component, pre-loading the servlet if the load-on-startup value is set appropriately. | 
|  void | stop()Stop this component, gracefully shutting down the servlet if it has been initialized. | 
|  java.lang.String | toString()Return a String representation of this component. | 
|  void | unavailable(javax.servlet.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 the destroy()method for each instance. | 
| 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, getAccessLog, getBackgroundProcessorDelay, getCluster, getLoader, getLogger, getManager, getMappingObject, getName, getObjectName, getParent, getParentClassLoader, getPipeline, getRealm, getResources, invoke, logAccess, removeChild, removeContainerListener, removePropertyChangeListener, setBackgroundProcessorDelay, setCluster, setLoader, setManager, setName, setParentClassLoader, setRealm, setResources | 
| Field Detail | 
|---|
protected static Log log
protected static final java.lang.String[] DEFAULT_SERVLET_METHODS
protected long available
protected javax.management.NotificationBroadcasterSupport broadcaster
protected java.util.concurrent.atomic.AtomicInteger countAllocated
protected StandardWrapperFacade facade
protected static final java.lang.String info
protected javax.servlet.Servlet instance
protected InstanceSupport instanceSupport
protected java.lang.String jspFile
protected int loadOnStartup
protected java.util.ArrayList mappings
protected java.util.HashMap parameters
protected java.util.HashMap references
protected java.lang.String runAs
protected long sequenceNumber
protected java.lang.String servletClass
protected boolean singleThreadModel
protected boolean unloading
protected int maxInstances
protected int nInstances
protected java.util.Stack instancePool
protected long unloadDelay
protected boolean isJspServlet
protected javax.management.ObjectName jspMonitorON
protected boolean swallowOutput
protected org.apache.catalina.core.StandardWrapperValve swValve
protected long loadTime
protected int classLoadTime
protected static java.lang.Class[] classType
Servlet.init is invoked.
protected static java.lang.Class[] classTypeUsedInService
Servlet.service  is invoked.
protected static java.util.Properties restrictedServlets
protected javax.management.MBeanNotificationInfo[] notificationInfo
| Constructor Detail | 
|---|
public StandardWrapper()
| Method Detail | 
|---|
public long getAvailable()
getAvailable in interface Wrapperpublic void setAvailable(long available)
setAvailable in interface Wrapperavailable - The new available date/timepublic int getCountAllocated()
SingleThreadModel.
public java.lang.String getEngineName()
public java.lang.String getInfo()
<description>/<version>.
getInfo in interface ContainergetInfo in class ContainerBasepublic InstanceSupport getInstanceSupport()
public java.lang.String getJspFile()
getJspFile in interface Wrapperpublic void setJspFile(java.lang.String jspFile)
setJspFile in interface WrapperjspFile - JSP file URIpublic int getLoadOnStartup()
getLoadOnStartup in interface Wrapperpublic void setLoadOnStartup(int value)
setLoadOnStartup in interface Wrappervalue - New load-on-startup valuepublic void setLoadOnStartupString(java.lang.String value)
value - New load-on-startup valuepublic java.lang.String getLoadOnStartupString()
public int getMaxInstances()
public void setMaxInstances(int maxInstances)
maxInstances - New value of maxInstancespublic void setParent(Container container)
setParent in interface ContainersetParent in class ContainerBasecontainer - Proposed parent Containerpublic java.lang.String getRunAs()
getRunAs in interface Wrapperpublic void setRunAs(java.lang.String runAs)
setRunAs in interface WrapperrunAs - New run-as identity valuepublic java.lang.String getServletClass()
getServletClass in interface Wrapperpublic void setServletClass(java.lang.String servletClass)
setServletClass in interface WrapperservletClass - Servlet class namepublic void setServletName(java.lang.String name)
Container.setName() method, and complements the
 getServletName() method required by the
 ServletConfig interface.
name - The new name of this servletpublic boolean isSingleThreadModel()
true if the servlet class represented by this
 component implements the SingleThreadModel interface.
public boolean isUnavailable()
isUnavailable in interface Wrapper
public java.lang.String[] getServletMethods()
                                     throws javax.servlet.ServletException
getServletMethods in interface Wrapperjavax.servlet.ServletExceptionpublic void backgroundProcess()
backgroundProcess in interface ContainerbackgroundProcess in class ContainerBasepublic static java.lang.Throwable getRootCause(javax.servlet.ServletException e)
e - The servlet exceptionpublic void addChild(Container child)
addChild in interface ContaineraddChild in class ContainerBasechild - Child container to be added
public void addInitParameter(java.lang.String name,
                             java.lang.String value)
addInitParameter in interface Wrappername - Name of this initialization parameter to addvalue - Value of this initialization parameter to addpublic void addInstanceListener(InstanceListener listener)
addInstanceListener in interface Wrapperlistener - The new listenerpublic void addMapping(java.lang.String mapping)
addMapping in interface Wrappermapping - The new wrapper mapping
public void addSecurityReference(java.lang.String name,
                                 java.lang.String link)
addSecurityReference in interface Wrappername - Role name used within this servletlink - Role name used within the web applicationpublic javax.servlet.Servlet getServlet()
getServlet in interface Wrapper
public javax.servlet.Servlet allocate()
                               throws javax.servlet.ServletException
service() method called.  If the servlet class does
 not implement SingleThreadModel, the (only) initialized
 instance may be returned immediately.  If the servlet class implements
 SingleThreadModel, the Wrapper implementation must ensure
 that this instance is not allocated again until it is deallocated by a
 call to deallocate().
allocate in interface Wrapperjavax.servlet.ServletException - if the servlet init() method threw
  an exception
javax.servlet.ServletException - if a loading error occurs
public void deallocate(javax.servlet.Servlet servlet)
                throws javax.servlet.ServletException
deallocate in interface Wrapperservlet - The servlet to be returned
javax.servlet.ServletException - if a deallocation error occurspublic java.lang.String findInitParameter(java.lang.String name)
null.
findInitParameter in interface Wrappername - Name of the requested initialization parameterpublic java.lang.String[] findInitParameters()
findInitParameters in interface Wrapperpublic java.lang.String[] findMappings()
findMappings in interface Wrapperpublic java.lang.String findSecurityReference(java.lang.String name)
null.
findSecurityReference in interface Wrappername - Security role reference used within this servletpublic java.lang.String[] findSecurityReferences()
findSecurityReferences in interface Wrapperpublic Wrapper findMappingObject()
public void load()
          throws javax.servlet.ServletException
 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.
load in interface Wrapperjavax.servlet.ServletException - if the servlet init() method threw
  an exception
javax.servlet.ServletException - if some other loading problem occurs
public javax.servlet.Servlet loadServlet()
                                  throws javax.servlet.ServletException
javax.servlet.ServletExceptionpublic void removeInitParameter(java.lang.String name)
removeInitParameter in interface Wrappername - Name of the initialization parameter to removepublic void removeInstanceListener(InstanceListener listener)
removeInstanceListener in interface Wrapperlistener - The listener to removepublic void removeMapping(java.lang.String mapping)
removeMapping in interface Wrappermapping - The pattern to removepublic void removeSecurityReference(java.lang.String name)
removeSecurityReference in interface Wrappername - Security role used within this servlet to be removedpublic java.lang.String toString()
toString in class java.lang.Objectpublic void unavailable(javax.servlet.UnavailableException unavailable)
unavailable in interface Wrapperunavailable - The exception that occurred, or null
  to mark this servlet as permanently unavailable
public void unload()
            throws javax.servlet.ServletException
destroy() 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.
unload in interface Wrapperjavax.servlet.ServletException - if an exception is thrown by the
  destroy() methodpublic java.lang.String getInitParameter(java.lang.String name)
null.
getInitParameter in interface javax.servlet.ServletConfigname - Name of the initialization parameter to retrieve
String containing the value 
                        of the initialization parameterpublic java.util.Enumeration getInitParameterNames()
getInitParameterNames in interface javax.servlet.ServletConfigEnumeration of String 
                        objects containing the names of the servlet's 
                        initialization parameterspublic javax.servlet.ServletContext getServletContext()
getServletContext in interface javax.servlet.ServletConfigServletContext object, used
                        by the caller to interact with its servlet 
                  containerServletContextpublic java.lang.String getServletName()
getServletName in interface javax.servlet.ServletConfigpublic long getProcessingTime()
public void setProcessingTime(long processingTime)
public long getMaxTime()
public void setMaxTime(long maxTime)
public long getMinTime()
public void setMinTime(long minTime)
public int getRequestCount()
public void setRequestCount(int requestCount)
public int getErrorCount()
public void setErrorCount(int errorCount)
public void incrementErrorCount()
incrementErrorCount in interface Wrapperpublic long getLoadTime()
public void setLoadTime(long loadTime)
public int getClassLoadTime()
protected void addDefaultMapper(java.lang.String mapperClass)
mapperClass - Java class name of the default Mapperprotected boolean isContainerProvidedServlet(java.lang.String classname)
true if the specified class name represents a
 container provided servlet class that should be loaded by the
 server class loader.
classname - Name of the class to be checkedprotected boolean isServletAllowed(java.lang.Object servlet)
true if loading this servlet is allowed.
protected java.lang.reflect.Method[] getAllDeclaredMethods(java.lang.Class c)
public void start()
           throws LifecycleException
start in interface Lifecyclestart in class ContainerBaseLifecycleException - if a fatal error occurs during startup
public void stop()
          throws LifecycleException
stop in interface Lifecyclestop in class ContainerBaseLifecycleException - if a fatal error occurs during shutdownprotected void registerJMX(StandardContext ctx)
public void removeNotificationListener(javax.management.NotificationListener listener,
                                       javax.management.NotificationFilter filter,
                                       java.lang.Object object)
                                throws javax.management.ListenerNotFoundException
removeNotificationListener in interface javax.management.NotificationEmitterjavax.management.ListenerNotFoundExceptionpublic javax.management.MBeanNotificationInfo[] getNotificationInfo()
getNotificationInfo in interface javax.management.NotificationBroadcaster
public void addNotificationListener(javax.management.NotificationListener listener,
                                    javax.management.NotificationFilter filter,
                                    java.lang.Object object)
                             throws java.lang.IllegalArgumentException
addNotificationListener in interface javax.management.NotificationBroadcasterjava.lang.IllegalArgumentException
public void removeNotificationListener(javax.management.NotificationListener listener)
                                throws javax.management.ListenerNotFoundException
removeNotificationListener in interface javax.management.NotificationBroadcasterjavax.management.ListenerNotFoundExceptionNotificationBroadcaster.removeNotificationListener(javax.management.NotificationListener)public boolean isEventProvider()
public boolean isStateManageable()
public boolean isStatisticsProvider()
| 
 | Apache Tomcat 6.0.53 | ||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||