Apache Tomcat 6.0.41

org.apache.catalina.manager
Class HTMLManagerServlet

java.lang.Object
  extended by javax.servlet.GenericServlet
      extended by javax.servlet.http.HttpServlet
          extended by org.apache.catalina.manager.ManagerServlet
              extended by org.apache.catalina.manager.HTMLManagerServlet
All Implemented Interfaces:
java.io.Serializable, javax.servlet.Servlet, javax.servlet.ServletConfig, ContainerServlet

public final class HTMLManagerServlet
extends ManagerServlet

Servlet that enables remote management of the web applications deployed within the same virtual host as this web application is. Normally, this functionality will be protected by a security constraint in the web application deployment descriptor. However, this requirement can be relaxed during testing.

The difference between the ManagerServlet and this Servlet is that this Servlet prints out a HTML interface which makes it easier to administrate.

However if you use a software that parses the output of ManagerServlet you won't be able to upgrade to this Servlet since the output are not in the same format ar from ManagerServlet

Author:
Bip Thelin, Malcolm Edgar, Glenn L. Nielsen
See Also:
ManagerServlet, Serialized Form

Field Summary
protected static java.lang.String APPLICATION_ERROR
           
protected static java.lang.String APPLICATION_MESSAGE
           
protected  java.lang.String sessionDetailJspPath
           
protected  java.lang.String sessionsListJspPath
           
protected static URLEncoder URL_ENCODER
           
 
Fields inherited from class org.apache.catalina.manager.ManagerServlet
appBase, configBase, context, contextDescriptors, debug, deployed, global, host, mBeanServer, oname, sm, versioned, wrapper
 
Constructor Summary
HTMLManagerServlet()
           
 
Method Summary
protected  java.lang.String deployInternal(java.lang.String config, java.lang.String path, java.lang.String war)
          Deploy an application for the specified path from the specified web application archive.
protected  void displaySessionDetailPage(javax.servlet.http.HttpServletRequest req, javax.servlet.http.HttpServletResponse resp, java.lang.String path, java.lang.String sessionId)
           
protected  void displaySessionsListPage(java.lang.String path, javax.servlet.http.HttpServletRequest req, javax.servlet.http.HttpServletResponse resp)
           
 void doGet(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)
          Process a GET request for the specified resource.
 void doPost(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)
          Process a POST request for the specified resource.
protected  void doSessions(java.lang.String path, javax.servlet.http.HttpServletRequest req, javax.servlet.http.HttpServletResponse resp)
           
protected  java.lang.String expireSessions(java.lang.String path, javax.servlet.http.HttpServletRequest req)
          Extract the expiration request parameter
protected  java.lang.String findleaks()
          Find potential memory leaks caused by web application reload.
protected  java.util.Comparator getComparator(java.lang.String sortBy)
           
 java.lang.String getServletInfo()
          Returns information about the servlet, such as author, version, and copyright.
protected  Session getSessionForPathAndId(java.lang.String path, java.lang.String id)
           
protected  Session[] getSessionsForPath(java.lang.String path)
           
 void init()
          Initialize this servlet.
 int invalidateSessions(java.lang.String path, java.lang.String[] sessionIds)
          Invalidate HttpSessions
 void list(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, java.lang.String message)
          Render a HTML list of the currently active Contexts in our virtual host, and memory and server status information.
protected  java.lang.String reload(java.lang.String path)
          Reload the web application at the specified context path.
 boolean removeSessionAttribute(java.lang.String path, java.lang.String sessionId, java.lang.String attributeName)
          Removes an attribute from an HttpSession
 java.lang.String sessions(java.lang.String path)
          Display session information and invoke list.
 java.lang.String sessions(java.lang.String path, int idle)
          Display session information and invoke list.
 int setSessionMaxInactiveInterval(java.lang.String path, java.lang.String sessionId, int maxInactiveInterval)
          Sets the maximum inactive interval (session timeout) an HttpSession
 java.lang.String start(java.lang.String path)
          Start the web application at the specified context path.
protected  java.lang.String stop(java.lang.String path)
          Stop the web application at the specified context path.
protected  java.lang.String undeploy(java.lang.String path)
          Undeploy the web application at the specified context path.
 
