alvinalexander.com | career | drupal | java | mac | mysql | perl | scala | uml | unix  

Tomcat example source code file (html-manager-howto.xml)

This example Tomcat source code file (html-manager-howto.xml) is included in the DevDaily.com "Java Source Code Warehouse" project. The intent of this project is to help you "Learn Java by Example" TM.

Java - Tomcat tags/keywords

context, directory, host, host, if, license, message, the, the, tomcat, tomcat, url, war, war

The Tomcat html-manager-howto.xml source code

<?xml version="1.0"?>
<!--
  Licensed to the Apache Software Foundation (ASF) under one or more
  contributor license agreements.  See the NOTICE file distributed with
  this work for additional information regarding copyright ownership.
  The ASF licenses this file to You under the Apache License, Version 2.0
  (the "License"); you may not use this file except in compliance with
  the License.  You may obtain a copy of the License at

      http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.
-->
<!DOCTYPE document [
  <!ENTITY project SYSTEM "project.xml">
]>
<document url="html-manager-howto.html">

    &project;

    <properties>
        <author email="glenn@apache.org">Glenn L. Nielsen
        <title>Tomcat Web Application Manager How To
    </properties>

<body>

<section name="Introduction">

<p>In many production environments it is very useful to have the capability
to manage your web applications without having to shut down and restart
Tomcat.  This document is for the HTML web interface to the web application
<a href="manager-howto.html">manager.

<p>The interface is divided into five sections: <ul> <li>Message - Displays success and failure messages. <li>Manager - General manager operations like list and help.</li> <li>Applications - List of web applications and commands.</li> <li>Deploy - Deploying web applications. <li>Server Information - Information about the Tomcat server.</li> </ul> </p> </section> <section name="Message"> <p> Displays information about the success or failure of the last web application manager command you performed. If it succeeded <strong>OK is displayed and may be followed by a success message. If it failed <strong>FAIL is displayed followed by an error message. Common failure messages are documented below for each command. The complete list of failure messages for each command can be found in the <a href="manager-howto.html">manager web application documentation. </p> </section> <section name="Manager"> <p>The Manager section has three links: <ul> <li>List Applications - Redisplay a list of web applications.</li> <li>HTML Manager Help - A link to this document. <li>Manager Help - A link to the comprehensive Manager App HOW TO.</li> </ul> </p> </section> <section name="Applications"> <p>The Applications section lists information about all the installed web applications and provides links for managing them. For each web application the following is displayed: <ul> <li>Path - The web applicaton context path. <li>Display Name - The display name for the web application if it has one configured in its "web.xml" file.</li> <li>Running - Whether the web application is running and available (true), or not running and unavailable (false).</li> <li>Sessions - The number of active sessions for remote users of this web application. The number of sessions is a link which when submitted displays more details about session usage by the web application in the Message box.</li> <li>Commands - Lists all commands which can be performed on the web application. Only those commands which can be performed will be listed as a link which can be submitted. No commands can be performed on the manager web application itself. The following commands can be performed: <ul> <li>Start - Start a web application which had been stopped.</li> <li>Stop - Stop a web application which is currently running and make it unavailable.</li> <li>Reload - Reload the web application so that new ".jar" files in <code>/WEB-INF/lib/ or new classes in <code>/WEB-INF/classes/ can be used. <li>Undeploy - Stop and then remove this web application from the server.</li> </ul> </li> </ul> </p> <subsection name="Start"> <p>Signal a stopped application to restart, and make itself available again. Stopping and starting is useful, for example, if the database required by your application becomes temporarily unavailable. It is usually better to stop the web application that relies on this database rather than letting users continuously encounter database exceptions.</p> <p>If this command succeeds, you will see a Message like this:

