<?xml version="1.0" encoding="UTF-8"?>
<!--
  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="index.html">

  &project;

  <properties>
    <author email="craigmcc@apache.org">Craig R. McClanahan</author>
    <author email="remm@apache.org">Remy Maucherat</author>
    <author email="yoavs@apache.org">Yoav Shapira</author>
    <title>Documentation Index</title>
  </properties>

<body>

<section name="Introduction">

<p>This is the top-level entry point of the documentation bundle for the
<strong>Apache Tomcat</strong> Servlet/JSP container.  Apache Tomcat version
<version-major-minor/> implements the Servlet 4.0 and JavaServer Pages 2.3
<a href="https://cwiki.apache.org/confluence/display/TOMCAT/Specifications">specifications</a> from the
<a href="https://www.jcp.org">Java Community Process</a>, and includes many
additional features that make it a useful platform for developing and deploying
web applications and web services.</p>

<p>Select one of the links from the navigation menu (to the left) to drill
down to the more detailed documentation that is available.  Each available
manual is described in more detail below.</p>

</section>


<section name="Apache Tomcat User Guide">

<p>The following documents will assist you in downloading and installing
Apache Tomcat, and using many of the Apache Tomcat features.</p>

<ol>
<li><a href="introduction.html"><strong>Introduction</strong></a> - A
    brief, high level, overview of Apache Tomcat.</li>
<li><a href="setup.html"><strong>Setup</strong></a> - How to install and run
    Apache Tomcat on a variety of platforms.</li>
<li><a href="appdev/index.html"><strong>First web application</strong></a>
    - An introduction to the concepts of a <em>web application</em> as defined
    in the Servlet Specification.  Covers basic organization of your web application
    source tree, the structure of a web application archive, and an
    introduction to the web application deployment descriptor
    (<code>/WEB-INF/web.xml</code>).</li>
<li><a href="deployer-howto.html"><strong>Deployer</strong></a> -
    Operating the Apache Tomcat Deployer to deploy, precompile, and validate web
    applications.</li>
<li><a href="manager-howto.html"><strong>Manager</strong></a> -
    Operating the <strong>Manager</strong> web app to deploy, undeploy, and
    redeploy applications while Apache Tomcat is running.</li>
<li><a href="host-manager-howto.html"><strong>Host Manager</strong></a> -
    Operating the <strong>Host Manager</strong> web app to add and remove
    virtual hosts while Apache Tomcat is running.</li>
<li><a href="realm-howto.html"><strong>Realms and Access Control</strong></a>
    - Description of how to configure <em>Realms</em> (databases of users,
    passwords, and their associated roles) for use in web applications that
    utilize <em>Container Managed Security</em>.</li>
<li><a href="security-manager-howto.html"><strong>Security Manager</strong></a>
    - Configuring and using a Java Security Manager to
    support fine-grained control over the behavior of your web applications.
    </li>
<li><a href="jndi-resources-howto.html"><strong>JNDI Resources</strong></a>
    - Configuring standard and custom resources in the JNDI naming context
    that is provided to each web application.</li>
<li><a href="jndi-datasource-examples-howto.html">
    <strong>JDBC DataSource</strong></a>
    - Configuring a JNDI DataSource with a DB connection pool.
    Examples for many popular databases.</li>
<li><a href="class-loader-howto.html"><strong>Classloading</strong></a>
    - Information about class loading in Apache Tomcat, including where to place
    your application classes so that they are visible.</li>
<li><a href="jasper-howto.html"><strong>JSPs</strong></a>
    - Information about Jasper configuration, as well as the JSP compiler
    usage.</li>
<li><a href="ssl-howto.html"><strong>SSL/TLS</strong></a> -
    Installing and configuring SSL/TLS support so that your Apache Tomcat will
    serve requests using the <code>https</code> protocol.</li>
<li><a href="ssi-howto.html"><strong>SSI</strong></a> -
    Using Server Side Includes in Apache Tomcat.</li>
<li><a href="cgi-howto.html"><strong>CGI</strong></a> -
    Using CGIs with Apache Tomcat.</li>
<li><a href="proxy-howto.html"><strong>Proxy Support</strong></a> -
    Configuring Apache Tomcat to run behind a proxy server (or a web server
    functioning as a proxy server).</li>
<li><a href="mbeans-descriptors-howto.html"><strong>MBeans Descriptors</strong></a> -
    Configuring MBean descriptors files for custom components.</li>
<li><a href="default-servlet.html"><strong>Default Servlet</strong></a> -
    Configuring the default servlet and customizing directory listings.</li>
<li><a href="cluster-howto.html"><strong>Apache Tomcat Clustering</strong></a> -
    Enable session replication in a Apache Tomcat environment.</li>
<li><a href="balancer-howto.html"><strong>Balancer</strong></a> -
    Configuring, using, and extending the load balancer application.</li>
<li><a href="connectors.html"><strong>Connectors</strong></a> -
    Connectors available in Apache Tomcat, and native web server integration.</li>
<li><a href="monitoring.html"><strong>Monitoring and Management</strong></a> -
    Enabling JMX Remote support, and using tools to monitor and manage Apache Tomcat.</li>
<li><a href="logging.html"><strong>Logging</strong></a> -
    Configuring logging in Apache Tomcat.</li>
<li><a href="apr.html"><strong>Apache Portable Runtime</strong></a> -
    Using APR to provide superior performance, scalability and better
    integration with native server technologies.</li>
