<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (11.0.10) on Tue Mar 30 10:43:01 CDT 2021 -->
<title>ContextHandler (Jetty :: Project 9.4.39.v20210325 API)</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2021-03-30">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../jquery/jquery-ui.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../jquery/jszip/dist/jszip.min.js"></script>
<script type="text/javascript" src="../../../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
<!--[if IE]>
<script type="text/javascript" src="../../../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
<![endif]-->
<script type="text/javascript" src="../../../../../jquery/jquery-3.5.1.js"></script>
<script type="text/javascript" src="../../../../../jquery/jquery-ui.js"></script>
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="ContextHandler (Jetty :: Project 9.4.39.v20210325 API)";
        }
    }
    catch(err) {
    }
//-->
var data = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":10,"i19":10,"i20":10,"i21":10,"i22":10,"i23":10,"i24":10,"i25":10,"i26":10,"i27":10,"i28":10,"i29":10,"i30":10,"i31":9,"i32":10,"i33":10,"i34":9,"i35":10,"i36":10,"i37":10,"i38":10,"i39":10,"i40":10,"i41":10,"i42":10,"i43":10,"i44":10,"i45":10,"i46":10,"i47":10,"i48":10,"i49":10,"i50":10,"i51":10,"i52":10,"i53":9,"i54":10,"i55":10,"i56":10,"i57":10,"i58":10,"i59":10,"i60":10,"i61":10,"i62":10,"i63":10,"i64":10,"i65":10,"i66":10,"i67":10,"i68":10,"i69":10,"i70":10,"i71":10,"i72":10,"i73":10,"i74":10,"i75":10,"i76":10,"i77":10,"i78":10,"i79":10,"i80":10,"i81":10,"i82":10,"i83":10,"i84":10,"i85":10,"i86":10,"i87":10,"i88":10,"i89":42,"i90":10,"i91":10,"i92":10,"i93":10,"i94":10,"i95":10,"i96":9,"i97":10,"i98":10,"i99":10,"i100":10,"i101":10,"i102":10,"i103":10};
var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"],32:["t6","Deprecated Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
var pathtoroot = "../../../../../";
var useModuleDirectories = false;
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<header role="banner">
<nav role="navigation">
<div class="fixedNav">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a id="navbar.top">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.top.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/ContextHandler.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<ul class="navListSearch">
<li><label for="search">SEARCH:</label>
<input type="text" id="search" value="search" disabled="disabled">
<input type="reset" id="reset" value="reset" disabled="disabled">
</li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a id="skip.navbar.top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
</div>
<div class="navPadding">&nbsp;</div>
<script type="text/javascript"><!--
$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
//-->
</script>
</nav>
</header>
<!-- ======== START OF CLASS DATA ======== -->
<main role="main">
<div class="header">
<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">org.eclipse.jetty.server.handler</a></div>
<h2 title="Class ContextHandler" class="title">Class ContextHandler</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li><a href="../../util/component/AbstractLifeCycle.html" title="class in org.eclipse.jetty.util.component">org.eclipse.jetty.util.component.AbstractLifeCycle</a></li>
<li>
<ul class="inheritance">
<li><a href="../../util/component/ContainerLifeCycle.html" title="class in org.eclipse.jetty.util.component">org.eclipse.jetty.util.component.ContainerLifeCycle</a></li>
<li>
<ul class="inheritance">
<li><a href="AbstractHandler.html" title="class in org.eclipse.jetty.server.handler">org.eclipse.jetty.server.handler.AbstractHandler</a></li>
<li>
<ul class="inheritance">
<li><a href="AbstractHandlerContainer.html" title="class in org.eclipse.jetty.server.handler">org.eclipse.jetty.server.handler.AbstractHandlerContainer</a></li>
<li>
<ul class="inheritance">
<li><a href="HandlerWrapper.html" title="class in org.eclipse.jetty.server.handler">org.eclipse.jetty.server.handler.HandlerWrapper</a></li>
<li>
<ul class="inheritance">
<li><a href="ScopedHandler.html" title="class in org.eclipse.jetty.server.handler">org.eclipse.jetty.server.handler.ScopedHandler</a></li>
<li>
<ul class="inheritance">
<li>org.eclipse.jetty.server.handler.ContextHandler</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><code><a href="../Handler.html" title="interface in org.eclipse.jetty.server">Handler</a></code>, <code><a href="../HandlerContainer.html" title="interface in org.eclipse.jetty.server">HandlerContainer</a></code>, <code><a href="../../util/Attributes.html" title="interface in org.eclipse.jetty.util">Attributes</a></code>, <code><a href="../../util/component/Container.html" title="interface in org.eclipse.jetty.util.component">Container</a></code>, <code><a href="../../util/component/Destroyable.html" title="interface in org.eclipse.jetty.util.component">Destroyable</a></code>, <code><a href="../../util/component/Dumpable.html" title="interface in org.eclipse.jetty.util.component">Dumpable</a></code>, <code><a href="../../util/component/Dumpable.DumpableContainer.html" title="interface in org.eclipse.jetty.util.component">Dumpable.DumpableContainer</a></code>, <code><a href="../../util/component/Graceful.html" title="interface in org.eclipse.jetty.util.component">Graceful</a></code>, <code><a href="../../util/component/LifeCycle.html" title="interface in org.eclipse.jetty.util.component">LifeCycle</a></code></dd>
</dl>
<dl>
<dt>Direct Known Subclasses:</dt>
<dd><code><a href="../../http/spi/HttpSpiContextHandler.html" title="class in org.eclipse.jetty.http.spi">HttpSpiContextHandler</a></code>, <code><a href="MovedContextHandler.html" title="class in org.eclipse.jetty.server.handler">MovedContextHandler</a></code>, <code><a href="../../servlet/ServletContextHandler.html" title="class in org.eclipse.jetty.servlet">ServletContextHandler</a></code></dd>
</dl>
<hr>
<pre><a href="../../util/annotation/ManagedObject.html" title="annotation in org.eclipse.jetty.util.annotation">@ManagedObject</a>("URI Context")
public class <span class="typeNameLabel">ContextHandler</span>
extends <a href="ScopedHandler.html" title="class in org.eclipse.jetty.server.handler">ScopedHandler</a>
implements <a href="../../util/Attributes.html" title="interface in org.eclipse.jetty.util">Attributes</a>, <a href="../../util/component/Graceful.html" title="interface in org.eclipse.jetty.util.component">Graceful</a></pre>
<div class="block">ContextHandler.

 <p>
 This handler wraps a call to handle by setting the context and servlet path, plus setting the context classloader.
 </p>
 <p>
 If the context init parameter <code>org.eclipse.jetty.server.context.ManagedAttributes</code> is set to a comma separated list of names, then they are treated as
 context attribute names, which if set as attributes are passed to the servers Container so that they may be managed with JMX.
 </p>
 <p>
 The maximum size of a form that can be processed by this context is controlled by the system properties <code>org.eclipse.jetty.server.Request.maxFormKeys</code> and
 <code>org.eclipse.jetty.server.Request.maxFormContentSize</code>. These can also be configured with <a href="#setMaxFormContentSize(int)"><code>setMaxFormContentSize(int)</code></a> and <a href="#setMaxFormKeys(int)"><code>setMaxFormKeys(int)</code></a>
 </p>
 <p>
 The executor is made available via a context attributed <code>org.eclipse.jetty.server.Executor</code>.
 </p>
 <p>
 By default, the context is created with alias checkers for <a href="AllowSymLinkAliasChecker.html" title="class in org.eclipse.jetty.server.handler"><code>AllowSymLinkAliasChecker</code></a> (unix only) and <a href="ContextHandler.ApproveNonExistentDirectoryAliases.html" title="class in org.eclipse.jetty.server.handler"><code>ContextHandler.ApproveNonExistentDirectoryAliases</code></a>. If
 these alias checkers are not required, then <a href="#clearAliasChecks()"><code>clearAliasChecks()</code></a> or <a href="#setAliasChecks(java.util.List)"><code>setAliasChecks(List)</code></a> should be called.
 </p></div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== NESTED CLASS SUMMARY ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="nested.class.summary">
<!--   -->
</a>
<h3>Nested Class Summary</h3>
<table class="memberSummary">
<caption><span>Nested Classes</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Class</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static interface&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="ContextHandler.AliasCheck.html" title="interface in org.eclipse.jetty.server.handler">ContextHandler.AliasCheck</a></span></code></th>
<td class="colLast">
<div class="block">Interface to check aliases</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static class&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="ContextHandler.ApproveAliases.html" title="class in org.eclipse.jetty.server.handler">ContextHandler.ApproveAliases</a></span></code></th>
<td class="colLast">
<div class="block">Approve all aliases.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static class&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="ContextHandler.ApproveNonExistentDirectoryAliases.html" title="class in org.eclipse.jetty.server.handler">ContextHandler.ApproveNonExistentDirectoryAliases</a></span></code></th>
<td class="colLast">
<div class="block">Approve Aliases of a non existent directory.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static class&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="ContextHandler.Availability.html" title="enum in org.eclipse.jetty.server.handler">ContextHandler.Availability</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>class&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="ContextHandler.Context.html" title="class in org.eclipse.jetty.server.handler">ContextHandler.Context</a></span></code></th>
<td class="colLast">
<div class="block">Context.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static interface&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="ContextHandler.ContextScopeListener.html" title="interface in org.eclipse.jetty.server.handler">ContextHandler.ContextScopeListener</a></span></code></th>
<td class="colLast">
<div class="block">Listener for all threads entering context scope, including async IO callbacks</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static class&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="ContextHandler.ContextStatus.html" title="enum in org.eclipse.jetty.server.handler">ContextHandler.ContextStatus</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static class&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="ContextHandler.StaticContext.html" title="class in org.eclipse.jetty.server.handler">ContextHandler.StaticContext</a></span></code></th>
<td class="colLast">
<div class="block">A simple implementation of ServletContext that is used when there is no
 ContextHandler.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a id="nested.classes.inherited.from.class.org.eclipse.jetty.server.handler.AbstractHandler">