<source> OK - Started application at context path /examples </source> <p>Otherwise, the Message will start with FAIL and include an error message. Possible causes for problems include: <ul> <li>Encountered exception <blockquote> <p>An exception was encountered trying to start the web application. Check the Tomcat 5 logs for the details.</p> </blockquote> <li>Invalid context path was specified <blockquote> <p>The context path must start with a slash character, unless you are referencing the ROOT web application -- in which case the context path must be a zero-length string.</p> </blockquote> <li>No context exists for path /foo <blockquote> <p>There is no deployed application on the context path that you specified.</p> </blockquote> <li>No context path was specified <blockquote> The <code>path parameter is required. </blockquote> </ul> </p> </subsection> <subsection name="Stop"> <p>Signal an existing application to make itself unavailable, but leave it deployed. Any request that comes in while an application is stopped will see an HTTP error 404, and this application will show as "stopped" on a list applications command.</p> <p>If this command succeeds, you will see a Message like this:

<source> OK - Stopped application at context path /examples </source> <p>Otherwise, the Message will start with FAIL and include an error message. Possible causes for problems include: <ul> <li>Encountered exception <blockquote> <p>An exception was encountered trying to stop the web application. Check the Tomcat 5 logs for the details.</p> </blockquote> <li>Invalid context path was specified <blockquote> <p>The context path must start with a slash character, unless you are referencing the ROOT web application -- in which case the context path must be a zero-length string.</p> </blockquote> <li>No context exists for path /foo <blockquote> <p>There is no deployed application on the context path that you specified.</p> </blockquote> <li>No context path was specified <blockquote> The <code>path parameter is required. </blockquote> </ul> </p> </subsection> <subsection name="Reload"> <p>Signal an existing application to shut itself down and reload. This can be useful when the web application context is not reloadable and you have updated classes or property files in the <code>/WEB-INF/classes directory or when you have added or updated jar files in the <code>/WEB-INF/lib directory. </p> <p>NOTE: The /WEB-INF/web.xml web application configuration file is not checked on a reload; the previous web.xml configuration is used. If you have made changes to your web.xml file you must stop then start the web application. </p> <p>If this command succeeds, you will see a Message like this:

<source> OK - Reloaded application at context path /examples </source> <p>Otherwise, the Message will start with FAIL and include an error message. Possible causes for problems include: <ul> <li>Encountered exception <blockquote> <p>An exception was encountered trying to restart the web application. Check the Tomcat 5 logs for the details.</p> </blockquote> <li>Invalid context path was specified <blockquote> <p>The context path must start with a slash character, unless you are referencing the ROOT web application -- in which case the context path must be a zero-length string.</p> </blockquote> <li>No context exists for path /foo <blockquote> <p>There is no deployed application on the context path that you specified.</p> </blockquote> <li>No context path was specified <blockquote> The <code>path parameter is required. </blockquote> <li>Reload not supported on WAR deployed at path /foo <blockquote> Currently, application reloading (to pick up changes to the classes or <code>web.xml file) is not supported when a web application is installed directly from a WAR file, which happens when the host is configured to not unpack WAR files. As it only works when the web application is installed from an unpacked directory, if you are using a WAR file, you should <code>undeploy and then deploy the application again to pick up your changes. </blockquote> </ul> </p> </subsection> <subsection name="Undeploy"> <p>WARNING - This command will delete the contents of the web application directory and/or ".war" file if it exists within the <code>appBase directory (typically "webapps") for this virtual host </strong>. The web application temporary work directory is also deleted. If you simply want to take an application out of service, you should use the <code>/stop command instead.

<p>Signal an existing application to gracefully shut itself down, and then remove it from Tomcat (which also makes this context path available for reuse later). This command is the logical opposite of the <code>/deploy Ant command, and the related deploy features available in the HTML manager.</p> <p>If this command succeeds, you will see a Message like this:

