org.apache.catalina.manager
public class ManagerServlet extends HttpServlet implements ContainerServlet
This servlet examines the value returned by getPathInfo()
and related query parameters to determine what action is being requested.
The following actions and parameters (starting after the servlet path)
are supported:
docBase
attribute
of the context configuration file is used to locate the actual
WAR or directory containing the application.{config-url}
, overriding the
docBase
attribute with the contents of the web
application archive found at {war-url}
./xxx
, based
on the contents of the web application archive found at the
specified URL.path:status:sessions
.
Where path is the context path. Status is either running or stopped.
Sessions is the number of active Sessions.users
resource reference.
/xxx
for this
virtual host./xxx
which were idle for at
least mm minutes./xxx
for this virtual host./xxx
for this virtual host./xxx
for this virtual host,
and remove the underlying WAR file or document base directory.
(NOTE - This is only allowed if the WAR file or document
base is stored in the appBase
directory of this host,
typically as a result of being placed there via the /deploy
command.Use path=/
for the ROOT context.
The syntax of the URL for a web application archive must conform to one of the following patterns to be successfully deployed:
JarURLConnection
class for a
reference to an entire JAR file.JarURLConnection
class for a reference to an entire
JAR file.NOTE - Attempting to reload or remove the application containing this servlet itself will not succeed. Therefore, this servlet should generally be deployed as a separate web application within the virtual host to be managed.
NOTE - For security reasons, this application will not operate when accessed via the invoker servlet. You must explicitly map this servlet with a servlet mapping, and you will always want to protect it with appropriate security constraints as well.
The following servlet initialization parameters are recognized:
Version: $Revision: 812174 $ $Date: 2009-09-07 16:57:59 +0200 (Mon, 07 Sep 2009) $
Field Summary | |
---|---|
protected File | appBase
The host appBase. |
protected File | configBase
Path where context descriptors should be deployed. |
protected Context | context
The Context container associated with our web application. |
protected File | contextDescriptors
Path used to store context descriptors. |
protected int | debug
The debugging detail level for this servlet. |
protected File | deployed
File object representing the directory into which the deploy() command
will store the WAR and context configuration files that have been
uploaded. |
protected Context | global
The global JNDI NamingContext for this server,
if available. |
protected Host | host
The associated host. |
protected MBeanServer | mBeanServer
MBean server. |
protected ObjectName | oname
The associated deployer ObjectName. |
protected static StringManager | sm
The string manager for this package. |
protected File | versioned
Path used to store revisions of webapps. |
protected Wrapper | wrapper
The Wrapper container associated with this servlet. |
Method Summary | |
---|---|
protected void | addServiced(String name)
Invoke the addServiced method on the deployer. |
protected void | check(String name)
Invoke the check method on the deployer. |
static boolean | copy(File src, File dest)
Copy the specified file or directory to the destination.
|
static boolean | copyInternal(File src, File dest, byte[] buf)
Copy the specified file or directory to the destination.
|
protected void | deploy(PrintWriter writer, String path, String tag, boolean update, HttpServletRequest request)
Deploy a web application archive (included in the current request)
at the specified context path.
|
protected void | deploy(PrintWriter writer, String path, String tag)
Install an application for the specified path from the specified
web application archive.
|
protected void | deploy(PrintWriter writer, String config, String path, String war, boolean update)
Install an application for the specified path from the specified
web application archive.
|
void | destroy()
Finalize this servlet. |
void | doGet(HttpServletRequest request, HttpServletResponse response)
Process a GET request for the specified resource.
|
void | doPut(HttpServletRequest request, HttpServletResponse response)
Process a PUT request for the specified resource.
|
protected void | expireSessions(PrintWriter writer, String path, HttpServletRequest req)
Extract the expiration request parameter
|
protected File | getAppBase()
Return a File object representing the "application root" directory
for our associated Host. |
protected String | getConfigFile(String path)
Given a context path, get the config file name. |
protected String | getDocBase(String path)
Given a context path, get the doc base. |
Wrapper | getWrapper()
Return the Wrapper with which we are associated. |
void | init()
Initialize this servlet. |
protected boolean | isDeployed(String name)
Invoke the isDeployed method on the deployer. |
protected boolean | isServiced(String name)
Invoke the isServiced method on the deployer. |
protected void | list(PrintWriter writer)
Render a list of the currently active Contexts in our virtual host.
|
protected void | printResources(PrintWriter writer, String prefix, Context namingContext, String type, Class clazz)
List the resources of the given context. |
protected void | reload(PrintWriter writer, String path)
Reload the web application at the specified context path.
|
protected void | removeServiced(String name)
Invoke the removeServiced method on the deployer. |
protected void | resources(PrintWriter writer, String type)
Render a list of available global JNDI resources.
|
protected void | roles(PrintWriter writer)
Render a list of security role names (and corresponding descriptions)
from the org.apache.catalina.UserDatabase resource that is
connected to the users resource reference. |
protected void | save(PrintWriter writer, String path)
Store server configuration.
|
protected void | serverinfo(PrintWriter writer)
Writes System OS and JVM properties. |
protected void | sessions(PrintWriter writer, String path, int idle)
Session information for the web application at the specified context path.
|
protected void | sessions(PrintWriter writer, String path)
Session information for the web application at the specified context path.
|
void | setWrapper(Wrapper wrapper)
Set the Wrapper with which we are associated.
|
protected void | start(PrintWriter writer, String path)
Start the web application at the specified context path.
|
protected void | stop(PrintWriter writer, String path)
Stop the web application at the specified context path.
|
protected void | undeploy(PrintWriter writer, String path)
Undeploy the web application at the specified context path.
|
protected void | undeployDir(File dir)
Delete the specified directory, including all of its contents and
subdirectories recursively.
|
protected void | uploadWar(HttpServletRequest request, File war)
Upload the WAR file included in this request, and store it at the
specified file location.
|
NamingContext
for this server,
if available.Parameters: src File object representing the source dest File object representing the destination
Parameters: src File object representing the source dest File object representing the destination
Parameters: writer Writer to render results to path Context path of the application to be installed tag Tag to be associated with the webapp request Servlet request we are processing
Parameters: writer Writer to render results to tag Revision tag to deploy from path Context path of the application to be installed
Parameters: writer Writer to render results to config URL of the context configuration file to be installed path Context path of the application to be installed war URL of the web application archive to be installed update true to override any existing webapp on the path
Parameters: request The servlet request we are processing response The servlet response we are creating
Throws: IOException if an input/output error occurs ServletException if a servlet-specified error occurs
Parameters: request The servlet request we are processing response The servlet response we are creating
Throws: IOException if an input/output error occurs ServletException if a servlet-specified error occurs
Parameters: path req
Parameters: writer Writer to render to
Parameters: writer Writer to render to path Context path of the application to be restarted
Parameters: type Fully qualified class name of the resource type of interest,
or null
to list resources of all types
org.apache.catalina.UserDatabase
resource that is
connected to the users
resource reference. Typically, this
will be the global user database, but can be adjusted if you have
different user databases for different virtual hosts.
Parameters: writer Writer to render to
Parameters: path Optional context path to save
Parameters: writer Writer to render to
Parameters: writer Writer to render to path Context path of the application to list session information for idle Expire all sessions with idle time ≥ idle for this context
Parameters: writer Writer to render to path Context path of the application to list session information for
Parameters: wrapper The new wrapper
Parameters: writer Writer to render to path Context path of the application to be started
Parameters: writer Writer to render to path Context path of the application to be stopped
Parameters: writer Writer to render to path Context path of the application to be removed
Parameters: dir File object representing the directory to be deleted
Parameters: request The servlet request we are processing war The file into which we should store the uploaded WAR
Throws: IOException if an I/O error occurs during processing