Package org.apache.catalina.manager.host

# Class HTMLHostManagerServlet

java.lang.Object
javax.servlet.GenericServlet
javax.servlet.http.HttpServlet
org.apache.catalina.manager.host.HostManagerServlet
org.apache.catalina.manager.host.HTMLHostManagerServlet

All Implemented Interfaces:
  `Serializable`, `Servlet`, `ServletConfig`, `ContainerServlet`

public final class HTMLHostManagerServlet extends HostManagerServlet
Servlet that enables remote management of the virtual hosts deployed 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.

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

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

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

- ## Field Summary

  ### Fields inherited from class org.apache.catalina.manager.host.HostManagerServlet

  `context, debug, engine, installedHost, sm, wrapper`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `HTMLHostManagerServlet()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `protected String`
  `add(HttpServletRequest request, String name, StringManager smClient)`
  Add a host using the specified parameters.
  `void`
  `doGet(HttpServletRequest request, HttpServletResponse response)`
  Process a GET request for the specified resource.
  `void`
  `doPost(HttpServletRequest request, HttpServletResponse response)`
  Process a POST request for the specified resource.
  `void`
  `list(HttpServletRequest request, HttpServletResponse response, String message, StringManager smClient)`
  Render an HTML list of the currently active Contexts in our virtual host, and memory and server status information.
  `protected String`
  `persist(StringManager smClient)`
  Persist the current configuration to server.xml.
  `protected String`
  `remove(String name, StringManager smClient)`
  Remove the specified host.
  `protected String`
  `start(String name, StringManager smClient)`
  Start the host with the specified name.
  `protected String`
  `stop(String name, StringManager smClient)`
  Stop the host with the specified name.

  ### Methods inherited from class org.apache.catalina.manager.host.HostManagerServlet

  `add, add, booleanParameter, destroy, getConfigBase, getWrapper, init, list, persist, remove, setWrapper, start, stop`

  ### Methods inherited from class javax.servlet.http.HttpServlet

  `doDelete, doHead, doOptions, doPut, doTrace, getLastModified, service, service`

  ### Methods inherited from class javax.servlet.GenericServlet

  `getInitParameter, getInitParameterNames, getServletConfig, getServletContext, getServletInfo, getServletName, init, log, log`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### HTMLHostManagerServlet

    public HTMLHostManagerServlet()

- ## Method Details

  - ### doGet

    public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException
    Process a GET request for the specified resource.
    Overrides:
      `doGet` in class `HostManagerServlet`
    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:
      - `ServletResponse.setContentType(java.lang.String)`

  - ### doPost

    public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
    Process a POST request for the specified resource.
    Overrides:
      `doPost` in 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:
      - `ServletOutputStream`
      - `ServletResponse.setContentType(java.lang.String)`

  - ### add

    protected String add(HttpServletRequest request, String name, StringManager smClient)
    Add a host using the specified parameters.
    Parameters:
      `request` - The Servlet request
      `name` - Host name
      `smClient` - StringManager for the client's locale
    Returns:
      output

  - ### remove

    protected String remove(String name, StringManager smClient)
    Remove the specified host.
    Parameters:
      `name` - Host name
      `smClient` - StringManager for the client's locale
    Returns:
      output

  - ### start

    protected String start(String name, StringManager smClient)
    Start the host with the specified name.
    Parameters:
      `name` - Host name
      `smClient` - StringManager for the client's locale
    Returns:
      output

  - ### stop

    protected String stop(String name, StringManager smClient)
    Stop the host with the specified name.
    Parameters:
      `name` - Host name
      `smClient` - StringManager for the client's locale
    Returns:
      output

  - ### persist

    protected String persist(StringManager smClient)
    Persist the current configuration to server.xml.
    Parameters:
      `smClient` - i18n resources localized for the client
    Returns:
      output

  - ### list

    public void list(HttpServletRequest request, HttpServletResponse response, String message, StringManager smClient) throws IOException
    Render an 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
      `smClient` - StringManager for the client's locale
    Throws:
      `IOException` - An IO error occurred