<source> OK - Undeployed application at context path /examples </source> <p>Otherwise, the Message will start with FAIL and include an error message. Possible causes for problems include: <ul> <li>Encountered exception <blockquote> <p>An exception was encountered trying to undeploy the web application. Check the Tomcat logs for the details.</p> </blockquote> <li>Invalid context path was specified <blockquote> <p>The context path must start with a slash character, unless you are referencing the ROOT web application -- in which case the context path must be a zero-length string.</p> </blockquote> <li>No context exists for path /foo <blockquote> <p>There is no deployed application on the context path that you specified.</p> </blockquote> <li>No context path was specified <blockquote> The <code>path parameter is required. </blockquote> </ul> </p> </subsection> </section> <section name="Deploy"> <p>Web applications can be deployed using files or directories located on the Tomcat server or you can upload a web application archive (WAR) file to the server.</p> <p>To install an application, fill in the appropriate fields for the type of install you want to do and then submit it using the <i>Install button.</p> <subsection name="Deploy directory or WAR file located on server"> <p>Deploy and start a new web application, attached to the specified Context Path:</i> (which must not be in use by any other web application). This command is the logical opposite of the <em>Undeploy command.

<p>There are a number of different ways the deploy command can be used.

<h3>Deploy a Directory or WAR by URL <p>Install a web application directory or ".war" file located on the Tomcat server. If no <i>Context Path
is specified, the directory name or the war file name without the ".war" extension is used as the path. The <i>WAR or Directory URL specifies a URL (including the file: scheme) for either a directory or a web application archive (WAR) file. The supported syntax for a URL referring to a WAR file is described on the Javadocs page for the <code>java.net.JarURLConnection class. Use only URLs that refer to the entire WAR file.</p> <p>In this example the web application located in the directory <code>C:\path\to\foo on the Tomcat server (running on Windows) is deployed as the web application context named <code>/footoo. <source> Context Path: /footoo WAR or Directory URL: file:C:/path/to/foo </source> </p> <p>In this example the ".war" file /path/to/bar.war on the Tomcat server (running on Unix) is deployed as the web application context named <code>/bar. Notice that there is no path parameter so the context path defaults to the name of the web application archive file without the ".war" extension. <source> WAR or Directory URL: jar:file:/path/to/bar.war!/ </source> </p> <h3>Deploy a Directory or War from the Host appBase <p>Install a web application directory or ".war" file located in your Host appBase directory. If no <i>Context Path is specified the directory name or the war file name without the ".war" extension is used as the path.</p> <p>In this example the web application located in a subdirectory named <code>foo in the Host appBase directory of the Tomcat server is deployed as the web application context named <code>/foo. Notice that there is no <code>path parameter so the context path defaults to the name of the web application directory. <source> WAR or Directory URL: foo </source> </p> <p>In this example the ".war" file bar.war located in your Host appBase directory on the Tomcat server is deployed as the web application context named <code>/bartoo. <source> Context Path: /bartoo WAR or Directory URL: bar.war </source> </p> <h3>Deploy using a Context configuration ".xml" file <p>If the Host deployXML flag is set to true, you can install a web application using a Context configuration ".xml" file and an optional ".war" file or web application directory. The <i>Context Path is not used when installing a web application using a context ".xml" configuration file.</p> <p>A Context configuration ".xml" file can contain valid XML for a web application Context just as if it were configured in your Tomcat <code>server.xml configuration file. Here is an example for Tomcat running on Windows: <source> <Context path="/foobar" docBase="C:\path\to\application\foobar" debug="0"> <!-- Link to the user database we will get roles from --> <ResourceLink name="users" global="UserDatabase" type="org.apache.catalina.UserDatabase"/> </Context> </source> </p> <p>Use of the WAR or Directory URL is optional. When used to select a web application ".war" file or directory it overrides any docBase configured in the context configuration ".xml" file.</p> <p>Here is an example of installing an application using a Context configuration ".xml" file for Tomcat running on Windows. <source> XML Configuration file URL: file:C:/path/to/context.xml </source> </p> <p>Here is an example of installing an application using a Context configuration ".xml" file and a web application ".war" file located on the server (Tomcat running on Unix). <source> XML Configuration file URL: file:/path/to/context.xml WAR or Directory URL: jar:file:/path/to/bar.war!/ </source> </p> </subsection> <subsection name="Upload a WAR file to install"> <p>Upload a WAR file from your local system and install it into the appBase for your Host. The name of the WAR file without the ".war" extension is used as the context path name.</p> <p>Use the Browse button to select a WAR file to upload to the server from your local desktop system.</p> <p>The .WAR file may include Tomcat specific deployment configuration, by including a Context configuration XML file in <code>/META-INF/context.xml.