Methods inherited from class org.apache.catalina.manager.ManagerServlet
addServiced, check, copy, copyInternal, deploy, deploy, deploy, destroy, doPut, expireSessions, findleaks, getAppBase, getConfigFile, getDocBase, getWrapper, isDeployed, isServiced, list, printResources, reload, removeServiced, resources, roles, save, serverinfo, sessions, sessions, setWrapper, start, stop, undeploy, undeployDir, uploadWar
 
Methods inherited from class javax.servlet.http.HttpServlet
doDelete, doHead, doOptions, doTrace, getLastModified, service, service
 
Methods inherited from class javax.servlet.GenericServlet
getInitParameter, getInitParameterNames, getServletConfig, getServletContext, getServletName, init, log, log
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

URL_ENCODER

protected static final URLEncoder URL_ENCODER

APPLICATION_MESSAGE

protected static final java.lang.String APPLICATION_MESSAGE
See Also:
Constant Field Values

APPLICATION_ERROR

protected static final java.lang.String APPLICATION_ERROR
See Also:
Constant Field Values

sessionsListJspPath

protected java.lang.String sessionsListJspPath

sessionDetailJspPath

protected java.lang.String sessionDetailJspPath
Constructor Detail

HTMLManagerServlet

public HTMLManagerServlet()
Method Detail

doGet

public void doGet(javax.servlet.http.HttpServletRequest request,
                  javax.servlet.http.HttpServletResponse response)
           throws java.io.IOException,
                  javax.servlet.ServletException
Process a GET request for the specified resource.

Overrides:
doGet in class ManagerServlet
Parameters:
request - The servlet request we are processing
response - The servlet response we are creating
Throws:
java.io.IOException - if an input/output error occurs
javax.servlet.ServletException - if a servlet-specified error occurs
See Also:
ServletResponse.setContentType(java.lang.String)

doPost

public void doPost(javax.servlet.http.HttpServletRequest request,
                   javax.servlet.http.HttpServletResponse response)
            throws java.io.IOException,
                   javax.servlet.ServletException
Process a POST request for the specified resource.

Overrides:
doPost in class javax.servlet.http.HttpServlet
Parameters:
request - The servlet request we are processing
response - The servlet response we are creating
Throws:
java.io.IOException - if an input/output error occurs
javax.servlet.ServletException - if a servlet-specified error occurs
See Also:
ServletOutputStream, ServletResponse.setContentType(java.lang.String)

deployInternal

protected java.lang.String deployInternal(java.lang.String config,
                                          java.lang.String path,
                                          java.lang.String war)
Deploy an application for the specified path from the specified web application archive.

Parameters:
config - URL of the context configuration file to be deployed
path - Context path of the application to be deployed
war - URL of the web application archive to be deployed
Returns:
message String

list

public void list(javax.servlet.http.HttpServletRequest request,
                 javax.servlet.http.HttpServletResponse response,
                 java.lang.String message)
          throws java.io.IOException
Render a HTML list of the currently active Contexts in our virtual host, and memory and server status information.

Parameters:
request - The request
response - The response
message - a message to display
Throws:
java.io.IOException

reload

protected java.lang.String reload(java.lang.String path)
Reload the web application at the specified context path.

Parameters:
path - Context path of the application to be restarted
Returns:
message String
See Also:
ManagerServlet.reload(PrintWriter, String)

undeploy

protected java.lang.String undeploy(java.lang.String path)
Undeploy the web application at the specified context path.

Parameters:
path - Context path of the application to be undeployd
Returns:
message String
See Also:
ManagerServlet.undeploy(PrintWriter, String)

sessions

public java.lang.String sessions(java.lang.String path,
                                 int idle)
Display session information and invoke list.

Parameters:
path - Context path of the application to list session information
idle - Expire all sessions with idle time ≥ idle for this context
Returns:
message String
See Also:
ManagerServlet.sessions(PrintWriter, String, int)

sessions

public java.lang.String sessions(java.lang.String path)
Display session information and invoke list.

Parameters:
path - Context path of the application to list session information
Returns:
message String
See Also:
ManagerServlet.sessions(PrintWriter, String)

start

public java.lang.String start(java.lang.String path)
Start the web application at the specified context path.

