Package org.apache.catalina.manager.host
Class HostManagerServlet
java.lang.Object
jakarta.servlet.GenericServlet
jakarta.servlet.http.HttpServlet
org.apache.catalina.manager.host.HostManagerServlet
- All Implemented Interfaces:
- Servlet,- ServletConfig,- Serializable,- ContainerServlet
- Direct Known Subclasses:
- HTMLHostManagerServlet
Servlet that enables remote management of the virtual hosts installed on the server. Normally, this functionality
 will be protected by a security constraint in the web application deployment descriptor. However, this requirement
 can be relaxed during testing.
 
 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:
 
- /add?name={host-name}&aliases={host-aliases}&manager={manager} - Create and add a new virtual
 host. The host-nameattribute indicates the name of the new host. Thehost-aliasesattribute is a comma separated list of the host alias names. Themanagerattribute is a boolean value indicating if the webapp manager will be installed in the newly created host (optional, false by default).
- /remove?name={host-name} - Remove a virtual host. The host-nameattribute indicates the name of the host.
- /list - List the virtual hosts installed on the server. Each host will be listed with the following format
 host-name#host-aliases.
- /start?name={host-name} - Start the virtual host.
- /stop?name={host-name} - Stop the virtual host.
NOTE - Attempting to stop or remove the host containing this servlet itself will not succeed. Therefore, this servlet should generally be deployed in a separate virtual host.
The following servlet initialization parameters are recognized:
- debug - The debugging detail level that controls the amount of information that is logged by this servlet. Default is zero.
- Author:
- Craig R. McClanahan, Remy Maucherat
- See Also:
- 
Field SummaryFieldsModifier and TypeFieldDescriptionprotected ContextThe Context container associated with our web application.protected intThe debugging detail level for this servlet.protected EngineThe associated engine.protected HostThe associated host.protected static final StringManagerThe string manager for this package.protected WrapperThe Wrapper container associated with this servlet.Fields inherited from class jakarta.servlet.http.HttpServletLEGACY_DO_HEAD
- 
Constructor SummaryConstructors
- 
Method SummaryModifier and TypeMethodDescriptionprotected voidadd(HttpServletRequest request, PrintWriter writer, String name, boolean htmlMode, StringManager smClient) Add host with the given parameters.protected voidadd(PrintWriter writer, String name, String aliases, String appBase, boolean manager, boolean autoDeploy, boolean deployOnStartup, boolean deployXML, boolean unpackWARs, boolean copyXML, StringManager smClient) Add a host using the specified parameters.protected booleanbooleanParameter(HttpServletRequest request, String parameter, boolean theDefault, boolean htmlMode) Extract boolean value from checkbox with default.voiddestroy()Finalize this servlet.voiddoGet(HttpServletRequest request, HttpServletResponse response) Process a GET request for the specified resource.protected FilegetConfigBase(String hostName) Get config base.Return the Wrapper with which we are associated.voidinit()A convenience method which can be overridden so that there's no need to callsuper.init(config).protected voidlist(PrintWriter writer, StringManager smClient) Render a list of the currently active Contexts in our virtual host.protected voidpersist(PrintWriter writer, StringManager smClient) Persist the current configuration to server.xml.protected voidremove(PrintWriter writer, String name, StringManager smClient) Remove the specified host.voidsetWrapper(Wrapper wrapper) Set the Wrapper with which we are associated.protected voidstart(PrintWriter writer, String name, StringManager smClient) Start the host with the specified name.protected voidstop(PrintWriter writer, String name, StringManager smClient) Stop the host with the specified name.Methods inherited from class jakarta.servlet.http.HttpServletdoDelete, doHead, doOptions, doPost, doPut, doTrace, getLastModified, init, service, serviceMethods inherited from class jakarta.servlet.GenericServletgetInitParameter, getInitParameterNames, getServletConfig, getServletContext, getServletInfo, getServletName, log, log
- 
Field Details- 
contextThe Context container associated with our web application.
- 
debugprotected int debugThe debugging detail level for this servlet.
- 
installedHostThe associated host.
- 
engineThe associated engine.
- 
smThe string manager for this package.
- 
wrapperThe Wrapper container associated with this servlet.
 
- 
- 
Constructor Details- 
HostManagerServletpublic HostManagerServlet()
 
- 
- 
Method Details- 
getWrapperReturn the Wrapper with which we are associated.- Specified by:
- getWrapperin interface- ContainerServlet
- Returns:
- The Wrapper with which this Servlet is associated.
 
- 
setWrapperSet the Wrapper with which we are associated.- Specified by:
- setWrapperin interface- ContainerServlet
- Parameters:
- wrapper- The new wrapper
 
- 
destroypublic void destroy()Finalize this servlet.- Specified by:
- destroyin interface- Servlet
- Overrides:
- destroyin class- GenericServlet
 
- 
doGetpublic void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException Process a GET request for the specified resource.- Overrides:
- doGetin class- HttpServlet
- 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
- See Also:
 
- 
addprotected void add(HttpServletRequest request, PrintWriter writer, String name, boolean htmlMode, StringManager smClient) Add host with the given parameters.- Parameters:
- request- The request
- writer- The output writer
- name- The host name
- htmlMode- Flag value
- smClient- StringManager for the client's locale
 
- 
booleanParameterprotected boolean booleanParameter(HttpServletRequest request, String parameter, boolean theDefault, boolean htmlMode) Extract boolean value from checkbox with default.- Parameters:
- request- The Servlet request
- parameter- The parameter name
- theDefault- Default value
- htmlMode- Flag value
- Returns:
- the boolean value for the parameter
 
- 
initDescription copied from class:jakarta.servlet.GenericServletA convenience method which can be overridden so that there's no need to callsuper.init(config).Instead of overriding GenericServlet.init(ServletConfig), simply override this method and it will be called byGenericServlet.init(ServletConfig config). TheServletConfigobject can still be retrieved viaGenericServlet.getServletConfig().- Overrides:
- initin class- GenericServlet
- Throws:
- ServletException- if an exception occurs that interrupts the servlet's normal operation
 
- 
addprotected void add(PrintWriter writer, String name, String aliases, String appBase, boolean manager, boolean autoDeploy, boolean deployOnStartup, boolean deployXML, boolean unpackWARs, boolean copyXML, StringManager smClient) Add a host using the specified parameters.- Parameters:
- writer- Writer to render results to
- name- host name
- aliases- comma separated alias list
- appBase- application base for the host
- manager- should the manager webapp be deployed to the new host ?
- autoDeploy- Flag value
- deployOnStartup- Flag value
- deployXML- Flag value
- unpackWARs- Flag value
- copyXML- Flag value
- smClient- StringManager for the client's locale
 
- 
removeRemove the specified host.- Parameters:
- writer- Writer to render results to
- name- host name
- smClient- StringManager for the client's locale
 
- 
listRender a list of the currently active Contexts in our virtual host.- Parameters:
- writer- Writer to render to
- smClient- StringManager for the client's locale
 
- 
startStart the host with the specified name.- Parameters:
- writer- Writer to render to
- name- Host name
- smClient- StringManager for the client's locale
 
- 
stopStop the host with the specified name.- Parameters:
- writer- Writer to render to
- name- Host name
- smClient- StringManager for the client's locale
 
- 
persistPersist the current configuration to server.xml.- Parameters:
- writer- Writer to render to
- smClient- i18n resources localized for the client
 
- 
getConfigBaseGet config base.- Parameters:
- hostName- The host name
- Returns:
- the config base for the host
 
 
-