<li><a href="virtual-hosting-howto.html"><strong>Virtual Hosting</strong></a> -
    Configuring virtual hosting in Apache Tomcat.</li>
<li><a href="aio.html"><strong>Advanced IO</strong></a> -
    Extensions available over regular, blocking IO.</li>
<li><a href="maven-jars.html"><strong>Using Tomcat libraries with Maven</strong></a> -
    Obtaining Tomcat jars through Maven.</li>
<li><a href="security-howto.html"><strong>Security Considerations</strong></a> -
    Options to consider when securing an Apache Tomcat installation.</li>
<li><a href="windows-service-howto.html"><strong>Windows Service</strong></a> -
    Running Tomcat as a service on Microsoft Windows.</li>
<li><a href="windows-auth-howto.html"><strong>Windows Authentication</strong></a> -
    Configuring Tomcat to use integrated Windows authentication.</li>
<li><a href="jdbc-pool.html"><strong>High Concurrency JDBC Pool</strong></a> -
    Configuring Tomcat to use an alternative JDBC pool.</li>
<li><a href="web-socket-howto.html"><strong>WebSocket support</strong></a> -
    Developing WebSocket applications for Apache Tomcat.</li>
<li><a href="rewrite.html"><strong>URL rewrite</strong></a> -
    Using the regexp based rewrite valve for conditional URL and host rewrite.</li>
<li><a href="cdi.html"><strong>CDI and JAX-RS support</strong></a> -
    Configuring CDI,JAX-RS and Eclipse Microprofile support.</li>
<li><a href="graal.html"><strong>AOT compilation support</strong></a> -
    Ahead of Time compilation support with GraalVM/Native Image.</li>
</ol>

</section>


<section name="Reference">

<p>The following documents are aimed at <em>System Administrators</em> who
are responsible for installing, configuring, and operating an Apache Tomcat server.
</p>
<ul>
<li><a href="RELEASE-NOTES.txt"><strong>Release notes</strong></a>
    - Known issues in this Apache Tomcat release.
    </li>
<li><a href="config/index.html"><strong>Apache Tomcat Server Configuration Reference</strong></a>
    - Reference manual that documents all available elements and attributes
      that may be placed into the Apache Tomcat <code>conf/server.xml</code> file.
    </li>
<li><a href="https://tomcat.apache.org/connectors-doc/index.html"><strong>JK Documentation</strong></a>
    - Complete documentation and HOWTOs on the JK native webserver connector,
      used to interface Apache Tomcat with servers like Apache HTTPd, IIS
      and others.</li>
<li>Servlet 4.0
    <a href="https://jcp.org/aboutJava/communityprocess/final/jsr369/index.html">
    <strong>Specification</strong></a> and
    <a href="https://javaee.github.io/javaee-spec/javadocs/javax/servlet/package-summary.html">
    <strong>Javadoc</strong></a>
    </li>
<li>JSP 2.3
    <a href="https://jcp.org/aboutJava/communityprocess/mrel/jsr245/index2.html">
    <strong>Specification</strong></a> and
    <a href="http://docs.oracle.com/javaee/7/api/javax/servlet/jsp/package-summary.html">
    <strong>Javadoc</strong></a>
    </li>
<li>EL 3.0
    <a href="https://jcp.org/aboutJava/communityprocess/final/jsr341/index.html">
    <strong>Specification</strong></a> and
    <a href="http://docs.oracle.com/javaee/7/api/javax/el/package-summary.html">
    <strong>Javadoc</strong></a>
    </li>
<li>WebSocket 1.1
    <a href="https://jcp.org/aboutJava/communityprocess/mrel/jsr356/index.html">
    <strong>Specification</strong></a> and
    <a href="http://docs.oracle.com/javaee/7/api/javax/websocket/package-summary.html">
    <strong>Javadoc</strong></a>
    </li>
<li>JASPIC 1.1
    <a href="https://jcp.org/aboutJava/communityprocess/mrel/jsr196/index.html">
    <strong>Specification</strong></a> and
    <a href="http://docs.oracle.com/javaee/7/api/javax/security/auth/message/package-summary.html">
    <strong>Javadoc</strong></a>
    </li>
</ul>

</section>


<section name="Apache Tomcat Developers">

<p>The following documents are for Java developers who wish to contribute to
the development of the <em>Apache Tomcat</em> project.</p>
<ul>
<li><a href="building.html"><strong>Building from Source</strong></a> -
    Details the steps necessary to download Apache Tomcat source code (and the
    other packages that it depends on), and build a binary distribution from
    those sources.
    </li>
<li><a href="changelog.html"><strong>Changelog</strong></a> - Details the
    changes made to Apache Tomcat.
    </li>
<li><a href="https://wiki.apache.org/tomcat/TomcatVersions"><strong>Status</strong></a> -
    Apache Tomcat development status.
    </li>
<li><a href="developers.html"><strong>Developers</strong></a> - List of active
    Apache Tomcat contributors.
    </li>
<li><a href="api/index.html"><strong>Javadocs</strong></a>
    - Javadoc API documentation for Apache Tomcat's internals.</li>
<li><a href="architecture/index.html"><strong>Apache Tomcat Architecture</strong></a>
    - Documentation of the Apache Tomcat Server Architecture.</li>
</ul>

</section>


</body>
</document>