<!--   -->
</a>
<h3>Nested classes/interfaces inherited from class&nbsp;org.eclipse.jetty.server.handler.<a href="AbstractHandler.html" title="class in org.eclipse.jetty.server.handler">AbstractHandler</a></h3>
<code><a href="AbstractHandler.ErrorDispatchHandler.html" title="class in org.eclipse.jetty.server.handler">AbstractHandler.ErrorDispatchHandler</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="nested.classes.inherited.from.class.org.eclipse.jetty.util.component.AbstractLifeCycle">
<!--   -->
</a>
<h3>Nested classes/interfaces inherited from class&nbsp;org.eclipse.jetty.util.component.<a href="../../util/component/AbstractLifeCycle.html" title="class in org.eclipse.jetty.util.component">AbstractLifeCycle</a></h3>
<code><a href="../../util/component/AbstractLifeCycle.AbstractLifeCycleListener.html" title="class in org.eclipse.jetty.util.component">AbstractLifeCycle.AbstractLifeCycleListener</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="nested.classes.inherited.from.class.org.eclipse.jetty.util.Attributes">
<!--   -->
</a>
<h3>Nested classes/interfaces inherited from interface&nbsp;org.eclipse.jetty.util.<a href="../../util/Attributes.html" title="interface in org.eclipse.jetty.util">Attributes</a></h3>
<code><a href="../../util/Attributes.Wrapper.html" title="class in org.eclipse.jetty.util">Attributes.Wrapper</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="nested.classes.inherited.from.class.org.eclipse.jetty.util.component.Container">
<!--   -->
</a>
<h3>Nested classes/interfaces inherited from interface&nbsp;org.eclipse.jetty.util.component.<a href="../../util/component/Container.html" title="interface in org.eclipse.jetty.util.component">Container</a></h3>
<code><a href="../../util/component/Container.InheritedListener.html" title="interface in org.eclipse.jetty.util.component">Container.InheritedListener</a>, <a href="../../util/component/Container.Listener.html" title="interface in org.eclipse.jetty.util.component">Container.Listener</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="nested.classes.inherited.from.class.org.eclipse.jetty.util.component.Dumpable">
<!--   -->
</a>
<h3>Nested classes/interfaces inherited from interface&nbsp;org.eclipse.jetty.util.component.<a href="../../util/component/Dumpable.html" title="interface in org.eclipse.jetty.util.component">Dumpable</a></h3>
<code><a href="../../util/component/Dumpable.DumpableContainer.html" title="interface in org.eclipse.jetty.util.component">Dumpable.DumpableContainer</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="nested.classes.inherited.from.class.org.eclipse.jetty.util.component.Graceful">
<!--   -->
</a>
<h3>Nested classes/interfaces inherited from interface&nbsp;org.eclipse.jetty.util.component.<a href="../../util/component/Graceful.html" title="interface in org.eclipse.jetty.util.component">Graceful</a></h3>
<code><a href="../../util/component/Graceful.Shutdown.html" title="class in org.eclipse.jetty.util.component">Graceful.Shutdown</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="nested.classes.inherited.from.class.org.eclipse.jetty.util.component.LifeCycle">
<!--   -->
</a>
<h3>Nested classes/interfaces inherited from interface&nbsp;org.eclipse.jetty.util.component.<a href="../../util/component/LifeCycle.html" title="interface in org.eclipse.jetty.util.component">LifeCycle</a></h3>
<code><a href="../../util/component/LifeCycle.Listener.html" title="interface in org.eclipse.jetty.util.component">LifeCycle.Listener</a></code></li>
</ul>
</li>
</ul>
</section>
<!-- =========== FIELD SUMMARY =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="field.summary">
<!--   -->
</a>
<h3>Field Summary</h3>
<table class="memberSummary">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Field</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="ContextHandler.ContextStatus.html" title="enum in org.eclipse.jetty.server.handler">ContextHandler.ContextStatus</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#_contextStatus">_contextStatus</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="ContextHandler.Context.html" title="class in org.eclipse.jetty.server.handler">ContextHandler.Context</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#_scontext">_scontext</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#DEFAULT_LISTENER_TYPE_INDEX">DEFAULT_LISTENER_TYPE_INDEX</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#DEFAULT_MAX_FORM_CONTENT_SIZE">DEFAULT_MAX_FORM_CONTENT_SIZE</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#DEFAULT_MAX_FORM_KEYS">DEFAULT_MAX_FORM_KEYS</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#EXTENDED_LISTENER_TYPE_INDEX">EXTENDED_LISTENER_TYPE_INDEX</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#MANAGED_ATTRIBUTES">MANAGED_ATTRIBUTES</a></span></code></th>
<td class="colLast">
<div class="block">If a context attribute with this name is set, it is interpreted as a comma separated list of attribute name.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#MAX_FORM_CONTENT_SIZE_KEY">MAX_FORM_CONTENT_SIZE_KEY</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#MAX_FORM_KEYS_KEY">MAX_FORM_KEYS_KEY</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.Class&lt;?&gt;[]</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#SERVLET_LISTENER_TYPES">SERVLET_LISTENER_TYPES</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#SERVLET_MAJOR_VERSION">SERVLET_MAJOR_VERSION</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#SERVLET_MINOR_VERSION">SERVLET_MINOR_VERSION</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a id="fields.inherited.from.class.org.eclipse.jetty.server.handler.ScopedHandler">
<!--   -->
</a>
<h3>Fields inherited from class&nbsp;org.eclipse.jetty.server.handler.<a href="ScopedHandler.html" title="class in org.eclipse.jetty.server.handler">ScopedHandler</a></h3>
<code><a href="ScopedHandler.html#_nextScope">_nextScope</a>, <a href="ScopedHandler.html#_outerScope">_outerScope</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="fields.inherited.from.class.org.eclipse.jetty.server.handler.HandlerWrapper">
<!--   -->
</a>
<h3>Fields inherited from class&nbsp;org.eclipse.jetty.server.handler.<a href="HandlerWrapper.html" title="class in org.eclipse.jetty.server.handler">HandlerWrapper</a></h3>
<code><a href="HandlerWrapper.html#_handler">_handler</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="fields.inherited.from.class.org.eclipse.jetty.util.component.AbstractLifeCycle">
<!--   -->
</a>
<h3>Fields inherited from class&nbsp;org.eclipse.jetty.util.component.<a href="../../util/component/AbstractLifeCycle.html" title="class in org.eclipse.jetty.util.component">AbstractLifeCycle</a></h3>
<code><a href="../../util/component/AbstractLifeCycle.html#FAILED">FAILED</a>, <a href="../../util/component/AbstractLifeCycle.html#RUNNING">RUNNING</a>, <a href="../../util/component/AbstractLifeCycle.html#STARTED">STARTED</a>, <a href="../../util/component/AbstractLifeCycle.html#STARTING">STARTING</a>, <a href="../../util/component/AbstractLifeCycle.html#STOPPED">STOPPED</a>, <a href="../../util/component/AbstractLifeCycle.html#STOPPING">STOPPING</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="fields.inherited.from.class.org.eclipse.jetty.util.component.Dumpable">
<!--   -->
</a>
<h3>Fields inherited from interface&nbsp;org.eclipse.jetty.util.component.<a href="../../util/component/Dumpable.html" title="interface in org.eclipse.jetty.util.component">Dumpable</a></h3>
<code><a href="../../util/component/Dumpable.html#KEY">KEY</a></code></li>
</ul>
</li>
</ul>
</section>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="constructor.summary">
<!--   -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier</th>
<th class="colSecond" scope="col">Constructor</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>&nbsp;</code></td>
<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E()">ContextHandler</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>&nbsp;</code></td>
<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(java.lang.String)">ContextHandler</a></span>&#8203;(java.lang.String&nbsp;contextPath)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected </code></td>
<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(org.eclipse.jetty.server.handler.ContextHandler.Context)">ContextHandler</a></span>&#8203;(<a href="ContextHandler.Context.html" title="class in org.eclipse.jetty.server.handler">ContextHandler.Context</a>&nbsp;context)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>&nbsp;</code></td>
<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(org.eclipse.jetty.server.HandlerContainer,java.lang.String)">ContextHandler</a></span>&#8203;(<a href="../HandlerContainer.html" title="interface in org.eclipse.jetty.server">HandlerContainer</a>&nbsp;parent,
              java.lang.String&nbsp;contextPath)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</table>
</li>
</ul>
</section>
<!-- ========== METHOD SUMMARY =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t6" class="tableTab"><span><a href="javascript:show(32);">Deprecated Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#addAliasCheck(org.eclipse.jetty.server.handler.ContextHandler.AliasCheck)">addAliasCheck</a></span>&#8203;(<a href="ContextHandler.AliasCheck.html" title="interface in org.eclipse.jetty.server.handler">ContextHandler.AliasCheck</a>&nbsp;check)</code></th>
<td class="colLast">
<div class="block">Add an AliasCheck instance to possibly permit aliased resources</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#addEventListener(java.util.EventListener)">addEventListener</a></span>&#8203;(java.util.EventListener&nbsp;listener)</code></th>
<td class="colLast">
<div class="block">Add a context event listeners.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#addLocaleEncoding(java.lang.String,java.lang.String)">addLocaleEncoding</a></span>&#8203;(java.lang.String&nbsp;locale,
                 java.lang.String&nbsp;encoding)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#addProgrammaticListener(java.util.EventListener)">addProgrammaticListener</a></span>&#8203;(java.util.EventListener&nbsp;listener)</code></th>
<td class="colLast">
<div class="block">Apply any necessary restrictions on a programmatic added listener.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#addVirtualHosts(java.lang.String%5B%5D)">addVirtualHosts</a></span>&#8203;(java.lang.String[]&nbsp;virtualHosts)</code></th>
<td class="colLast">
<div class="block">Either set virtual hosts or add to an existing set of virtual hosts.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#callContextDestroyed(javax.servlet.ServletContextListener,javax.servlet.ServletContextEvent)">callContextDestroyed</a></span>&#8203;(javax.servlet.ServletContextListener&nbsp;l,
                    javax.servlet.ServletContextEvent&nbsp;e)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#callContextInitialized(javax.servlet.ServletContextListener,javax.servlet.ServletContextEvent)">callContextInitialized</a></span>&#8203;(javax.servlet.ServletContextListener&nbsp;l,
                      javax.servlet.ServletContextEvent&nbsp;e)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkAlias(java.lang.String,org.eclipse.jetty.util.resource.Resource)">checkAlias</a></span>&#8203;(java.lang.String&nbsp;path,
          <a href="../../util/resource/Resource.html" title="class in org.eclipse.jetty.util.resource">Resource</a>&nbsp;resource)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkContext(java.lang.String,org.eclipse.jetty.server.Request,javax.servlet.http.HttpServletResponse)">checkContext</a></span>&#8203;(java.lang.String&nbsp;target,
            <a href="../Request.html" title="class in org.eclipse.jetty.server">Request</a>&nbsp;baseRequest,
            javax.servlet.http.HttpServletResponse&nbsp;response)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkContextPath(java.lang.String)">checkContextPath</a></span>&#8203;(java.lang.String&nbsp;uri)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkVirtualHost(org.eclipse.jetty.server.Request)">checkVirtualHost</a></span>&#8203;(<a href="../Request.html" title="class in org.eclipse.jetty.server">Request</a>&nbsp;baseRequest)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#clearAliasChecks()">clearAliasChecks</a></span>()</code></th>
<td class="colLast">
<div class="block">clear the list of AliasChecks</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#clearAttributes()">clearAttributes</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#contextDestroyed()">contextDestroyed</a></span>()</code></th>
<td class="colLast">
<div class="block">Call the ServletContextListeners with contextDestroyed.</div>
</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#contextInitialized()">contextInitialized</a></span>()</code></th>
<td class="colLast">
<div class="block">Call the ServletContextListeners contextInitialized methods.</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#doHandle(java.lang.String,org.eclipse.jetty.server.Request,javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)">doHandle</a></span>&#8203;(java.lang.String&nbsp;target,
        <a href="../Request.html" title="class in org.eclipse.jetty.server">Request</a>&nbsp;baseRequest,
        javax.servlet.http.HttpServletRequest&nbsp;request,
        javax.servlet.http.HttpServletResponse&nbsp;response)</code></th>
<td class="colLast">
<div class="block">Do the handler work within the scope.</div>
</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#doScope(java.lang.String,org.eclipse.jetty.server.Request,javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)">doScope</a></span>&#8203;(java.lang.String&nbsp;target,
       <a href="../Request.html" title="class in org.eclipse.jetty.server">Request</a>&nbsp;baseRequest,
       javax.servlet.http.HttpServletRequest&nbsp;request,
       javax.servlet.http.HttpServletResponse&nbsp;response)</code></th>
<td class="colLast">
<div class="block">Scope the handler</div>
</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#doStart()">doStart</a></span>()</code></th>
<td class="colLast">
<div class="block">Starts the managed lifecycle beans in the order they were added.</div>
</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#doStop()">doStop</a></span>()</code></th>
<td class="colLast">
<div class="block">Stops the managed lifecycle beans in the reverse order they were added.</div>
</td>
</tr>
<tr id="i19" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#dump(java.lang.Appendable,java.lang.String)">dump</a></span>&#8203;(java.lang.Appendable&nbsp;out,
    java.lang.String&nbsp;indent)</code></th>
<td class="colLast">
<div class="block">Dump this object (and children) into an Appendable using the provided indent after any new lines.</div>
</td>
</tr>
<tr id="i20" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#enterScope(org.eclipse.jetty.server.Request,java.lang.Object)">enterScope</a></span>&#8203;(<a href="../Request.html" title="class in org.eclipse.jetty.server">Request</a>&nbsp;request,
          java.lang.Object&nbsp;reason)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i21" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#exitScope(org.eclipse.jetty.server.Request)">exitScope</a></span>&#8203;(<a href="../Request.html" title="class in org.eclipse.jetty.server">Request</a>&nbsp;request)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i22" class="altColor">