<p>Upload of a WAR file could fail for the following reasons:

<ul> <li>File uploaded must be a .war <blockquote> <p>The upload install will only accept files which have the filename extension of ".war".</p> </blockquote> <li>War file already exists on server <blockquote> <p>If a war file of the same name already exists in your Host's appBase the upload will fail. Either undeploy the existing war file from your Host's appBase or upload the new war file using a different name.</p> </blockquote> <li>File upload failed, no file <blockquote> <p>The file upload failed, no file was received by the server.

</blockquote> <li>Install Upload Failed, Exception: <blockquote> <p>The war file upload or install failed with a Java Exception. The exception message will be listed.</p> </blockquote> </ul> </subsection> <subsection name="Deployment Notes"> <p>If the Host is configured with unpackWARs=true and you install a war file, the war will be unpacked into a directory in your Host appBase directory.</p> <p>If the application war or directory is deployed in your Host appBase directory and either the Host is configured with autoDeploy=true or liveDeploy=true, the Context path must match the directory name or war file name without the ".war" extension.</p> <p>For security when untrusted users can manage web applications, the Host deployXML flag can be set to false. This prevents untrusted users from installing web applications using a configuration XML file and also prevents them from installing application directories or ".war" files located outside of their Host appBase.</p> </subsection> <subsection name="Deploy Message"> <p>If deployment and startup is successful, you will receive a Message like this:</p> <source> OK - Deployed application at context path /foo </source> <p>Otherwise, the Message will start with FAIL and include an error message. Possible causes for problems include:</p> <ul> <li>Application already exists at path /foo <blockquote> <p>The context paths for all currently running web applications must be unique. Therefore, you must either undeploy the existing web application using this context path, or choose a different context path for the new one.</p> </blockquote> <li>Document base does not exist or is not a readable directory <blockquote> <p>The URL specified by the WAR or Directory URL: field must identify a directory on this server that contains the "unpacked" version of a web application, or the absolute URL of a web application archive (WAR) file that contains this application. Correct the value entered for the <i>WAR or Directory URL: field.

</blockquote> <li>Encountered exception <blockquote> <p>An exception was encountered trying to start the new web application. Check the Tomcat 5 logs for the details, but likely explanations include problems parsing your <code>/WEB-INF/web.xml file, or missing classes encountered when initializing application event listeners and filters.</p> </blockquote> <li>Invalid application URL was specified <blockquote> <p>The URL for the WAR or Directory URL: field that you specified was not valid. Such URLs must start with <code>file:, and URLs for a WAR file must end in ".war".</p> </blockquote> <li>Invalid context path was specified <blockquote> <p>The context path must start with a slash character, unless you are referencing the ROOT web application -- in which case the context path must be a "/" string.</p> </blockquote> <li>Context path must match the directory or WAR file name: <blockquote> If the application war or directory is deployed in your Host appBase directory and either the Host is configured with autoDeploy=true or liveDeploy=true, the Context path must match the directory name or war file name without the ".war" extension. </blockquote> <li>Only web applications in the Host web application directory can be deployed</em> <blockquote> If the Host deployXML flag is set to false this error will happen if an attempt is made to install a web application directory or ".war" file outside of the Host appBase directory. </blockquote> </ul> </subsection> </section> <section name="Server Information"> <p>This section displays information about Tomcat, the operating system of the server Tomcat is hosted on, and the Java Virtual Machine Tomcat is running in.</p> </section> </body> </document>

Other Tomcat examples (source code examples)

Here is a short list of links related to this Tomcat html-manager-howto.xml source code file:

... this post is sponsored by my books ...

#1 New Release!

FP Best Seller

 

new blog posts

 

Copyright 1998-2021 Alvin Alexander, alvinalexander.com
All Rights Reserved.

A percentage of advertising revenue from
pages under the /java/jwarehouse URI on this website is
paid back to open source projects.