Parameters:
path - Context path of the application to be started
Returns:
message String
See Also:
ManagerServlet.start(PrintWriter, String)

stop

protected java.lang.String stop(java.lang.String path)
Stop the web application at the specified context path.

Parameters:
path - Context path of the application to be stopped
Returns:
message String
See Also:
ManagerServlet.stop(PrintWriter, String)

findleaks

protected java.lang.String findleaks()
Find potential memory leaks caused by web application reload.

Returns:
message String
See Also:
ManagerServlet.findleaks(PrintWriter)

getServletInfo

public java.lang.String getServletInfo()
Description copied from class: javax.servlet.GenericServlet
Returns information about the servlet, such as author, version, and copyright. By default, this method returns an empty string. Override this method to have it return a meaningful value. See Servlet.getServletInfo().

Specified by:
getServletInfo in interface javax.servlet.Servlet
Overrides:
getServletInfo in class javax.servlet.GenericServlet
Returns:
String information about this servlet, by default an empty string
See Also:
Servlet.getServletInfo()

init

public void init()
          throws javax.servlet.ServletException
Description copied from class: ManagerServlet
Initialize this servlet.

Overrides:
init in class ManagerServlet
Throws:
javax.servlet.ServletException - if an exception occurs that interrupts the servlet's normal operation
See Also:
GenericServlet.init()

expireSessions

protected java.lang.String expireSessions(java.lang.String path,
                                          javax.servlet.http.HttpServletRequest req)
Extract the expiration request parameter

Parameters:
path -
req -

doSessions

protected void doSessions(java.lang.String path,
                          javax.servlet.http.HttpServletRequest req,
                          javax.servlet.http.HttpServletResponse resp)
                   throws javax.servlet.ServletException,
                          java.io.IOException
Parameters:
req -
resp -
Throws:
javax.servlet.ServletException
java.io.IOException

getSessionsForPath

protected Session[] getSessionsForPath(java.lang.String path)

getSessionForPathAndId

protected Session getSessionForPathAndId(java.lang.String path,
                                         java.lang.String id)
                                  throws java.io.IOException
Throws:
java.io.IOException

displaySessionsListPage

protected void displaySessionsListPage(java.lang.String path,
                                       javax.servlet.http.HttpServletRequest req,
                                       javax.servlet.http.HttpServletResponse resp)
                                throws javax.servlet.ServletException,
                                       java.io.IOException
Parameters:
req -
resp -
Throws:
javax.servlet.ServletException
java.io.IOException

displaySessionDetailPage

protected void displaySessionDetailPage(javax.servlet.http.HttpServletRequest req,
                                        javax.servlet.http.HttpServletResponse resp,
                                        java.lang.String path,
                                        java.lang.String sessionId)
                                 throws javax.servlet.ServletException,
                                        java.io.IOException
Parameters:
req -
resp -
Throws:
javax.servlet.ServletException
java.io.IOException

invalidateSessions

public int invalidateSessions(java.lang.String path,
                              java.lang.String[] sessionIds)
                       throws java.io.IOException
Invalidate HttpSessions

Parameters:
sessionIds -
Returns:
number of invalidated sessions
Throws:
java.io.IOException

removeSessionAttribute

public boolean removeSessionAttribute(java.lang.String path,
                                      java.lang.String sessionId,
                                      java.lang.String attributeName)
                               throws java.io.IOException
Removes an attribute from an HttpSession

Parameters:
sessionId -
attributeName -
Returns:
true if there was an attribute removed, false otherwise
Throws:
java.io.IOException

setSessionMaxInactiveInterval

public int setSessionMaxInactiveInterval(java.lang.String path,
                                         java.lang.String sessionId,
                                         int maxInactiveInterval)
                                  throws java.io.IOException
Sets the maximum inactive interval (session timeout) an HttpSession

Parameters:
sessionId -
maxInactiveInterval - in seconds
Returns:
old value for maxInactiveInterval
Throws:
java.io.IOException

getComparator

protected java.util.Comparator getComparator(java.lang.String sortBy)

Apache Tomcat 6.0.41

Copyright © 2000-2014 Apache Software Foundation. All Rights Reserved.