<td class="colFirst"><code>java.util.List&lt;<a href="ContextHandler.AliasCheck.html" title="interface in org.eclipse.jetty.server.handler">ContextHandler.AliasCheck</a>&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getAliasChecks()">getAliasChecks</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i23" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getAllowNullPathInfo()">getAllowNullPathInfo</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i24" class="altColor">
<td class="colFirst"><code>java.lang.Object</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getAttribute(java.lang.String)">getAttribute</a></span>&#8203;(java.lang.String&nbsp;name)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i25" class="rowColor">
<td class="colFirst"><code>java.util.Enumeration&lt;java.lang.String&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getAttributeNames()">getAttributeNames</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i26" class="altColor">
<td class="colFirst"><code>java.util.Set&lt;java.lang.String&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getAttributeNameSet()">getAttributeNameSet</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i27" class="rowColor">
<td class="colFirst"><code><a href="../../util/Attributes.html" title="interface in org.eclipse.jetty.util">Attributes</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getAttributes()">getAttributes</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i28" class="altColor">
<td class="colFirst"><code><a href="../../util/resource/Resource.html" title="class in org.eclipse.jetty.util.resource">Resource</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getBaseResource()">getBaseResource</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i29" class="rowColor">
<td class="colFirst"><code>java.lang.ClassLoader</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getClassLoader()">getClassLoader</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i30" class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getClassPath()">getClassPath</a></span>()</code></th>
<td class="colLast">
<div class="block">Make best effort to extract a file classpath from the context classloader</div>
</td>
</tr>
<tr id="i31" class="rowColor">
<td class="colFirst"><code>static <a href="ContextHandler.html" title="class in org.eclipse.jetty.server.handler">ContextHandler</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getContextHandler(javax.servlet.ServletContext)">getContextHandler</a></span>&#8203;(javax.servlet.ServletContext&nbsp;context)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i32" class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getContextPath()">getContextPath</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i33" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getContextPathEncoded()">getContextPathEncoded</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i34" class="altColor">
<td class="colFirst"><code>static <a href="ContextHandler.Context.html" title="class in org.eclipse.jetty.server.handler">ContextHandler.Context</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getCurrentContext()">getCurrentContext</a></span>()</code></th>
<td class="colLast">
<div class="block">Get the current ServletContext implementation.</div>
</td>
</tr>
<tr id="i35" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getDisplayName()">getDisplayName</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i36" class="altColor">
<td class="colFirst"><code><a href="ErrorHandler.html" title="class in org.eclipse.jetty.server.handler">ErrorHandler</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getErrorHandler()">getErrorHandler</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i37" class="rowColor">
<td class="colFirst"><code>java.util.EventListener[]</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getEventListeners()">getEventListeners</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i38" class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getInitParameter(java.lang.String)">getInitParameter</a></span>&#8203;(java.lang.String&nbsp;name)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i39" class="rowColor">
<td class="colFirst"><code>java.util.Enumeration&lt;java.lang.String&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getInitParameterNames()">getInitParameterNames</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i40" class="altColor">
<td class="colFirst"><code>java.util.Map&lt;java.lang.String,&#8203;java.lang.String&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getInitParams()">getInitParams</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i41" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getLocaleEncoding(java.lang.String)">getLocaleEncoding</a></span>&#8203;(java.lang.String&nbsp;locale)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i42" class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getLocaleEncoding(java.util.Locale)">getLocaleEncoding</a></span>&#8203;(java.util.Locale&nbsp;locale)</code></th>
<td class="colLast">
<div class="block">Get the character encoding for a locale.</div>
</td>
</tr>
<tr id="i43" class="rowColor">
<td class="colFirst"><code>java.util.Map&lt;java.lang.String,&#8203;java.lang.String&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getLocaleEncodings()">getLocaleEncodings</a></span>()</code></th>
<td class="colLast">
<div class="block">Get all of the locale encodings</div>
</td>
</tr>
<tr id="i44" class="altColor">
<td class="colFirst"><code><a href="../../util/log/Logger.html" title="interface in org.eclipse.jetty.util.log">Logger</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getLogger()">getLogger</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i45" class="rowColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getMaxFormContentSize()">getMaxFormContentSize</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i46" class="altColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getMaxFormKeys()">getMaxFormKeys</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i47" class="rowColor">
<td class="colFirst"><code><a href="../../http/MimeTypes.html" title="class in org.eclipse.jetty.http">MimeTypes</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getMimeTypes()">getMimeTypes</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i48" class="altColor">
<td class="colFirst"><code>java.lang.String[]</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getProtectedTargets()">getProtectedTargets</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i49" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getRequestContextPath()">getRequestContextPath</a></span>()</code></th>
<td class="colLast">
<div class="block">Get the context path in a form suitable to be returned from <code>HttpServletRequest.getContextPath()</code>
 or <code>ServletContext.getContextPath()</code>.</div>
</td>
</tr>
<tr id="i50" class="altColor">
<td class="colFirst"><code><a href="../../util/resource/Resource.html" title="class in org.eclipse.jetty.util.resource">Resource</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getResource(java.lang.String)">getResource</a></span>&#8203;(java.lang.String&nbsp;path)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i51" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getResourceBase()">getResourceBase</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i52" class="altColor">
<td class="colFirst"><code>java.util.Set&lt;java.lang.String&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getResourcePaths(java.lang.String)">getResourcePaths</a></span>&#8203;(java.lang.String&nbsp;path)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i53" class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getServerInfo()">getServerInfo</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i54" class="altColor">
<td class="colFirst"><code><a href="ContextHandler.Context.html" title="class in org.eclipse.jetty.server.handler">ContextHandler.Context</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getServletContext()">getServletContext</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i55" class="rowColor">
<td class="colFirst"><code>java.lang.String[]</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getVirtualHosts()">getVirtualHosts</a></span>()</code></th>
<td class="colLast">
<div class="block">Get the virtual hosts for the context.</div>
</td>
</tr>
<tr id="i56" class="altColor">
<td class="colFirst"><code>java.lang.String[]</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getWelcomeFiles()">getWelcomeFiles</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i57" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#handle(java.lang.Runnable)">handle</a></span>&#8203;(java.lang.Runnable&nbsp;runnable)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i58" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#handle(org.eclipse.jetty.server.Request,java.lang.Runnable)">handle</a></span>&#8203;(<a href="../Request.html" title="class in org.eclipse.jetty.server">Request</a>&nbsp;request,
      java.lang.Runnable&nbsp;runnable)</code></th>
<td class="colLast">
<div class="block">Handle a runnable in the scope of this context and a particular request</div>
</td>
</tr>
<tr id="i59" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isAvailable()">isAvailable</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i60" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isCompactPath()">isCompactPath</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i61" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isDurableListener(java.util.EventListener)">isDurableListener</a></span>&#8203;(java.util.EventListener&nbsp;listener)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i62" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isProgrammaticListener(java.util.EventListener)">isProgrammaticListener</a></span>&#8203;(java.util.EventListener&nbsp;listener)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i63" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isProtectedTarget(java.lang.String)">isProtectedTarget</a></span>&#8203;(java.lang.String&nbsp;target)</code></th>
<td class="colLast">
<div class="block">Check the target.</div>
</td>
</tr>
<tr id="i64" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isShutdown()">isShutdown</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i65" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isUsingSecurityManager()">isUsingSecurityManager</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i66" class="altColor">
<td class="colFirst"><code>java.lang.Class&lt;?&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#loadClass(java.lang.String)">loadClass</a></span>&#8203;(java.lang.String&nbsp;className)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i67" class="rowColor">
<td class="colFirst"><code><a href="../../util/resource/Resource.html" title="class in org.eclipse.jetty.util.resource">Resource</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#newResource(java.lang.String)">newResource</a></span>&#8203;(java.lang.String&nbsp;urlOrPath)</code></th>
<td class="colLast">
<div class="block">Convert a URL or path to a Resource.</div>
</td>
</tr>
<tr id="i68" class="altColor">
<td class="colFirst"><code><a href="../../util/resource/Resource.html" title="class in org.eclipse.jetty.util.resource">Resource</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#newResource(java.net.URI)">newResource</a></span>&#8203;(java.net.URI&nbsp;uri)</code></th>
<td class="colLast">
<div class="block">Convert URL to Resource wrapper for <a href="../../util/resource/Resource.html#newResource(java.net.URL)"><code>Resource.newResource(URL)</code></a> enables extensions to provide alternate resource implementations.</div>
</td>
</tr>
<tr id="i69" class="rowColor">
<td class="colFirst"><code><a href="../../util/resource/Resource.html" title="class in org.eclipse.jetty.util.resource">Resource</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#newResource(java.net.URL)">newResource</a></span>&#8203;(java.net.URL&nbsp;url)</code></th>
<td class="colLast">
<div class="block">Convert URL to Resource wrapper for <a href="../../util/resource/Resource.html#newResource(java.net.URL)"><code>Resource.newResource(URL)</code></a> enables extensions to provide alternate resource implementations.</div>
</td>
</tr>
<tr id="i70" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#removeAttribute(java.lang.String)">removeAttribute</a></span>&#8203;(java.lang.String&nbsp;name)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i71" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#removeEventListener(java.util.EventListener)">removeEventListener</a></span>&#8203;(java.util.EventListener&nbsp;listener)</code></th>
<td class="colLast">
<div class="block">Remove a context event listeners.</div>
</td>
</tr>
<tr id="i72" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#removeVirtualHosts(java.lang.String%5B%5D)">removeVirtualHosts</a></span>&#8203;(java.lang.String[]&nbsp;virtualHosts)</code></th>
<td class="colLast">
<div class="block">Removes an array of virtual host entries, if this removes all entries the _vhosts will be set to null</div>
</td>
</tr>
<tr id="i73" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#requestDestroyed(org.eclipse.jetty.server.Request,javax.servlet.http.HttpServletRequest)">requestDestroyed</a></span>&#8203;(<a href="../Request.html" title="class in org.eclipse.jetty.server">Request</a>&nbsp;baseRequest,
                javax.servlet.http.HttpServletRequest&nbsp;request)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i74" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#requestInitialized(org.eclipse.jetty.server.Request,javax.servlet.http.HttpServletRequest)">requestInitialized</a></span>&#8203;(<a href="../Request.html" title="class in org.eclipse.jetty.server">Request</a>&nbsp;baseRequest,
                  javax.servlet.http.HttpServletRequest&nbsp;request)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i75" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setAliasChecks(java.util.List)">setAliasChecks</a></span>&#8203;(java.util.List&lt;<a href="ContextHandler.AliasCheck.html" title="interface in org.eclipse.jetty.server.handler">ContextHandler.AliasCheck</a>&gt;&nbsp;checks)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i76" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setAllowNullPathInfo(boolean)">setAllowNullPathInfo</a></span>&#8203;(boolean&nbsp;allowNullPathInfo)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i77" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setAttribute(java.lang.String,java.lang.Object)">setAttribute</a></span>&#8203;(java.lang.String&nbsp;name,
            java.lang.Object&nbsp;value)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i78" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setAttributes(org.eclipse.jetty.util.Attributes)">setAttributes</a></span>&#8203;(<a href="../../util/Attributes.html" title="interface in org.eclipse.jetty.util">Attributes</a>&nbsp;attributes)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i79" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setAvailable(boolean)">setAvailable</a></span>&#8203;(boolean&nbsp;available)</code></th>
<td class="colLast">
<div class="block">Set Available status.</div>
</td>
</tr>
<tr id="i80" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setBaseResource(org.eclipse.jetty.util.resource.Resource)">setBaseResource</a></span>&#8203;(<a href="../../util/resource/Resource.html" title="class in org.eclipse.jetty.util.resource">Resource</a>&nbsp;base)</code></th>
<td class="colLast">
<div class="block">Set the base resource for this context.</div>
</td>
</tr>
<tr id="i81" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setClassLoader(java.lang.ClassLoader)">setClassLoader</a></span>&#8203;(java.lang.ClassLoader&nbsp;classLoader)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i82" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setCompactPath(boolean)">setCompactPath</a></span>&#8203;(boolean&nbsp;compactPath)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i83" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setContextPath(java.lang.String)">setContextPath</a></span>&#8203;(java.lang.String&nbsp;contextPath)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i84" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setDisplayName(java.lang.String)">setDisplayName</a></span>&#8203;(java.lang.String&nbsp;servletContextName)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i85" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setErrorHandler(org.eclipse.jetty.server.handler.ErrorHandler)">setErrorHandler</a></span>&#8203;(<a href="ErrorHandler.html" title="class in org.eclipse.jetty.server.handler">ErrorHandler</a>&nbsp;errorHandler)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i86" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setEventListeners(java.util.EventListener%5B%5D)">setEventListeners</a></span>&#8203;(java.util.EventListener[]&nbsp;eventListeners)</code></th>
<td class="colLast">
<div class="block">Set the context event listeners.</div>
</td>
</tr>
<tr id="i87" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setInitParameter(java.lang.String,java.lang.String)">setInitParameter</a></span>&#8203;(java.lang.String&nbsp;name,
                java.lang.String&nbsp;value)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i88" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setLogger(org.eclipse.jetty.util.log.Logger)">setLogger</a></span>&#8203;(<a href="../../util/log/Logger.html" title="interface in org.eclipse.jetty.util.log">Logger</a>&nbsp;logger)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i89" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setManagedAttribute(java.lang.String,java.lang.Object)">setManagedAttribute</a></span>&#8203;(java.lang.String&nbsp;name,
                   java.lang.Object&nbsp;value)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr id="i90" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setMaxFormContentSize(int)">setMaxFormContentSize</a></span>&#8203;(int&nbsp;maxSize)</code></th>
