blob: fed25aa15e7727e2e4e23726009bab863fa09772 [file] [log] [blame]
// ========================================================================
// Copyright (c) 1995-2017 Mort Bay Consulting Pty. Ltd.
// ========================================================================
// All rights reserved. This program and the accompanying materials
// are made available under the terms of the Eclipse Public License v1.0
// and Apache License v2.0 which accompanies this distribution.
//
// The Eclipse Public License is available at
// http://www.eclipse.org/legal/epl-v10.html
//
// The Apache License v2.0 is available at
// http://www.opensource.org/licenses/apache2.0.php
//
// You may elect to redistribute this code under either of these licenses.
// ========================================================================
[[jetty-xml-config]]
=== `jetty.xml`
`jetty.xml` is the default configuration file for Jetty, typically located at ` $JETTY_HOME/etc/jetty.xml`. Usually the `jetty.xml` configures:
* The Server class (or subclass if extended) and global options.
* A ThreadPool (min and max thread).
* Connectors (ports, timeouts, buffer sizes, protocol).
* The handler structure (default handlers and/or a contextHandlerCollections).
* The deployment manager that scans for and deploys webapps and contexts.
* Login services that provide authentication checking.
* A request log.
Not all Jetty features are configured in `jetty.xml`.
There are several optional configuration files that share the same format as `jetty.xml` and, if specified, concatenate to it.
These configuration files are also stored in `$JETTY_HOME/etc/`, and examples of them are in http://github.com/eclipse/jetty.project/jetty-server/src/main/config/etc/[Github Repository].
The selection of which configuration files to use is controlled by xref:advanced-start-features[] and the process of merging configuration is described in xref:jetty-xml-usage[].
[[root-element-jetty-xml]]
==== Root Element
`jetty.xml` configures an instance of the `Jetty org.eclipse.jetty.server.Server.`
[source, xml, subs="{sub-order}"]
----
<?xml version="1.0"?>
<!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" "http://www.eclipse.org/jetty/configure.dtd">
<Configure id="Server" class="org.eclipse.jetty.server.Server">
...
</Configure>
----
[[jetty-xml-examples]]
==== Examples
`$JETTY_HOME/etc` contains the default `jetty.xml`, as well as other sample configuration files (`jetty-*.xml`) which can be passed to the server via the command line.
[[jetty-xml-additional-resources]]
==== Additional Resources
* xref:jetty-xml-syntax[] in-depth reference for Jetty-specific configuration XML syntax.
* xref:jetty-xml-config[] configuration file for configuring the entire server