<td class="colLast">
<div class="block">Set the maximum size of a form post, to protect against DOS attacks from large forms.</div>
</td>
</tr>
<tr id="i91" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setMaxFormKeys(int)">setMaxFormKeys</a></span>&#8203;(int&nbsp;max)</code></th>
<td class="colLast">
<div class="block">Set the maximum number of form Keys to protect against DOS attack from crafted hash keys.</div>
</td>
</tr>
<tr id="i92" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setMimeTypes(org.eclipse.jetty.http.MimeTypes)">setMimeTypes</a></span>&#8203;(<a href="../../http/MimeTypes.html" title="class in org.eclipse.jetty.http">MimeTypes</a>&nbsp;mimeTypes)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i93" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setProtectedTargets(java.lang.String%5B%5D)">setProtectedTargets</a></span>&#8203;(java.lang.String[]&nbsp;targets)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i94" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setResourceBase(java.lang.String)">setResourceBase</a></span>&#8203;(java.lang.String&nbsp;resourceBase)</code></th>
<td class="colLast">
<div class="block">Set the base resource for this context.</div>
</td>
</tr>
<tr id="i95" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setServer(org.eclipse.jetty.server.Server)">setServer</a></span>&#8203;(<a href="../Server.html" title="class in org.eclipse.jetty.server">Server</a>&nbsp;server)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i96" class="altColor">
<td class="colFirst"><code>static void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setServerInfo(java.lang.String)">setServerInfo</a></span>&#8203;(java.lang.String&nbsp;serverInfo)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i97" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setUsingSecurityManager(boolean)">setUsingSecurityManager</a></span>&#8203;(boolean&nbsp;usingSecurityManager)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i98" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setVirtualHosts(java.lang.String%5B%5D)">setVirtualHosts</a></span>&#8203;(java.lang.String[]&nbsp;vhosts)</code></th>
<td class="colLast">
<div class="block">Set the virtual hosts for the context.</div>
</td>
</tr>
<tr id="i99" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setWelcomeFiles(java.lang.String%5B%5D)">setWelcomeFiles</a></span>&#8203;(java.lang.String[]&nbsp;files)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i100" class="altColor">
<td class="colFirst"><code>java.util.concurrent.Future&lt;java.lang.Void&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#shutdown()">shutdown</a></span>()</code></th>
<td class="colLast">
<div class="block">Set shutdown status.</div>
</td>
</tr>
<tr id="i101" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#startContext()">startContext</a></span>()</code></th>
<td class="colLast">
<div class="block">Extensible startContext.</div>
</td>
</tr>
<tr id="i102" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#stopContext()">stopContext</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i103" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#toString()">toString</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.org.eclipse.jetty.server.handler.ScopedHandler">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;org.eclipse.jetty.server.handler.<a href="ScopedHandler.html" title="class in org.eclipse.jetty.server.handler">ScopedHandler</a></h3>
<code><a href="ScopedHandler.html#handle(java.lang.String,org.eclipse.jetty.server.Request,javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)">handle</a>, <a href="ScopedHandler.html#nextHandle(java.lang.String,org.eclipse.jetty.server.Request,javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)">nextHandle</a>, <a href="ScopedHandler.html#nextScope(java.lang.String,org.eclipse.jetty.server.Request,javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)">nextScope</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.org.eclipse.jetty.server.handler.HandlerWrapper">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;org.eclipse.jetty.server.handler.<a href="HandlerWrapper.html" title="class in org.eclipse.jetty.server.handler">HandlerWrapper</a></h3>
<code><a href="HandlerWrapper.html#destroy()">destroy</a>, <a href="HandlerWrapper.html#expandChildren(java.util.List,java.lang.Class)">expandChildren</a>, <a href="HandlerWrapper.html#getHandler()">getHandler</a>, <a href="HandlerWrapper.html#getHandlers()">getHandlers</a>, <a href="HandlerWrapper.html#insertHandler(org.eclipse.jetty.server.handler.HandlerWrapper)">insertHandler</a>, <a href="HandlerWrapper.html#setHandler(org.eclipse.jetty.server.Handler)">setHandler</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.org.eclipse.jetty.server.handler.AbstractHandlerContainer">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;org.eclipse.jetty.server.handler.<a href="AbstractHandlerContainer.html" title="class in org.eclipse.jetty.server.handler">AbstractHandlerContainer</a></h3>
<code><a href="AbstractHandlerContainer.html#doShutdown(java.util.List)">doShutdown</a>, <a href="AbstractHandlerContainer.html#expandHandler(org.eclipse.jetty.server.Handler,java.util.List,java.lang.Class)">expandHandler</a>, <a href="AbstractHandlerContainer.html#findContainerOf(org.eclipse.jetty.server.HandlerContainer,java.lang.Class,org.eclipse.jetty.server.Handler)">findContainerOf</a>, <a href="AbstractHandlerContainer.html#getChildHandlerByClass(java.lang.Class)">getChildHandlerByClass</a>, <a href="AbstractHandlerContainer.html#getChildHandlers()">getChildHandlers</a>, <a href="AbstractHandlerContainer.html#getChildHandlersByClass(java.lang.Class)">getChildHandlersByClass</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.org.eclipse.jetty.server.handler.AbstractHandler">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;org.eclipse.jetty.server.handler.<a href="AbstractHandler.html" title="class in org.eclipse.jetty.server.handler">AbstractHandler</a></h3>
<code><a href="AbstractHandler.html#doError(java.lang.String,org.eclipse.jetty.server.Request,javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)">doError</a>, <a href="AbstractHandler.html#getServer()">getServer</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.org.eclipse.jetty.util.component.ContainerLifeCycle">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;org.eclipse.jetty.util.component.<a href="../../util/component/ContainerLifeCycle.html" title="class in org.eclipse.jetty.util.component">ContainerLifeCycle</a></h3>
<code><a href="../../util/component/ContainerLifeCycle.html#addBean(java.lang.Object)">addBean</a>, <a href="../../util/component/ContainerLifeCycle.html#addBean(java.lang.Object,boolean)">addBean</a>, <a href="../../util/component/ContainerLifeCycle.html#addEventListener(org.eclipse.jetty.util.component.Container.Listener)">addEventListener</a>, <a href="../../util/component/ContainerLifeCycle.html#addManaged(org.eclipse.jetty.util.component.LifeCycle)">addManaged</a>, <a href="../../util/component/ContainerLifeCycle.html#contains(java.lang.Object)">contains</a>, <a href="../../util/component/ContainerLifeCycle.html#dump()">dump</a>, <a href="../../util/component/ContainerLifeCycle.html#dump(java.lang.Appendable)">dump</a>, <a href="../../util/component/ContainerLifeCycle.html#dump(java.lang.Appendable,java.lang.String,java.util.Collection...)">dump</a>, <a href="../../util/component/ContainerLifeCycle.html#dump(org.eclipse.jetty.util.component.Dumpable)">dump</a>, <a href="../../util/component/ContainerLifeCycle.html#dumpBeans(java.lang.Appendable,java.lang.String,java.util.Collection...)">dumpBeans</a>, <a href="../../util/component/ContainerLifeCycle.html#dumpObject(java.lang.Appendable,java.lang.Object)">dumpObject</a>, <a href="../../util/component/ContainerLifeCycle.html#dumpObjects(java.lang.Appendable,java.lang.String,java.lang.Object...)">dumpObjects</a>, <a href="../../util/component/ContainerLifeCycle.html#dumpStdErr()">dumpStdErr</a>, <a href="../../util/component/ContainerLifeCycle.html#dumpThis(java.lang.Appendable)">dumpThis</a>, <a href="../../util/component/ContainerLifeCycle.html#getBean(java.lang.Class)">getBean</a>, <a href="../../util/component/ContainerLifeCycle.html#getBeans()">getBeans</a>, <a href="../../util/component/ContainerLifeCycle.html#getBeans(java.lang.Class)">getBeans</a>, <a href="../../util/component/ContainerLifeCycle.html#getContainedBeans(java.lang.Class)">getContainedBeans</a>, <a href="../../util/component/ContainerLifeCycle.html#getContainedBeans(java.lang.Class,java.util.Collection)">getContainedBeans</a>, <a href="../../util/component/ContainerLifeCycle.html#isAuto(java.lang.Object)">isAuto</a>, <a href="../../util/component/ContainerLifeCycle.html#isManaged(java.lang.Object)">isManaged</a>, <a href="../../util/component/ContainerLifeCycle.html#isUnmanaged(java.lang.Object)">isUnmanaged</a>, <a href="../../util/component/ContainerLifeCycle.html#manage(java.lang.Object)">manage</a>, <a href="../../util/component/ContainerLifeCycle.html#removeBean(java.lang.Object)">removeBean</a>, <a href="../../util/component/ContainerLifeCycle.html#removeBeans()">removeBeans</a>, <a href="../../util/component/ContainerLifeCycle.html#removeEventListener(org.eclipse.jetty.util.component.Container.Listener)">removeEventListener</a>, <a href="../../util/component/ContainerLifeCycle.html#setBeans(java.util.Collection)">setBeans</a>, <a href="../../util/component/ContainerLifeCycle.html#setStopTimeout(long)">setStopTimeout</a>, <a href="../../util/component/ContainerLifeCycle.html#start(org.eclipse.jetty.util.component.LifeCycle)">start</a>, <a href="../../util/component/ContainerLifeCycle.html#stop(org.eclipse.jetty.util.component.LifeCycle)">stop</a>, <a href="../../util/component/ContainerLifeCycle.html#unmanage(java.lang.Object)">unmanage</a>, <a href="../../util/component/ContainerLifeCycle.html#updateBean(java.lang.Object,java.lang.Object)">updateBean</a>, <a href="../../util/component/ContainerLifeCycle.html#updateBean(java.lang.Object,java.lang.Object,boolean)">updateBean</a>, <a href="../../util/component/ContainerLifeCycle.html#updateBeans(java.lang.Object%5B%5D,java.lang.Object%5B%5D)">updateBeans</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.org.eclipse.jetty.util.component.AbstractLifeCycle">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;org.eclipse.jetty.util.component.<a href="../../util/component/AbstractLifeCycle.html" title="class in org.eclipse.jetty.util.component">AbstractLifeCycle</a></h3>
<code><a href="../../util/component/AbstractLifeCycle.html#addLifeCycleListener(org.eclipse.jetty.util.component.LifeCycle.Listener)">addLifeCycleListener</a>, <a href="../../util/component/AbstractLifeCycle.html#getState()">getState</a>, <a href="../../util/component/AbstractLifeCycle.html#getState(org.eclipse.jetty.util.component.LifeCycle)">getState</a>, <a href="../../util/component/AbstractLifeCycle.html#getStopTimeout()">getStopTimeout</a>, <a href="../../util/component/AbstractLifeCycle.html#isFailed()">isFailed</a>, <a href="../../util/component/AbstractLifeCycle.html#isRunning()">isRunning</a>, <a href="../../util/component/AbstractLifeCycle.html#isStarted()">isStarted</a>, <a href="../../util/component/AbstractLifeCycle.html#isStarting()">isStarting</a>, <a href="../../util/component/AbstractLifeCycle.html#isStopped()">isStopped</a>, <a href="../../util/component/AbstractLifeCycle.html#isStopping()">isStopping</a>, <a href="../../util/component/AbstractLifeCycle.html#removeLifeCycleListener(org.eclipse.jetty.util.component.LifeCycle.Listener)">removeLifeCycleListener</a>, <a href="../../util/component/AbstractLifeCycle.html#start()">start</a>, <a href="../../util/component/AbstractLifeCycle.html#stop()">stop</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.Object</h3>
<code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait</code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.org.eclipse.jetty.util.component.Dumpable">
<!--   -->
</a>
<h3>Methods inherited from interface&nbsp;org.eclipse.jetty.util.component.<a href="../../util/component/Dumpable.html" title="interface in org.eclipse.jetty.util.component">Dumpable</a></h3>
<code><a href="../../util/component/Dumpable.html#dumpSelf()">dumpSelf</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.org.eclipse.jetty.util.component.Dumpable.DumpableContainer">
<!--   -->
</a>
<h3>Methods inherited from interface&nbsp;org.eclipse.jetty.util.component.<a href="../../util/component/Dumpable.DumpableContainer.html" title="interface in org.eclipse.jetty.util.component">Dumpable.DumpableContainer</a></h3>
<code><a href="../../util/component/Dumpable.DumpableContainer.html#isDumpable(java.lang.Object)">isDumpable</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.org.eclipse.jetty.util.component.LifeCycle">
<!--   -->
</a>
<h3>Methods inherited from interface&nbsp;org.eclipse.jetty.util.component.<a href="../../util/component/LifeCycle.html" title="interface in org.eclipse.jetty.util.component">LifeCycle</a></h3>
<code><a href="../../util/component/LifeCycle.html#addLifeCycleListener(org.eclipse.jetty.util.component.LifeCycle.Listener)">addLifeCycleListener</a>, <a href="../../util/component/LifeCycle.html#isFailed()">isFailed</a>, <a href="../../util/component/LifeCycle.html#isRunning()">isRunning</a>, <a href="../../util/component/LifeCycle.html#isStarted()">isStarted</a>, <a href="../../util/component/LifeCycle.html#isStarting()">isStarting</a>, <a href="../../util/component/LifeCycle.html#isStopped()">isStopped</a>, <a href="../../util/component/LifeCycle.html#isStopping()">isStopping</a>, <a href="../../util/component/LifeCycle.html#removeLifeCycleListener(org.eclipse.jetty.util.component.LifeCycle.Listener)">removeLifeCycleListener</a>, <a href="../../util/component/LifeCycle.html#start()">start</a>, <a href="../../util/component/LifeCycle.html#stop()">stop</a></code></li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="field.detail">
<!--   -->
</a>
<h3>Field Detail</h3>
<a id="SERVLET_MAJOR_VERSION">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>SERVLET_MAJOR_VERSION</h4>
<pre>public static final&nbsp;int SERVLET_MAJOR_VERSION</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../constant-values.html#org.eclipse.jetty.server.handler.ContextHandler.SERVLET_MAJOR_VERSION">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a id="SERVLET_MINOR_VERSION">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>SERVLET_MINOR_VERSION</h4>
<pre>public static final&nbsp;int SERVLET_MINOR_VERSION</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../constant-values.html#org.eclipse.jetty.server.handler.ContextHandler.SERVLET_MINOR_VERSION">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a id="SERVLET_LISTENER_TYPES">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>SERVLET_LISTENER_TYPES</h4>
<pre>public static final&nbsp;java.lang.Class&lt;?&gt;[] SERVLET_LISTENER_TYPES</pre>
</li>
</ul>
<a id="DEFAULT_LISTENER_TYPE_INDEX">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DEFAULT_LISTENER_TYPE_INDEX</h4>
<pre>public static final&nbsp;int DEFAULT_LISTENER_TYPE_INDEX</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../constant-values.html#org.eclipse.jetty.server.handler.ContextHandler.DEFAULT_LISTENER_TYPE_INDEX">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a id="EXTENDED_LISTENER_TYPE_INDEX">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>EXTENDED_LISTENER_TYPE_INDEX</h4>
<pre>public static final&nbsp;int EXTENDED_LISTENER_TYPE_INDEX</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../constant-values.html#org.eclipse.jetty.server.handler.ContextHandler.EXTENDED_LISTENER_TYPE_INDEX">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a id="MANAGED_ATTRIBUTES">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>MANAGED_ATTRIBUTES</h4>
<pre>public static final&nbsp;java.lang.String MANAGED_ATTRIBUTES</pre>
<div class="block">If a context attribute with this name is set, it is interpreted as a comma separated list of attribute name. Any other context attributes that are set
 with a name from this list will result in a call to <a href="#setManagedAttribute(java.lang.String,java.lang.Object)"><code>setManagedAttribute(String, Object)</code></a>, which typically initiates the creation of a JMX MBean
 for the attribute value.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../constant-values.html#org.eclipse.jetty.server.handler.ContextHandler.MANAGED_ATTRIBUTES">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a id="MAX_FORM_KEYS_KEY">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>MAX_FORM_KEYS_KEY</h4>
<pre>public static final&nbsp;java.lang.String MAX_FORM_KEYS_KEY</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../constant-values.html#org.eclipse.jetty.server.handler.ContextHandler.MAX_FORM_KEYS_KEY">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a id="MAX_FORM_CONTENT_SIZE_KEY">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>MAX_FORM_CONTENT_SIZE_KEY</h4>
<pre>public static final&nbsp;java.lang.String MAX_FORM_CONTENT_SIZE_KEY</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../constant-values.html#org.eclipse.jetty.server.handler.ContextHandler.MAX_FORM_CONTENT_SIZE_KEY">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a id="DEFAULT_MAX_FORM_KEYS">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DEFAULT_MAX_FORM_KEYS</h4>
<pre>public static final&nbsp;int DEFAULT_MAX_FORM_KEYS</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../constant-values.html#org.eclipse.jetty.server.handler.ContextHandler.DEFAULT_MAX_FORM_KEYS">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a id="DEFAULT_MAX_FORM_CONTENT_SIZE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DEFAULT_MAX_FORM_CONTENT_SIZE</h4>
<pre>public static final&nbsp;int DEFAULT_MAX_FORM_CONTENT_SIZE</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../constant-values.html#org.eclipse.jetty.server.handler.ContextHandler.DEFAULT_MAX_FORM_CONTENT_SIZE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a id="_contextStatus">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>_contextStatus</h4>
<pre>protected&nbsp;<a href="ContextHandler.ContextStatus.html" title="enum in org.eclipse.jetty.server.handler">ContextHandler.ContextStatus</a> _contextStatus</pre>
</li>
</ul>
<a id="_scontext">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>_scontext</h4>
<pre>protected&nbsp;<a href="ContextHandler.Context.html" title="class in org.eclipse.jetty.server.handler">ContextHandler.Context</a> _scontext</pre>
</li>
</ul>
</li>
</ul>
</section>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="constructor.detail">
<!--   -->
</a>
<h3>Constructor Detail</h3>
<a id="&lt;init&gt;()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ContextHandler</h4>
<pre>public&nbsp;ContextHandler()</pre>
</li>
</ul>
<a id="&lt;init&gt;(org.eclipse.jetty.server.handler.ContextHandler.Context)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ContextHandler</h4>
<pre>protected&nbsp;ContextHandler&#8203;(<a href="ContextHandler.Context.html" title="class in org.eclipse.jetty.server.handler">ContextHandler.Context</a>&nbsp;context)</pre>
</li>
</ul>
<a id="&lt;init&gt;(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ContextHandler</h4>
<pre>public&nbsp;ContextHandler&#8203;(java.lang.String&nbsp;contextPath)</pre>
</li>
</ul>
<a id="&lt;init&gt;(org.eclipse.jetty.server.HandlerContainer,java.lang.String)">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>ContextHandler</h4>
<pre>public&nbsp;ContextHandler&#8203;(<a href="../HandlerContainer.html" title="interface in org.eclipse.jetty.server">HandlerContainer</a>&nbsp;parent,
                      java.lang.String&nbsp;contextPath)</pre>
</li>
</ul>
</li>
</ul>
</section>
<!-- ============ METHOD DETAIL ========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a id="getCurrentContext()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCurrentContext</h4>
<pre class="methodSignature">public static&nbsp;<a href="ContextHandler.Context.html" title="class in org.eclipse.jetty.server.handler">ContextHandler.Context</a>&nbsp;getCurrentContext()</pre>
<div class="block">Get the current ServletContext implementation.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>ServletContext implementation</dd>
</dl>
</li>
</ul>
<a id="getContextHandler(javax.servlet.ServletContext)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getContextHandler</h4>
<pre class="methodSignature">public static&nbsp;<a href="ContextHandler.html" title="class in org.eclipse.jetty.server.handler">ContextHandler</a>&nbsp;getContextHandler&#8203;(javax.servlet.ServletContext&nbsp;context)</pre>
</li>
</ul>
<a id="getServerInfo()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getServerInfo</h4>
<pre class="methodSignature">public static&nbsp;java.lang.String&nbsp;getServerInfo()</pre>
</li>
</ul>
<a id="setServerInfo(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setServerInfo</h4>
<pre class="methodSignature">public static&nbsp;void&nbsp;setServerInfo&#8203;(java.lang.String&nbsp;serverInfo)</pre>
</li>
</ul>
<a id="dump(java.lang.Appendable,java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>dump</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;dump&#8203;(java.lang.Appendable&nbsp;out,
                 java.lang.String&nbsp;indent)
          throws java.io.IOException</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../util/component/Dumpable.html#dump(java.lang.Appendable,java.lang.String)">Dumpable</a></code></span></div>
<div class="block">Dump this object (and children) into an Appendable using the provided indent after any new lines.
 The indent should not be applied to the first object dumped.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../util/component/Dumpable.html#dump(java.lang.Appendable,java.lang.String)">dump</a></code>&nbsp;in interface&nbsp;<code><a href="../../util/component/Dumpable.html" title="interface in org.eclipse.jetty.util.component">Dumpable</a></code></dd>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../util/component/ContainerLifeCycle.html#dump(java.lang.Appendable,java.lang.String)">dump</a></code>&nbsp;in class&nbsp;<code><a href="../../util/component/ContainerLifeCycle.html" title="class in org.eclipse.jetty.util.component">ContainerLifeCycle</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>out</code> - The appendable to dump to</dd>
<dd><code>indent</code> - The indent to apply after any new lines.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.io.IOException</code> - if unable to write to Appendable</dd>
</dl>
</li>
</ul>
<a id="getServletContext()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getServletContext</h4>
<pre class="methodSignature">public&nbsp;<a href="ContextHandler.Context.html" title="class in org.eclipse.jetty.server.handler">ContextHandler.Context</a>&nbsp;getServletContext()</pre>
</li>
</ul>
<a id="getAllowNullPathInfo()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAllowNullPathInfo</h4>
<pre class="methodSignature"><a href="../../util/annotation/ManagedAttribute.html" title="annotation in org.eclipse.jetty.util.annotation">@ManagedAttribute</a>("Checks if the /context is not redirected to /context/")
public&nbsp;boolean&nbsp;getAllowNullPathInfo()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the allowNullPathInfo true if /context is not redirected to /context/</dd>
</dl>
</li>
</ul>
<a id="setAllowNullPathInfo(boolean)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setAllowNullPathInfo</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setAllowNullPathInfo&#8203;(boolean&nbsp;allowNullPathInfo)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>allowNullPathInfo</code> - true if /context is not redirected to /context/</dd>
</dl>
</li>
</ul>
<a id="setServer(org.eclipse.jetty.server.Server)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setServer</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setServer&#8203;(<a href="../Server.html" title="class in org.eclipse.jetty.server">Server</a>&nbsp;server)</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../Handler.html#setServer(org.eclipse.jetty.server.Server)">setServer</a></code>&nbsp;in interface&nbsp;<code><a href="../Handler.html" title="interface in org.eclipse.jetty.server">Handler</a></code></dd>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="AbstractHandlerContainer.html#setServer(org.eclipse.jetty.server.Server)">setServer</a></code>&nbsp;in class&nbsp;<code><a href="AbstractHandlerContainer.html" title="class in org.eclipse.jetty.server.handler">AbstractHandlerContainer</a></code></dd>
</dl>
</li>
</ul>
<a id="isUsingSecurityManager()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isUsingSecurityManager</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;isUsingSecurityManager()</pre>
</li>
</ul>
<a id="setUsingSecurityManager(boolean)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUsingSecurityManager</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setUsingSecurityManager&#8203;(boolean&nbsp;usingSecurityManager)</pre>
</li>
</ul>
<a id="setVirtualHosts(java.lang.String[])">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setVirtualHosts</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setVirtualHosts&#8203;(java.lang.String[]&nbsp;vhosts)</pre>
<div class="block">Set the virtual hosts for the context. Only requests that have a matching host header or fully qualified URL will be passed to that context with a
 virtual host name. A context with no virtual host names or a null virtual host name is available to all requests that are not served by a context with a
 matching virtual host name.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>vhosts</code> - Array of virtual hosts that this context responds to. A null/empty array means any hostname is acceptable. Host names may be String
 representation of IP addresses. Host names may start with '*.' to wildcard one level of names. Hosts and wildcard hosts may be followed with
 '@connectorname', in which case they will match only if the the <a href="../Connector.html#getName()"><code>Connector.getName()</code></a> for the request also matches. If an entry is just
 '@connectorname' it will match any host if that connector was used.  Note - In previous versions if one or more connectorname only entries existed
 and non of the connectors matched the handler would not match regardless of any hostname entries.  If there is one or more connectorname only
 entries and one or more host only entries but no hostname and connector entries we assume the old behavior and will log a warning.  The warning
 can be removed by removing the host entries that were previously being ignored, or modifying to include a hostname and connectorname entry.</dd>
</dl>
</li>
</ul>
<a id="addVirtualHosts(java.lang.String[])">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addVirtualHosts</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;addVirtualHosts&#8203;(java.lang.String[]&nbsp;virtualHosts)</pre>
<div class="block">Either set virtual hosts or add to an existing set of virtual hosts.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>virtualHosts</code> - Array of virtual hosts that this context responds to. A null/empty array means any hostname is acceptable. Host names may be String
 representation of IP addresses. Host names may start with '*.' to wildcard one level of names. Hosts and wildcard hosts may be followed with
 '@connectorname', in which case they will match only if the the <a href="../Connector.html#getName()"><code>Connector.getName()</code></a> for the request also matches. If an entry is just
 '@connectorname' it will match any host if that connector was used.  Note - In previous versions if one or more connectorname only entries existed
 and non of the connectors matched the handler would not match regardless of any hostname entries.  If there is one or more connectorname only
 entries and one or more host only entries but no hostname and connector entries we assume the old behavior and will log a warning.  The warning
 can be removed by removing the host entries that were previously being ignored, or modifying to include a hostname and connectorname entry.</dd>
</dl>
</li>
</ul>
<a id="removeVirtualHosts(java.lang.String[])">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeVirtualHosts</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;removeVirtualHosts&#8203;(java.lang.String[]&nbsp;virtualHosts)</pre>
<div class="block">Removes an array of virtual host entries, if this removes all entries the _vhosts will be set to null</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>virtualHosts</code> - Array of virtual hosts that this context responds to. A null/empty array means any hostname is acceptable. Host names may be String
 representation of IP addresses. Host names may start with '*.' to wildcard one level of names. Hosts and wildcard hosts may be followed with
 '@connectorname', in which case they will match only if the the <a href="../Connector.html#getName()"><code>Connector.getName()</code></a> for the request also matches. If an entry is just
 '@connectorname' it will match any host if that connector was used.  Note - In previous versions if one or more connectorname only entries existed
 and non of the connectors matched the handler would not match regardless of any hostname entries.  If there is one or more connectorname only
 entries and one or more host only entries but no hostname and connector entries we assume the old behavior and will log a warning.  The warning
 can be removed by removing the host entries that were previously being ignored, or modifying to include a hostname and connectorname entry.</dd>
</dl>
</li>
</ul>
<a id="getVirtualHosts()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getVirtualHosts</h4>
<pre class="methodSignature"><a href="../../util/annotation/ManagedAttribute.html" title="annotation in org.eclipse.jetty.util.annotation">@ManagedAttribute</a>(<a href="../../util/annotation/ManagedAttribute.html#value()">value</a>="Virtual hosts accepted by the context",
                  <a href="../../util/annotation/ManagedAttribute.html#readonly()">readonly</a>=true)
public&nbsp;java.lang.String[]&nbsp;getVirtualHosts()</pre>
<div class="block">Get the virtual hosts for the context. Only requests that have a matching host header or fully qualified URL will be passed to that context with a
 virtual host name. A context with no virtual host names or a null virtual host name is available to all requests that are not served by a context with a
 matching virtual host name.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Array of virtual hosts that this context responds to. A null/empty array means any hostname is acceptable. Host names may be String
 representation of IP addresses. Host names may start with '*.' to wildcard one level of names. Hosts and wildcard hosts may be followed with
 '@connectorname', in which case they will match only if the the <a href="../Connector.html#getName()"><code>Connector.getName()</code></a> for the request also matches. If an entry is just
 '@connectorname' it will match any host if that connector was used.  Note - In previous versions if one or more connectorname only entries existed
 and non of the connectors matched the handler would not match regardless of any hostname entries.  If there is one or more connectorname only
 entries and one or more host only entries but no hostname and connector entries we assume the old behavior and will log a warning.  The warning
 can be removed by removing the host entries that were previously being ignored, or modifying to include a hostname and connectorname entry.</dd>
</dl>
</li>
</ul>
<a id="getAttribute(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAttribute</h4>
<pre class="methodSignature">public&nbsp;java.lang.Object&nbsp;getAttribute&#8203;(java.lang.String&nbsp;name)</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../util/Attributes.html#getAttribute(java.lang.String)">getAttribute</a></code>&nbsp;in interface&nbsp;<code><a href="../../util/Attributes.html" title="interface in org.eclipse.jetty.util">Attributes</a></code></dd>
</dl>
</li>
</ul>
<a id="getAttributeNames()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAttributeNames</h4>
<pre class="methodSignature">public&nbsp;java.util.Enumeration&lt;java.lang.String&gt;&nbsp;getAttributeNames()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../util/Attributes.html#getAttributeNames()">getAttributeNames</a></code>&nbsp;in interface&nbsp;<code><a href="../../util/Attributes.html" title="interface in org.eclipse.jetty.util">Attributes</a></code></dd>
</dl>
</li>
</ul>
<a id="getAttributeNameSet()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAttributeNameSet</h4>
<pre class="methodSignature">public&nbsp;java.util.Set&lt;java.lang.String&gt;&nbsp;getAttributeNameSet()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../util/Attributes.html#getAttributeNameSet()">getAttributeNameSet</a></code>&nbsp;in interface&nbsp;<code><a href="../../util/Attributes.html" title="interface in org.eclipse.jetty.util">Attributes</a></code></dd>
</dl>
</li>
</ul>
<a id="getAttributes()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAttributes</h4>
<pre class="methodSignature">public&nbsp;<a href="../../util/Attributes.html" title="interface in org.eclipse.jetty.util">Attributes</a>&nbsp;getAttributes()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Returns the attributes.</dd>
</dl>
</li>
</ul>
<a id="getClassLoader()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getClassLoader</h4>
<pre class="methodSignature">public&nbsp;java.lang.ClassLoader&nbsp;getClassLoader()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Returns the classLoader.</dd>
</dl>
</li>
</ul>
<a id="getClassPath()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getClassPath</h4>
<pre class="methodSignature"><a href="../../util/annotation/ManagedAttribute.html" title="annotation in org.eclipse.jetty.util.annotation">@ManagedAttribute</a>("The file classpath")
public&nbsp;java.lang.String&nbsp;getClassPath()</pre>
<div class="block">Make best effort to extract a file classpath from the context classloader</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Returns the classLoader.</dd>
</dl>
</li>
</ul>
<a id="getContextPath()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getContextPath</h4>
<pre class="methodSignature"><a href="../../util/annotation/ManagedAttribute.html" title="annotation in org.eclipse.jetty.util.annotation">@ManagedAttribute</a>("True if URLs are compacted to replace the multiple \'/\'s with a single \'/\'")
public&nbsp;java.lang.String&nbsp;getContextPath()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Returns the contextPath.</dd>
</dl>
</li>
</ul>
<a id="getContextPathEncoded()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getContextPathEncoded</h4>
<pre class="methodSignature">public&nbsp;java.lang.String&nbsp;getContextPathEncoded()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Returns the encoded contextPath.</dd>
</dl>
</li>
</ul>
<a id="getRequestContextPath()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getRequestContextPath</h4>
<pre class="methodSignature">public&nbsp;java.lang.String&nbsp;getRequestContextPath()</pre>
<div class="block">Get the context path in a form suitable to be returned from <code>HttpServletRequest.getContextPath()</code>
 or <code>ServletContext.getContextPath()</code>.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Returns the encoded contextPath, or empty string for root context</dd>
</dl>
</li>
</ul>
<a id="getInitParameter(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getInitParameter</h4>
<pre class="methodSignature">public&nbsp;java.lang.String&nbsp;getInitParameter&#8203;(java.lang.String&nbsp;name)</pre>
</li>
</ul>
<a id="setInitParameter(java.lang.String,java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setInitParameter</h4>
<pre class="methodSignature">public&nbsp;java.lang.String&nbsp;setInitParameter&#8203;(java.lang.String&nbsp;name,
                                         java.lang.String&nbsp;value)</pre>
</li>
</ul>
<a id="getInitParameterNames()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getInitParameterNames</h4>
<pre class="methodSignature">public&nbsp;java.util.Enumeration&lt;java.lang.String&gt;&nbsp;getInitParameterNames()</pre>
</li>
</ul>
<a id="getInitParams()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getInitParams</h4>
<pre class="methodSignature"><a href="../../util/annotation/ManagedAttribute.html" title="annotation in org.eclipse.jetty.util.annotation">@ManagedAttribute</a>("Initial Parameter map for the context")
public&nbsp;java.util.Map&lt;java.lang.String,&#8203;java.lang.String&gt;&nbsp;getInitParams()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Returns the initParams.</dd>
</dl>
</li>
</ul>
<a id="getDisplayName()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDisplayName</h4>
<pre class="methodSignature"><a href="../../util/annotation/ManagedAttribute.html" title="annotation in org.eclipse.jetty.util.annotation">@ManagedAttribute</a>(<a href="../../util/annotation/ManagedAttribute.html#value()">value</a>="Display name of the Context",
                  <a href="../../util/annotation/ManagedAttribute.html#readonly()">readonly</a>=true)
public&nbsp;java.lang.String&nbsp;getDisplayName()</pre>
</li>
</ul>
<a id="getEventListeners()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getEventListeners</h4>
<pre class="methodSignature">public&nbsp;java.util.EventListener[]&nbsp;getEventListeners()</pre>
</li>
</ul>
<a id="setEventListeners(java.util.EventListener[])">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setEventListeners</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setEventListeners&#8203;(java.util.EventListener[]&nbsp;eventListeners)</pre>
<div class="block">Set the context event listeners.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>eventListeners</code> - the event listeners</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><code>ServletContextListener</code>, 
<code>ServletContextAttributeListener</code>, 
<code>ServletRequestListener</code>, 
<code>ServletRequestAttributeListener</code></dd>
</dl>
</li>
</ul>
<a id="addEventListener(java.util.EventListener)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addEventListener</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;addEventListener&#8203;(java.util.EventListener&nbsp;listener)</pre>
<div class="block">Add a context event listeners.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>listener</code> - the event listener to add</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><code>ServletContextListener</code>, 
<code>ServletContextAttributeListener</code>, 
<code>ServletRequestListener</code>, 
<code>ServletRequestAttributeListener</code></dd>
</dl>
</li>
</ul>
<a id="removeEventListener(java.util.EventListener)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeEventListener</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;removeEventListener&#8203;(java.util.EventListener&nbsp;listener)</pre>
<div class="block">Remove a context event listeners.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>listener</code> - the event listener to remove</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><code>ServletContextListener</code>, 
<code>ServletContextAttributeListener</code>, 
<code>ServletRequestListener</code>, 
<code>ServletRequestAttributeListener</code></dd>
</dl>
</li>
</ul>
<a id="addProgrammaticListener(java.util.EventListener)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addProgrammaticListener</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;addProgrammaticListener&#8203;(java.util.EventListener&nbsp;listener)</pre>
<div class="block">Apply any necessary restrictions on a programmatic added listener.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>listener</code> - the programmatic listener to add</dd>
</dl>
</li>
</ul>
<a id="isProgrammaticListener(java.util.EventListener)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isProgrammaticListener</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;isProgrammaticListener&#8203;(java.util.EventListener&nbsp;listener)</pre>
</li>
</ul>
<a id="isDurableListener(java.util.EventListener)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isDurableListener</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;isDurableListener&#8203;(java.util.EventListener&nbsp;listener)</pre>
</li>
</ul>
<a id="isShutdown()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isShutdown</h4>
<pre class="methodSignature"><a href="../../util/annotation/ManagedAttribute.html" title="annotation in org.eclipse.jetty.util.annotation">@ManagedAttribute</a>("true for graceful shutdown, which allows existing requests to complete")
public&nbsp;boolean&nbsp;isShutdown()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../util/component/Graceful.html#isShutdown()">isShutdown</a></code>&nbsp;in interface&nbsp;<code><a href="../../util/component/Graceful.html" title="interface in org.eclipse.jetty.util.component">Graceful</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if this context is shutting down</dd>
</dl>
</li>
</ul>
<a id="shutdown()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shutdown</h4>
<pre class="methodSignature">public&nbsp;java.util.concurrent.Future&lt;java.lang.Void&gt;&nbsp;shutdown()</pre>
<div class="block">Set shutdown status. This field allows for graceful shutdown of a context. A started context may be put into non accepting state so that existing
 requests can complete, but no new requests are accepted.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../util/component/Graceful.html#shutdown()">shutdown</a></code>&nbsp;in interface&nbsp;<code><a href="../../util/component/Graceful.html" title="interface in org.eclipse.jetty.util.component">Graceful</a></code></dd>
</dl>
</li>
</ul>
<a id="isAvailable()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isAvailable</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;isAvailable()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>false if this context is unavailable (sends 503)</dd>
</dl>
</li>
</ul>
<a id="setAvailable(boolean)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setAvailable</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setAvailable&#8203;(boolean&nbsp;available)</pre>
<div class="block">Set Available status.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>available</code> - true to set as enabled</dd>
</dl>
</li>
</ul>
<a id="getLogger()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLogger</h4>
<pre class="methodSignature">public&nbsp;<a href="../../util/log/Logger.html" title="interface in org.eclipse.jetty.util.log">Logger</a>&nbsp;getLogger()</pre>
</li>
</ul>
<a id="setLogger(org.eclipse.jetty.util.log.Logger)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setLogger</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setLogger&#8203;(<a href="../../util/log/Logger.html" title="interface in org.eclipse.jetty.util.log">Logger</a>&nbsp;logger)</pre>
</li>
</ul>
<a id="doStart()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>doStart</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;doStart()
                throws java.lang.Exception</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../util/component/ContainerLifeCycle.html#doStart()">ContainerLifeCycle</a></code></span></div>
<div class="block">Starts the managed lifecycle beans in the order they were added.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="ScopedHandler.html#doStart()">doStart</a></code>&nbsp;in class&nbsp;<code><a href="ScopedHandler.html" title="class in org.eclipse.jetty.server.handler">ScopedHandler</a></code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.Exception</code></dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="AbstractHandler.html#doStart()"><code>AbstractHandler.doStart()</code></a></dd>
</dl>
</li>
</ul>
<a id="startContext()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>startContext</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;startContext()
                     throws java.lang.Exception</pre>
<div class="block">Extensible startContext. this method is called from <a href="#doStart()"><code>doStart()</code></a> instead of a call to super.doStart(). This allows derived classes to
 insert additional handling (Eg configuration) before the call to super.doStart by this method will start contained handlers.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.Exception</code> - if unable to start the context</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="ContextHandler.Context.html" title="class in org.eclipse.jetty.server.handler"><code>ContextHandler.Context</code></a></dd>
</dl>
</li>
</ul>
<a id="contextInitialized()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>contextInitialized</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;contextInitialized()
                        throws java.lang.Exception</pre>
<div class="block">Call the ServletContextListeners contextInitialized methods.
 This can be called from a ServletHandler during the proper sequence
 of initializing filters, servlets and listeners. However, if there is
 no ServletHandler, the ContextHandler will call this method during
 doStart().</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.Exception</code></dd>
</dl>
</li>
</ul>
<a id="contextDestroyed()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>contextDestroyed</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;contextDestroyed()
                      throws java.lang.Exception</pre>
<div class="block">Call the ServletContextListeners with contextDestroyed.
 This method can be called from a ServletHandler in the
 proper sequence of destroying filters, servlets and listeners.
 If there is no ServletHandler, the ContextHandler must ensure
 these listeners are called instead.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.Exception</code></dd>
</dl>
</li>
</ul>
<a id="stopContext()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>stopContext</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;stopContext()
                    throws java.lang.Exception</pre>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.Exception</code></dd>
</dl>
</li>
</ul>
<a id="callContextInitialized(javax.servlet.ServletContextListener,javax.servlet.ServletContextEvent)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>callContextInitialized</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;callContextInitialized&#8203;(javax.servlet.ServletContextListener&nbsp;l,
                                      javax.servlet.ServletContextEvent&nbsp;e)</pre>
</li>
</ul>
<a id="callContextDestroyed(javax.servlet.ServletContextListener,javax.servlet.ServletContextEvent)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>callContextDestroyed</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;callContextDestroyed&#8203;(javax.servlet.ServletContextListener&nbsp;l,
                                    javax.servlet.ServletContextEvent&nbsp;e)</pre>
</li>
</ul>
<a id="doStop()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>doStop</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;doStop()
               throws java.lang.Exception</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../util/component/ContainerLifeCycle.html#doStop()">ContainerLifeCycle</a></code></span></div>
<div class="block">Stops the managed lifecycle beans in the reverse order they were added.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="AbstractHandler.html#doStop()">doStop</a></code>&nbsp;in class&nbsp;<code><a href="AbstractHandler.html" title="class in org.eclipse.jetty.server.handler">AbstractHandler</a></code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.Exception</code></dd>
</dl>
</li>
</ul>
<a id="checkVirtualHost(org.eclipse.jetty.server.Request)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkVirtualHost</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;checkVirtualHost&#8203;(<a href="../Request.html" title="class in org.eclipse.jetty.server">Request</a>&nbsp;baseRequest)</pre>
</li>
</ul>
<a id="checkContextPath(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkContextPath</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;checkContextPath&#8203;(java.lang.String&nbsp;uri)</pre>
</li>
</ul>
<a id="checkContext(java.lang.String,org.eclipse.jetty.server.Request,javax.servlet.http.HttpServletResponse)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkContext</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;checkContext&#8203;(java.lang.String&nbsp;target,
                            <a href="../Request.html" title="class in org.eclipse.jetty.server">Request</a>&nbsp;baseRequest,
                            javax.servlet.http.HttpServletResponse&nbsp;response)
                     throws java.io.IOException</pre>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.io.IOException</code></dd>
</dl>
</li>
</ul>
<a id="doScope(java.lang.String,org.eclipse.jetty.server.Request,javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>doScope</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;doScope&#8203;(java.lang.String&nbsp;target,
                    <a href="../Request.html" title="class in org.eclipse.jetty.server">Request</a>&nbsp;baseRequest,
                    javax.servlet.http.HttpServletRequest&nbsp;request,
                    javax.servlet.http.HttpServletResponse&nbsp;response)
             throws java.io.IOException,
                    javax.servlet.ServletException</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ScopedHandler.html#doScope(java.lang.String,org.eclipse.jetty.server.Request,javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)">ScopedHandler</a></code></span></div>
<div class="block">Scope the handler
 <p>Derived implementations should call <a href="ScopedHandler.html#nextScope(java.lang.String,org.eclipse.jetty.server.Request,javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)"><code>ScopedHandler.nextScope(String, Request, HttpServletRequest, HttpServletResponse)</code></a></div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="ScopedHandler.html#doScope(java.lang.String,org.eclipse.jetty.server.Request,javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)">doScope</a></code>&nbsp;in class&nbsp;<code><a href="ScopedHandler.html" title="class in org.eclipse.jetty.server.handler">ScopedHandler</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>target</code> - The target of the request - either a URI or a name.</dd>
<dd><code>baseRequest</code> - The original unwrapped request object.</dd>
<dd><code>request</code> - The request either as the <a href="../Request.html" title="class in org.eclipse.jetty.server"><code>Request</code></a> object or a wrapper of that request. The
 <code><a href="../HttpConnection.html#getCurrentConnection()"><code>HttpConnection.getCurrentConnection()</code></a>.<a href="../HttpConnection.html#getHttpChannel()"><code>getHttpChannel()</code></a>.<a href="../HttpChannel.html#getRequest()"><code>getRequest()</code></a></code>
 method can be used access the Request object if required.</dd>
<dd><code>response</code> - The response as the <a href="../Response.html" title="class in org.eclipse.jetty.server"><code>Response</code></a> object or a wrapper of that request. The
 <code><a href="../HttpConnection.html#getCurrentConnection()"><code>HttpConnection.getCurrentConnection()</code></a>.<a href="../HttpConnection.html#getHttpChannel()"><code>getHttpChannel()</code></a>.<a href="../HttpChannel.html#getResponse()"><code>getResponse()</code></a></code>
 method can be used access the Response object if required.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.io.IOException</code> - if unable to handle the request or response processing</dd>
<dd><code>javax.servlet.ServletException</code> - if unable to handle the request or response due to underlying servlet issue</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="ScopedHandler.html#doScope(java.lang.String,org.eclipse.jetty.server.Request,javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)"><code>ScopedHandler.doScope(java.lang.String, org.eclipse.jetty.server.Request, javax.servlet.http.HttpServletRequest,
 javax.servlet.http.HttpServletResponse)</code></a></dd>
</dl>
</li>
</ul>
<a id="requestInitialized(org.eclipse.jetty.server.Request,javax.servlet.http.HttpServletRequest)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>requestInitialized</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;requestInitialized&#8203;(<a href="../Request.html" title="class in org.eclipse.jetty.server">Request</a>&nbsp;baseRequest,
                                  javax.servlet.http.HttpServletRequest&nbsp;request)</pre>
</li>
</ul>
<a id="requestDestroyed(org.eclipse.jetty.server.Request,javax.servlet.http.HttpServletRequest)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>requestDestroyed</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;requestDestroyed&#8203;(<a href="../Request.html" title="class in org.eclipse.jetty.server">Request</a>&nbsp;baseRequest,
                                javax.servlet.http.HttpServletRequest&nbsp;request)</pre>
</li>
</ul>
<a id="doHandle(java.lang.String,org.eclipse.jetty.server.Request,javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>doHandle</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;doHandle&#8203;(java.lang.String&nbsp;target,
                     <a href="../Request.html" title="class in org.eclipse.jetty.server">Request</a>&nbsp;baseRequest,
                     javax.servlet.http.HttpServletRequest&nbsp;request,
                     javax.servlet.http.HttpServletResponse&nbsp;response)
              throws java.io.IOException,
                     javax.servlet.ServletException</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ScopedHandler.html#doHandle(java.lang.String,org.eclipse.jetty.server.Request,javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)">ScopedHandler</a></code></span></div>
<div class="block">Do the handler work within the scope.
 <p>Derived implementations should call <a href="ScopedHandler.html#nextHandle(java.lang.String,org.eclipse.jetty.server.Request,javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)"><code>ScopedHandler.nextHandle(String, Request, HttpServletRequest, HttpServletResponse)</code></a></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="ScopedHandler.html#doHandle(java.lang.String,org.eclipse.jetty.server.Request,javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)">doHandle</a></code>&nbsp;in class&nbsp;<code><a href="ScopedHandler.html" title="class in org.eclipse.jetty.server.handler">ScopedHandler</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>target</code> - The target of the request - either a URI or a name.</dd>
<dd><code>baseRequest</code> - The original unwrapped request object.</dd>
<dd><code>request</code> - The request either as the <a href="../Request.html" title="class in org.eclipse.jetty.server"><code>Request</code></a> object or a wrapper of that request. The
 <code><a href="../HttpConnection.html#getCurrentConnection()"><code>HttpConnection.getCurrentConnection()</code></a>.<a href="../HttpConnection.html#getHttpChannel()"><code>getHttpChannel()</code></a>.<a href="../HttpChannel.html#getRequest()"><code>getRequest()</code></a></code>
 method can be used access the Request object if required.</dd>
<dd><code>response</code> - The response as the <a href="../Response.html" title="class in org.eclipse.jetty.server"><code>Response</code></a> object or a wrapper of that request. The
 <code><a href="../HttpConnection.html#getCurrentConnection()"><code>HttpConnection.getCurrentConnection()</code></a>.<a href="../HttpConnection.html#getHttpChannel()"><code>getHttpChannel()</code></a>.<a href="../HttpChannel.html#getResponse()"><code>getResponse()</code></a></code>
 method can be used access the Response object if required.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.io.IOException</code> - if unable to handle the request or response processing</dd>
<dd><code>javax.servlet.ServletException</code> - if unable to handle the request or response due to underlying servlet issue</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="ScopedHandler.html#doHandle(java.lang.String,org.eclipse.jetty.server.Request,javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)"><code>ScopedHandler.doHandle(java.lang.String, org.eclipse.jetty.server.Request, javax.servlet.http.HttpServletRequest,
 javax.servlet.http.HttpServletResponse)</code></a></dd>
</dl>
</li>
</ul>
<a id="enterScope(org.eclipse.jetty.server.Request,java.lang.Object)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>enterScope</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;enterScope&#8203;(<a href="../Request.html" title="class in org.eclipse.jetty.server">Request</a>&nbsp;request,
                          java.lang.Object&nbsp;reason)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>request</code> - A request that is applicable to the scope, or null</dd>
<dd><code>reason</code> - An object that indicates the reason the scope is being entered.</dd>
</dl>
</li>
</ul>
<a id="exitScope(org.eclipse.jetty.server.Request)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>exitScope</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;exitScope&#8203;(<a href="../Request.html" title="class in org.eclipse.jetty.server">Request</a>&nbsp;request)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>request</code> - A request that is applicable to the scope, or null</dd>
</dl>
</li>
</ul>
<a id="handle(org.eclipse.jetty.server.Request,java.lang.Runnable)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>handle</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;handle&#8203;(<a href="../Request.html" title="class in org.eclipse.jetty.server">Request</a>&nbsp;request,
                   java.lang.Runnable&nbsp;runnable)</pre>
<div class="block">Handle a runnable in the scope of this context and a particular request</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>request</code> - The request to scope the thread to (may be null if no particular request is in scope)</dd>
<dd><code>runnable</code> - The runnable to run.</dd>
</dl>
</li>
</ul>
<a id="handle(java.lang.Runnable)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>handle</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;handle&#8203;(java.lang.Runnable&nbsp;runnable)</pre>
</li>
</ul>
<a id="isProtectedTarget(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isProtectedTarget</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;isProtectedTarget&#8203;(java.lang.String&nbsp;target)</pre>
<div class="block">Check the target. Called by <a href="ScopedHandler.html#handle(java.lang.String,org.eclipse.jetty.server.Request,javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)"><code>ScopedHandler.handle(String, Request, HttpServletRequest, HttpServletResponse)</code></a> when a target within a context is determined. If
 the target is protected, 404 is returned.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>target</code> - the target to test</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if target is a protected target</dd>
</dl>
</li>
</ul>
<a id="setProtectedTargets(java.lang.String[])">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setProtectedTargets</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setProtectedTargets&#8203;(java.lang.String[]&nbsp;targets)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>targets</code> - Array of URL prefix. Each prefix is in the form /path and will match either /path exactly or /path/anything</dd>
</dl>
</li>
</ul>
<a id="getProtectedTargets()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getProtectedTargets</h4>
<pre class="methodSignature">public&nbsp;java.lang.String[]&nbsp;getProtectedTargets()</pre>
</li>
</ul>
<a id="removeAttribute(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeAttribute</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;removeAttribute&#8203;(java.lang.String&nbsp;name)</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../util/Attributes.html#removeAttribute(java.lang.String)">removeAttribute</a></code>&nbsp;in interface&nbsp;<code><a href="../../util/Attributes.html" title="interface in org.eclipse.jetty.util">Attributes</a></code></dd>
</dl>
</li>
</ul>
<a id="setAttribute(java.lang.String,java.lang.Object)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setAttribute</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setAttribute&#8203;(java.lang.String&nbsp;name,
                         java.lang.Object&nbsp;value)</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../util/Attributes.html#setAttribute(java.lang.String,java.lang.Object)">setAttribute</a></code>&nbsp;in interface&nbsp;<code><a href="../../util/Attributes.html" title="interface in org.eclipse.jetty.util">Attributes</a></code></dd>
</dl>
</li>
</ul>
<a id="setAttributes(org.eclipse.jetty.util.Attributes)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setAttributes</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setAttributes&#8203;(<a href="../../util/Attributes.html" title="interface in org.eclipse.jetty.util">Attributes</a>&nbsp;attributes)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>attributes</code> - The attributes to set.</dd>
</dl>
</li>
</ul>
<a id="clearAttributes()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>clearAttributes</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;clearAttributes()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../util/Attributes.html#clearAttributes()">clearAttributes</a></code>&nbsp;in interface&nbsp;<code><a href="../../util/Attributes.html" title="interface in org.eclipse.jetty.util">Attributes</a></code></dd>
</dl>
</li>
</ul>
<a id="setManagedAttribute(java.lang.String,java.lang.Object)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setManagedAttribute</h4>
<pre class="methodSignature">@Deprecated
public&nbsp;void&nbsp;setManagedAttribute&#8203;(java.lang.String&nbsp;name,
                                java.lang.Object&nbsp;value)</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span></div>
</li>
</ul>
<a id="setClassLoader(java.lang.ClassLoader)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setClassLoader</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setClassLoader&#8203;(java.lang.ClassLoader&nbsp;classLoader)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>classLoader</code> - The classLoader to set.</dd>
</dl>
</li>
</ul>
<a id="setContextPath(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setContextPath</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setContextPath&#8203;(java.lang.String&nbsp;contextPath)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>contextPath</code> - The _contextPath to set.</dd>
</dl>
</li>
</ul>
<a id="setDisplayName(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setDisplayName</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setDisplayName&#8203;(java.lang.String&nbsp;servletContextName)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>servletContextName</code> - The servletContextName to set.</dd>
</dl>
</li>
</ul>
<a id="getBaseResource()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getBaseResource</h4>
<pre class="methodSignature">public&nbsp;<a href="../../util/resource/Resource.html" title="class in org.eclipse.jetty.util.resource">Resource</a>&nbsp;getBaseResource()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Returns the resourceBase.</dd>
</dl>
</li>
</ul>
<a id="getResourceBase()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getResourceBase</h4>
<pre class="methodSignature"><a href="../../util/annotation/ManagedAttribute.html" title="annotation in org.eclipse.jetty.util.annotation">@ManagedAttribute</a>("document root for context")
public&nbsp;java.lang.String&nbsp;getResourceBase()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Returns the base resource as a string.</dd>
</dl>
</li>
</ul>
<a id="setBaseResource(org.eclipse.jetty.util.resource.Resource)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setBaseResource</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setBaseResource&#8203;(<a href="../../util/resource/Resource.html" title="class in org.eclipse.jetty.util.resource">Resource</a>&nbsp;base)</pre>
<div class="block">Set the base resource for this context.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>base</code> - The resource used as the base for all static content of this context.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="#setResourceBase(java.lang.String)"><code>setResourceBase(String)</code></a></dd>
</dl>
</li>
</ul>
<a id="setResourceBase(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setResourceBase</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setResourceBase&#8203;(java.lang.String&nbsp;resourceBase)</pre>
<div class="block">Set the base resource for this context.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>resourceBase</code> - A string representing the base resource for the context. Any string accepted by <a href="../../util/resource/Resource.html#newResource(java.lang.String)"><code>Resource.newResource(String)</code></a> may be passed and the
 call is equivalent to <code>setBaseResource(newResource(resourceBase));</code></dd>
</dl>
</li>
</ul>
<a id="getMimeTypes()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMimeTypes</h4>
<pre class="methodSignature">public&nbsp;<a href="../../http/MimeTypes.html" title="class in org.eclipse.jetty.http">MimeTypes</a>&nbsp;getMimeTypes()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Returns the mimeTypes.</dd>
</dl>
</li>
</ul>
<a id="setMimeTypes(org.eclipse.jetty.http.MimeTypes)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setMimeTypes</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setMimeTypes&#8203;(<a href="../../http/MimeTypes.html" title="class in org.eclipse.jetty.http">MimeTypes</a>&nbsp;mimeTypes)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>mimeTypes</code> - The mimeTypes to set.</dd>
</dl>
</li>
</ul>
<a id="setWelcomeFiles(java.lang.String[])">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setWelcomeFiles</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setWelcomeFiles&#8203;(java.lang.String[]&nbsp;files)</pre>
</li>
</ul>
<a id="getWelcomeFiles()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getWelcomeFiles</h4>
<pre class="methodSignature"><a href="../../util/annotation/ManagedAttribute.html" title="annotation in org.eclipse.jetty.util.annotation">@ManagedAttribute</a>(<a href="../../util/annotation/ManagedAttribute.html#value()">value</a>="Partial URIs of directory welcome files",
                  <a href="../../util/annotation/ManagedAttribute.html#readonly()">readonly</a>=true)
public&nbsp;java.lang.String[]&nbsp;getWelcomeFiles()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The names of the files which the server should consider to be welcome files in this context.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="http://jcp.org/aboutJava/communityprocess/final/jsr154/index.html">The Servlet Specification</a>, 
<a href="#setWelcomeFiles(java.lang.String%5B%5D)"><code>setWelcomeFiles(java.lang.String[])</code></a></dd>
</dl>
</li>
</ul>
<a id="getErrorHandler()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getErrorHandler</h4>
<pre class="methodSignature"><a href="../../util/annotation/ManagedAttribute.html" title="annotation in org.eclipse.jetty.util.annotation">@ManagedAttribute</a>("The error handler to use for the context")
public&nbsp;<a href="ErrorHandler.html" title="class in org.eclipse.jetty.server.handler">ErrorHandler</a>&nbsp;getErrorHandler()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Returns the errorHandler.</dd>
</dl>
</li>
</ul>
<a id="setErrorHandler(org.eclipse.jetty.server.handler.ErrorHandler)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setErrorHandler</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setErrorHandler&#8203;(<a href="ErrorHandler.html" title="class in org.eclipse.jetty.server.handler">ErrorHandler</a>&nbsp;errorHandler)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>errorHandler</code> - The errorHandler to set.</dd>
</dl>
</li>
</ul>
<a id="getMaxFormContentSize()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMaxFormContentSize</h4>
<pre class="methodSignature"><a href="../../util/annotation/ManagedAttribute.html" title="annotation in org.eclipse.jetty.util.annotation">@ManagedAttribute</a>("The maximum content size")
public&nbsp;int&nbsp;getMaxFormContentSize()</pre>
</li>
</ul>
<a id="setMaxFormContentSize(int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setMaxFormContentSize</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setMaxFormContentSize&#8203;(int&nbsp;maxSize)</pre>
<div class="block">Set the maximum size of a form post, to protect against DOS attacks from large forms.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>maxSize</code> - the maximum size of the form content (in bytes)</dd>
</dl>
</li>
</ul>
<a id="getMaxFormKeys()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMaxFormKeys</h4>
<pre class="methodSignature">public&nbsp;int&nbsp;getMaxFormKeys()</pre>
</li>
</ul>
<a id="setMaxFormKeys(int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setMaxFormKeys</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setMaxFormKeys&#8203;(int&nbsp;max)</pre>
<div class="block">Set the maximum number of form Keys to protect against DOS attack from crafted hash keys.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>max</code> - the maximum number of form keys</dd>
</dl>
</li>
</ul>
<a id="isCompactPath()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isCompactPath</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;isCompactPath()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>True if URLs are compacted to replace multiple '/'s with a single '/'</dd>
</dl>
</li>
</ul>
<a id="setCompactPath(boolean)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setCompactPath</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setCompactPath&#8203;(boolean&nbsp;compactPath)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>compactPath</code> - True if URLs are compacted to replace multiple '/'s with a single '/'</dd>
</dl>
</li>
</ul>
<a id="toString()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>toString</h4>
<pre class="methodSignature">public&nbsp;java.lang.String&nbsp;toString()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../util/component/AbstractLifeCycle.html#toString()">toString</a></code>&nbsp;in class&nbsp;<code><a href="../../util/component/AbstractLifeCycle.html" title="class in org.eclipse.jetty.util.component">AbstractLifeCycle</a></code></dd>
</dl>
</li>
</ul>
<a id="loadClass(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>loadClass</h4>
<pre class="methodSignature">public&nbsp;java.lang.Class&lt;?&gt;&nbsp;loadClass&#8203;(java.lang.String&nbsp;className)
                             throws java.lang.ClassNotFoundException</pre>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.ClassNotFoundException</code></dd>
</dl>
</li>
</ul>
<a id="addLocaleEncoding(java.lang.String,java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addLocaleEncoding</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;addLocaleEncoding&#8203;(java.lang.String&nbsp;locale,
                              java.lang.String&nbsp;encoding)</pre>
</li>
</ul>
<a id="getLocaleEncoding(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLocaleEncoding</h4>
<pre class="methodSignature">public&nbsp;java.lang.String&nbsp;getLocaleEncoding&#8203;(java.lang.String&nbsp;locale)</pre>
</li>
</ul>
<a id="getLocaleEncoding(java.util.Locale)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLocaleEncoding</h4>
<pre class="methodSignature">public&nbsp;java.lang.String&nbsp;getLocaleEncoding&#8203;(java.util.Locale&nbsp;locale)</pre>
<div class="block">Get the character encoding for a locale. The full locale name is first looked up in the map of encodings. If no encoding is found, then the locale
 language is looked up.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>locale</code> - a <code>Locale</code> value</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a <code>String</code> representing the character encoding for the locale or null if none found.</dd>
</dl>
</li>
</ul>
<a id="getLocaleEncodings()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLocaleEncodings</h4>
<pre class="methodSignature">public&nbsp;java.util.Map&lt;java.lang.String,&#8203;java.lang.String&gt;&nbsp;getLocaleEncodings()</pre>
<div class="block">Get all of the locale encodings</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a map of all the locale encodings: key is name of the locale and value is the char encoding</dd>
</dl>
</li>
</ul>
<a id="getResource(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getResource</h4>
<pre class="methodSignature">public&nbsp;<a href="../../util/resource/Resource.html" title="class in org.eclipse.jetty.util.resource">Resource</a>&nbsp;getResource&#8203;(java.lang.String&nbsp;path)
                     throws java.net.MalformedURLException</pre>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.net.MalformedURLException</code></dd>
</dl>
</li>
</ul>
<a id="checkAlias(java.lang.String,org.eclipse.jetty.util.resource.Resource)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkAlias</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;checkAlias&#8203;(java.lang.String&nbsp;path,
                          <a href="../../util/resource/Resource.html" title="class in org.eclipse.jetty.util.resource">Resource</a>&nbsp;resource)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>path</code> - the path to check the alias for</dd>
<dd><code>resource</code> - the resource</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>True if the alias is OK</dd>
</dl>
</li>
</ul>
<a id="newResource(java.net.URL)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>newResource</h4>
<pre class="methodSignature">public&nbsp;<a href="../../util/resource/Resource.html" title="class in org.eclipse.jetty.util.resource">Resource</a>&nbsp;newResource&#8203;(java.net.URL&nbsp;url)
                     throws java.io.IOException</pre>
<div class="block">Convert URL to Resource wrapper for <a href="../../util/resource/Resource.html#newResource(java.net.URL)"><code>Resource.newResource(URL)</code></a> enables extensions to provide alternate resource implementations.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>url</code> - the url to convert to a Resource</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the Resource for that url</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.io.IOException</code> - if unable to create a Resource from the URL</dd>
</dl>
</li>
</ul>
<a id="newResource(java.net.URI)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>newResource</h4>
<pre class="methodSignature">public&nbsp;<a href="../../util/resource/Resource.html" title="class in org.eclipse.jetty.util.resource">Resource</a>&nbsp;newResource&#8203;(java.net.URI&nbsp;uri)
                     throws java.io.IOException</pre>
<div class="block">Convert URL to Resource wrapper for <a href="../../util/resource/Resource.html#newResource(java.net.URL)"><code>Resource.newResource(URL)</code></a> enables extensions to provide alternate resource implementations.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>uri</code> - the URI to convert to a Resource</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the Resource for that URI</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.io.IOException</code> - if unable to create a Resource from the URL</dd>
</dl>
</li>
</ul>
<a id="newResource(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>newResource</h4>
<pre class="methodSignature">public&nbsp;<a href="../../util/resource/Resource.html" title="class in org.eclipse.jetty.util.resource">Resource</a>&nbsp;newResource&#8203;(java.lang.String&nbsp;urlOrPath)
                     throws java.io.IOException</pre>
<div class="block">Convert a URL or path to a Resource. The default implementation is a wrapper for <a href="../../util/resource/Resource.html#newResource(java.lang.String)"><code>Resource.newResource(String)</code></a>.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>urlOrPath</code> - The URL or path to convert</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The Resource for the URL/path</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.io.IOException</code> - The Resource could not be created.</dd>
</dl>
</li>
</ul>
<a id="getResourcePaths(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getResourcePaths</h4>
<pre class="methodSignature">public&nbsp;java.util.Set&lt;java.lang.String&gt;&nbsp;getResourcePaths&#8203;(java.lang.String&nbsp;path)</pre>
</li>
</ul>
<a id="addAliasCheck(org.eclipse.jetty.server.handler.ContextHandler.AliasCheck)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addAliasCheck</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;addAliasCheck&#8203;(<a href="ContextHandler.AliasCheck.html" title="interface in org.eclipse.jetty.server.handler">ContextHandler.AliasCheck</a>&nbsp;check)</pre>
<div class="block">Add an AliasCheck instance to possibly permit aliased resources</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>check</code> - The alias checker</dd>
</dl>
</li>
</ul>
<a id="getAliasChecks()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAliasChecks</h4>
<pre class="methodSignature">public&nbsp;java.util.List&lt;<a href="ContextHandler.AliasCheck.html" title="interface in org.eclipse.jetty.server.handler">ContextHandler.AliasCheck</a>&gt;&nbsp;getAliasChecks()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Mutable list of Alias checks</dd>
</dl>
</li>
</ul>
<a id="setAliasChecks(java.util.List)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setAliasChecks</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setAliasChecks&#8203;(java.util.List&lt;<a href="ContextHandler.AliasCheck.html" title="interface in org.eclipse.jetty.server.handler">ContextHandler.AliasCheck</a>&gt;&nbsp;checks)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>checks</code> - list of AliasCheck instances</dd>
</dl>
</li>
</ul>
<a id="clearAliasChecks()">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>clearAliasChecks</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;clearAliasChecks()</pre>
<div class="block">clear the list of AliasChecks</div>
</li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
</div>
</main>
<!-- ========= END OF CLASS DATA ========= -->
<footer role="contentinfo">
<nav role="navigation">
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a id="navbar.bottom">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.bottom.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/ContextHandler.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a id="skip.navbar.bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</nav>
<p class="legalCopy"><small>Copyright &#169; 1995&#x2013;2021 <a href="https://webtide.com">Webtide</a>. All rights reserved.</small></p>
</footer>
</body>
</html>
