blob: 2377b1d322bb9678e36c1376f335374bb6f4e092 [file] [log] [blame]
刘洪青6266f992017-05-15 21:21:03 +08001<html><head><META http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><title>Apache Tomcat 7 Configuration Reference (7.0.77) - System Properties</title><style type="text/css" media="print">
2 .noPrint {display: none;}
3 td#mainBody {width: 100%;}
4</style><style type="text/css">
5code {background-color:rgb(224,255,255);padding:0 0.1em;}
6code.attributeName, code.propertyName {background-color:transparent;}
7
8
9table {
10 border-collapse: collapse;
11 text-align: left;
12}
13table *:not(table) {
14 /* Prevent border-collapsing for table child elements like <div> */
15 border-collapse: separate;
16}
17
18th {
19 text-align: left;
20}
21
22
23div.codeBox pre code, code.attributeName, code.propertyName, code.noHighlight, .noHighlight code {
24 background-color: transparent;
25}
26div.codeBox {
27 overflow: auto;
28 margin: 1em 0;
29}
30div.codeBox pre {
31 margin: 0;
32 padding: 4px;
33 border: 1px solid #999;
34 border-radius: 5px;
35 background-color: #eff8ff;
36 display: table; /* To prevent <pre>s from taking the complete available width. */
37 /*
38 When it is officially supported, use the following CSS instead of display: table
39 to prevent big <pre>s from exceeding the browser window:
40 max-width: available;
41 width: min-content;
42 */
43}
44
45div.codeBox pre.wrap {
46 white-space: pre-wrap;
47}
48
49
50table.defaultTable tr, table.detail-table tr {
51 border: 1px solid #CCC;
52}
53
54table.defaultTable tr:nth-child(even), table.detail-table tr:nth-child(even) {
55 background-color: #FAFBFF;
56}
57
58table.defaultTable tr:nth-child(odd), table.detail-table tr:nth-child(odd) {
59 background-color: #EEEFFF;
60}
61
62table.defaultTable th, table.detail-table th {
63 background-color: #88b;
64 color: #fff;
65}
66
67table.defaultTable th, table.defaultTable td, table.detail-table th, table.detail-table td {
68 padding: 5px 8px;
69}
70
71
72p.notice {
73 border: 1px solid rgb(255, 0, 0);
74 background-color: rgb(238, 238, 238);
75 color: rgb(0, 51, 102);
76 padding: 0.5em;
77 margin: 1em 2em 1em 1em;
78}
79</style></head><body bgcolor="#ffffff" text="#000000" link="#525D76" alink="#525D76" vlink="#525D76"><table border="0" width="100%" cellspacing="0"><!--PAGE HEADER--><tr><td><!--PROJECT LOGO--><a href="http://tomcat.apache.org/"><img src="../images/tomcat.gif" align="right" alt="
Hongqing Liufd5ee812014-05-10 16:32:51 +080080 The Apache Tomcat Servlet/JSP Container
刘洪青6266f992017-05-15 21:21:03 +080081 " border="0"></a></td><td><h1><font face="arial,helvetica,sanserif">Apache Tomcat 7</font></h1><font face="arial,helvetica,sanserif">Version 7.0.77, Mar 28 2017</font></td><td><!--APACHE LOGO--><a href="http://www.apache.org/"><img src="../images/asf-logo.svg" align="right" alt="Apache Logo" border="0" style="width: 266px;height: 83px;"></a></td></tr></table><table border="0" width="100%" cellspacing="4"><!--HEADER SEPARATOR--><tr><td colspan="2"><hr noshade size="1"></td></tr><tr><!--LEFT SIDE NAVIGATION--><td width="20%" valign="top" nowrap class="noPrint"><p><strong>Links</strong></p><ul><li><a href="../index.html">Docs Home</a></li><li><a href="index.html">Config Ref. Home</a></li><li><a href="http://wiki.apache.org/tomcat/FAQ">FAQ</a></li><li><a href="#comments_section">User Comments</a></li></ul><p><strong>Top Level Elements</strong></p><ul><li><a href="server.html">Server</a></li><li><a href="service.html">Service</a></li></ul><p><strong>Executors</strong></p><ul><li><a href="executor.html">Executor</a></li></ul><p><strong>Connectors</strong></p><ul><li><a href="http.html">HTTP</a></li><li><a href="ajp.html">AJP</a></li></ul><p><strong>Containers</strong></p><ul><li><a href="context.html">Context</a></li><li><a href="engine.html">Engine</a></li><li><a href="host.html">Host</a></li><li><a href="cluster.html">Cluster</a></li></ul><p><strong>Nested Components</strong></p><ul><li><a href="globalresources.html">Global Resources</a></li><li><a href="jar-scanner.html">JarScanner</a></li><li><a href="listeners.html">Listeners</a></li><li><a href="loader.html">Loader</a></li><li><a href="manager.html">Manager</a></li><li><a href="realm.html">Realm</a></li><li><a href="resources.html">Resources</a></li><li><a href="sessionidgenerator.html">SessionIdGenerator</a></li><li><a href="valve.html">Valve</a></li></ul><p><strong>Cluster Elements</strong></p><ul><li><a href="cluster.html">Cluster</a></li><li><a href="cluster-manager.html">Manager</a></li><li><a href="cluster-channel.html">Channel</a></li><li><a href="cluster-membership.html">Channel/Membership</a></li><li><a href="cluster-sender.html">Channel/Sender</a></li><li><a href="cluster-receiver.html">Channel/Receiver</a></li><li><a href="cluster-interceptor.html">Channel/Interceptor</a></li><li><a href="cluster-valve.html">Valve</a></li><li><a href="cluster-deployer.html">Deployer</a></li><li><a href="cluster-listener.html">ClusterListener</a></li></ul><p><strong>web.xml</strong></p><ul><li><a href="filter.html">Filter</a></li></ul><p><strong>Other</strong></p><ul><li><a href="systemprops.html">System properties</a></li></ul></td><!--RIGHT SIDE MAIN BODY--><td width="80%" valign="top" align="left" id="mainBody"><h1>System Properties</h1><table border="0" cellspacing="0" cellpadding="2"><tr><td bgcolor="#525D76"><font color="#ffffff" face="arial,helvetica.sanserif"><a name="Table of Contents"><!--()--></a><a name="Table_of_Contents"><strong>Table of Contents</strong></a></font></td></tr><tr><td><blockquote>
82<ul><li><a href="#Introduction">Introduction</a></li><li><a href="#Property_replacements">Property replacements</a></li><li><a href="#Clustering">Clustering</a></li><li><a href="#Expression_Language">Expression Language</a></li><li><a href="#Jasper">Jasper</a></li><li><a href="#Security">Security</a></li><li><a href="#Specification">Specification</a></li><li><a href="#Sessions">Sessions</a></li><li><a href="#Logging">Logging</a></li><li><a href="#JAR_Scanning">JAR Scanning</a></li><li><a href="#Websockets">Websockets</a></li><li><a href="#Other">Other</a></li></ul>
Hongqing Liufd5ee812014-05-10 16:32:51 +080083</blockquote></td></tr></table><table border="0" cellspacing="0" cellpadding="2"><tr><td bgcolor="#525D76"><font color="#ffffff" face="arial,helvetica.sanserif"><a name="Introduction"><strong>Introduction</strong></a></font></td></tr><tr><td><blockquote>
84 <p>The following sections list the system properties that may be set to modify
85 the default Tomcat behaviour.</p>
刘洪青6266f992017-05-15 21:21:03 +080086</blockquote></td></tr></table><table border="0" cellspacing="0" cellpadding="2"><tr><td bgcolor="#525D76"><font color="#ffffff" face="arial,helvetica.sanserif"><a name="Property replacements"><!--()--></a><a name="Property_replacements"><strong>Property replacements</strong></a></font></td></tr><tr><td><blockquote>
87 <table border="1" cellpadding="5"><tr><th width="15%" bgcolor="#023264"><font color="#ffffff">Property</font></th><th width="85%" bgcolor="#023264"><font color="#ffffff">Description</font></th></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.tomcat.util.digester. PROPERTY_SOURCE</code></td><td align="left" valign="center">
88 <p>Set this to a fully qualified name of a class that implements
89 <code>org.apache.tomcat.util.IntrospectionUtils.PropertySource</code>.
90 Required to have a public constructor with no arguments.</p>
91 <p>Use this to add a property source, that will be invoked when <code>${parameter}</code>
92 denoted parameters are found in the XML files that Tomcat parses.</p>
93 </td></tr></table>
94
Hongqing Liufd5ee812014-05-10 16:32:51 +080095</blockquote></td></tr></table><table border="0" cellspacing="0" cellpadding="2"><tr><td bgcolor="#525D76"><font color="#ffffff" face="arial,helvetica.sanserif"><a name="Clustering"><strong>Clustering</strong></a></font></td></tr><tr><td><blockquote>
刘洪青6266f992017-05-15 21:21:03 +080096 <table border="1" cellpadding="5"><tr><th width="15%" bgcolor="#023264"><font color="#ffffff">Property</font></th><th width="85%" bgcolor="#023264"><font color="#ffffff">Description</font></th></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.catalina. tribes.dns_lookups</code></td><td align="left" valign="center">
Hongqing Liufd5ee812014-05-10 16:32:51 +080097 <p>If <code>true</code>, the clustering module will attempt to use DNS to
98 resolve any host names provided in the cluster configuration.</p>
99 <p>If not specified, the default value of <code>false</code> will be used.</p>
100 </td></tr></table>
101
102</blockquote></td></tr></table><table border="0" cellspacing="0" cellpadding="2"><tr><td bgcolor="#525D76"><font color="#ffffff" face="arial,helvetica.sanserif"><a name="Expression Language"><!--()--></a><a name="Expression_Language"><strong>Expression Language</strong></a></font></td></tr><tr><td><blockquote>
刘洪青6266f992017-05-15 21:21:03 +0800103 <table border="1" cellpadding="5"><tr><th width="15%" bgcolor="#023264"><font color="#ffffff">Property</font></th><th width="85%" bgcolor="#023264"><font color="#ffffff">Description</font></th></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.el.BeanELResolver. CACHE_SIZE</code></td><td align="left" valign="center">
Hongqing Liufd5ee812014-05-10 16:32:51 +0800104 <p>The number of javax.el.BeanELResolver.BeanProperties objects that will
105 be cached by the EL Parser.</p>
106 <p>If not specified, the default of <code>1000</code> will be used.</p>
刘洪青6266f992017-05-15 21:21:03 +0800107 </td></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.el.ExpressionBuilder. CACHE_SIZE</code></td><td align="left" valign="center">
Hongqing Liufd5ee812014-05-10 16:32:51 +0800108 <p>The number of parsed EL expressions that will be cached by the EL
109 Parser.</p>
110 <p>If not specified, the default of <code>5000</code> will be used.</p>
刘洪青6266f992017-05-15 21:21:03 +0800111 </td></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.el.parser. COERCE_TO_ZERO</code></td><td align="left" valign="center">
112 <p>If <code>true</code>, when coercing expressions to numbers
Hongqing Liufd5ee812014-05-10 16:32:51 +0800113 <code>""</code> and <code>null</code> will be coerced to zero as required
114 by the specification.</p>
115 <p>If not specified, the default value of <code>true</code> will be used.</p>
刘洪青6266f992017-05-15 21:21:03 +0800116 </td></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.el.parser. SKIP_IDENTIFIER_CHECK</code></td><td align="left" valign="center">
117 <p>If <code>true</code>, when parsing expressions, identifiers will not be
Hongqing Liufd5ee812014-05-10 16:32:51 +0800118 checked to ensure that they conform to the Java Language Specification for
119 Java identifiers.</p>
刘洪青6266f992017-05-15 21:21:03 +0800120 <p>If not specified, the default value of <code>false</code> will be used.</p>
Hongqing Liufd5ee812014-05-10 16:32:51 +0800121 </td></tr></table>
122</blockquote></td></tr></table><table border="0" cellspacing="0" cellpadding="2"><tr><td bgcolor="#525D76"><font color="#ffffff" face="arial,helvetica.sanserif"><a name="Jasper"><strong>Jasper</strong></a></font></td></tr><tr><td><blockquote>
刘洪青6266f992017-05-15 21:21:03 +0800123 <table border="1" cellpadding="5"><tr><th width="15%" bgcolor="#023264"><font color="#ffffff">Property</font></th><th width="85%" bgcolor="#023264"><font color="#ffffff">Description</font></th></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.jasper.compiler. Generator.POOL_TAGS_WITH_EXTENDS</code></td><td align="left" valign="center">
Hongqing Liufd5ee812014-05-10 16:32:51 +0800124 <p>By default, JSPs that use their own base class via the extends
125 attribute of the page directive, will have Tag pooling disabled since
126 Jasper cannot guarantee that the necessary initialisation will have taken
127 place. This can have a negative impact on performance. Providing the
128 alternative base class calls _jspInit() from Servlet.init(), setting this
129 property to <code>true</code> will enable pooling with an alternative base
130 class. If the alternative base class does not call _jspInit() and this
131 property is <code>true</code>, NPEs will occur when attempting to use
132 tags.</p>
133 <p>If not specified, the default value of <code>false</code> will be used.
134 </p>
刘洪青6266f992017-05-15 21:21:03 +0800135 </td></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.jasper.compiler. Generator.STRICT_GET_PROPERTY</code></td><td align="left" valign="center">
Hongqing Liufd5ee812014-05-10 16:32:51 +0800136 <p>If <code>true</code>, the requirement to have the object referenced in
137 <code>jsp:getProperty</code> action to be previously "introduced"
138 to the JSP processor, as specified in the chapter JSP.5.3 of JSP 2.0 and
139 later specifications, is enforced.</p>
刘洪青6266f992017-05-15 21:21:03 +0800140 <p>If not specified, the specification compliant default of
141 <code>true</code> will be used.</p>
142 </td></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.jasper.compiler. Generator.VAR_EXPRESSIONFACTORY</code></td><td align="left" valign="center">
143 <p>The name of the variable to use for the expression language expression
144 factory.</p>
145 <p>If not specified, the default value of <code>_el_expressionfactory</code>
Hongqing Liufd5ee812014-05-10 16:32:51 +0800146 will be used.</p>
刘洪青6266f992017-05-15 21:21:03 +0800147 </td></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.jasper.compiler. Generator.VAR_INSTANCEMANAGER</code></td><td align="left" valign="center">
148 <p>The name of the variable to use for the instance manager factory.</p>
149 <p>If not specified, the default value of <code>_jsp_instancemanager</code>
150 will be used.</p>
151 </td></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.jasper.compiler. Parser.STRICT_QUOTE_ESCAPING</code></td><td align="left" valign="center">
Hongqing Liufd5ee812014-05-10 16:32:51 +0800152 <p>If <code>false</code> the requirements for escaping quotes in JSP
153 attributes will be relaxed so that an unescaped quote will not
154 cause an error.</p>
155 <p>If not specified, the specification compliant default of
156 <code>true</code> will be used.</p>
刘洪青6266f992017-05-15 21:21:03 +0800157 </td></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.jasper.compiler. Parser.STRICT_WHITESPACE</code></td><td align="left" valign="center">
158 <p>If <code>false</code> the requirements for whitespace before an
159 attribute name will be relaxed so that the lack of whitespace will not
160 cause an error.</p>
161 <p>If not specified, the specification compliant default of
162 <code>true</code> will be used.</p>
163 </td></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.jasper.runtime. BodyContentImpl.LIMIT_BUFFER</code></td><td align="left" valign="center">
Hongqing Liufd5ee812014-05-10 16:32:51 +0800164 <p>If <code>true</code>, any tag buffer that expands beyond
165 <code>org.apache.jasper.Constants.DEFAULT_TAG_BUFFER_SIZE</code> will be
166 destroyed and a new buffer created of the default size.</p>
167 <p>If not specified, the default value of <code>false</code> will be used.</p>
刘洪青6266f992017-05-15 21:21:03 +0800168 </td></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.jasper.runtime. JspFactoryImpl.USE_POOL</code></td><td align="left" valign="center">
Hongqing Liufd5ee812014-05-10 16:32:51 +0800169 <p>If <code>true</code>, a ThreadLocal <code>PageContext</code> pool will
170 be used.</p>
171 <p>If not specified, the default value of <code>true</code> will be used.</p>
刘洪青6266f992017-05-15 21:21:03 +0800172 </td></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.jasper.runtime. JspFactoryImpl.POOL_SIZE</code></td><td align="left" valign="center">
Hongqing Liufd5ee812014-05-10 16:32:51 +0800173 <p>The size of the ThreadLocal <code>PageContext</code>.</p>
174 <p>If not specified, the default value of <code>8</code> will be used.</p>
刘洪青6266f992017-05-15 21:21:03 +0800175 </td></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.jasper.Constants. JSP_SERVLET_BASE</code></td><td align="left" valign="center">
Hongqing Liufd5ee812014-05-10 16:32:51 +0800176 <p>The base class of the Servlets generated from the JSPs.</p>
177 <p>If not specified, the default value of
178 <code>org.apache.jasper.runtime.HttpJspBase</code> will be used.</p>
刘洪青6266f992017-05-15 21:21:03 +0800179 </td></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.jasper.Constants. SERVICE_METHOD_NAME</code></td><td align="left" valign="center">
Hongqing Liufd5ee812014-05-10 16:32:51 +0800180 <p>The name of the service method called by the base class.</p>
181 <p>If not specified, the default value of <code>_jspService</code>
182 will be used.</p>
刘洪青6266f992017-05-15 21:21:03 +0800183 </td></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.jasper.Constants. SERVLET_CLASSPATH</code></td><td align="left" valign="center">
Hongqing Liufd5ee812014-05-10 16:32:51 +0800184 <p>The name of the ServletContext attribute that provides the classpath
185 for the JSP.</p>
186 <p>If not specified, the default value of
187 <code>org.apache.catalina.jsp_classpath</code> will be used.</p>
刘洪青6266f992017-05-15 21:21:03 +0800188 </td></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.jasper.Constants. JSP_FILE</code></td><td align="left" valign="center">
Hongqing Liufd5ee812014-05-10 16:32:51 +0800189 <p>The name of the request attribute for <code>&lt;jsp-file&gt;</code>
190 element of a servlet definition. If present on a request, this overrides
191 the value returned by <code>request.getServletPath()</code> to select the
192 JSP page to be executed.</p>
193 <p>If not specified, the default value of
194 <code>org.apache.catalina.jsp_file</code> will be used.</p>
刘洪青6266f992017-05-15 21:21:03 +0800195 <p><strong>Deprecated:</strong> This will be removed in Tomcat 9.0.x
196 onwards. It is replaced by the use of the jspFile servlet initialisation
197 parameter</p>
198 </td></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.jasper.Constants. PRECOMPILE</code></td><td align="left" valign="center">
Hongqing Liufd5ee812014-05-10 16:32:51 +0800199 <p>The name of the query parameter that causes the JSP engine to just
200 pregenerate the servlet but not invoke it.</p>
201 <p>If not specified, the default value of <code>jsp_precompile</code>
202 will be used, as defined by JSP specification (JSP.11.4.2).</p>
刘洪青6266f992017-05-15 21:21:03 +0800203 </td></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.jasper.Constants. JSP_PACKAGE_NAME</code></td><td align="left" valign="center">
Hongqing Liufd5ee812014-05-10 16:32:51 +0800204 <p>The default package name for compiled jsp pages.</p>
205 <p>If not specified, the default value of <code>org.apache.jsp</code>
206 will be used.</p>
刘洪青6266f992017-05-15 21:21:03 +0800207 </td></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.jasper.Constants. TAG_FILE_PACKAGE_NAME</code></td><td align="left" valign="center">
Hongqing Liufd5ee812014-05-10 16:32:51 +0800208 <p>The default package name for tag handlers generated from tag files.</p>
209 <p>If not specified, the default value of <code>org.apache.jsp.tag</code>
210 will be used.</p>
刘洪青6266f992017-05-15 21:21:03 +0800211 </td></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.jasper.Constants. ALT_DD_ATTR</code></td><td align="left" valign="center">
Hongqing Liufd5ee812014-05-10 16:32:51 +0800212 <p>The servlet context attribute under which the alternate deployment
213 descriptor for this web application is stored.</p>
刘洪青6266f992017-05-15 21:21:03 +0800214 <p>If not specified, the default value of
215 <code>org.apache.catalina.deploy.alt_dd</code> will be used.</p>
216 </td></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.jasper.Constants. TEMP_VARIABLE_NAME_PREFIX</code></td><td align="left" valign="center">
Hongqing Liufd5ee812014-05-10 16:32:51 +0800217 <p>Prefix to use for generated temporary variable names.</p>
刘洪青6266f992017-05-15 21:21:03 +0800218 <p>If not specified, the default value of <code>_jspx_temp</code>
219 will be used.</p>
220 </td></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.jasper.Constants. USE_INSTANCE_MANAGER_FOR_TAGS</code></td><td align="left" valign="center">
Hongqing Liufd5ee812014-05-10 16:32:51 +0800221 <p>If <code>true</code>, the instance manager is used to obtain tag
222 handler instances.</p>
223 <p>If not specified, the default value of <code>false</code> will be used.</p>
224 </td></tr></table>
225
226</blockquote></td></tr></table><table border="0" cellspacing="0" cellpadding="2"><tr><td bgcolor="#525D76"><font color="#ffffff" face="arial,helvetica.sanserif"><a name="Security"><strong>Security</strong></a></font></td></tr><tr><td><blockquote>
227
刘洪青6266f992017-05-15 21:21:03 +0800228 <table border="1" cellpadding="5"><tr><th width="15%" bgcolor="#023264"><font color="#ffffff">Property</font></th><th width="85%" bgcolor="#023264"><font color="#ffffff">Description</font></th></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.catalina.connector. RECYCLE_FACADES</code></td><td align="left" valign="center">
Hongqing Liufd5ee812014-05-10 16:32:51 +0800229 <p>If this is <code>true</code> or if a security manager is in use a new
230 facade object will be created for each request.</p>
刘洪青6266f992017-05-15 21:21:03 +0800231 <p>If not specified, the default value of <code>false</code> will be used.</p>
232 </td></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.catalina.connector. CoyoteAdapter.ALLOW_BACKSLASH</code></td><td align="left" valign="center">
Hongqing Liufd5ee812014-05-10 16:32:51 +0800233 <p>If this is <code>true</code> the '\' character will be permitted as a
234 path delimiter.</p>
刘洪青6266f992017-05-15 21:21:03 +0800235 <p>If not specified, the default value of <code>false</code> will be used.</p>
236 </td></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.tomcat.util.buf. UDecoder.ALLOW_ENCODED_SLASH</code></td><td align="left" valign="center">
Hongqing Liufd5ee812014-05-10 16:32:51 +0800237 <p>If this is <code>true</code> '%2F' and '%5C' will be permitted as path
238 delimiters.</p>
Hongqing Liufd5ee812014-05-10 16:32:51 +0800239 <p>If not specified, the default value of <code>false</code> will be used.</p>
240 </td></tr></table>
241
242</blockquote></td></tr></table><table border="0" cellspacing="0" cellpadding="2"><tr><td bgcolor="#525D76"><font color="#ffffff" face="arial,helvetica.sanserif"><a name="Specification"><strong>Specification</strong></a></font></td></tr><tr><td><blockquote>
243
刘洪青6266f992017-05-15 21:21:03 +0800244 <table border="1" cellpadding="5"><tr><th width="15%" bgcolor="#023264"><font color="#ffffff">Property</font></th><th width="85%" bgcolor="#023264"><font color="#ffffff">Description</font></th></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.catalina. STRICT_SERVLET_COMPLIANCE</code></td><td align="left" valign="center">
245 <p>The default value of this system property is <code>false</code>.</p>
246 <p>If this is <code>true</code> the default values will be changed for:</p>
Hongqing Liufd5ee812014-05-10 16:32:51 +0800247 <ul>
刘洪青6266f992017-05-15 21:21:03 +0800248 <li><code>org.apache.catalina.core.<br>ApplicationContext.GET_RESOURCE_REQUIRE_SLASH</code></li>
249 <li><code>org.apache.catalina.core.<br>ApplicationDispatcher.WRAP_SAME_OBJECT</code></li>
250 <li><code>org.apache.catalina.core.<br>StandardHostValve.ACCESS_SESSION</code></li>
251 <li><code>org.apache.catalina.session.<br>StandardSession.ACTIVITY_CHECK</code></li>
252 <li><code>org.apache.catalina.session.<br>StandardSession.LAST_ACCESS_AT_START</code></li>
253 <li><code>org.apache.tomcat.util.http.<br>ServerCookie.ALWAYS_ADD_EXPIRES</code></li>
254 <li><code>org.apache.tomcat.util.http.<br>ServerCookie.FWD_SLASH_IS_SEPARATOR</code></li>
255 <li><code>org.apache.tomcat.util.http.<br>ServerCookie.PRESERVE_COOKIE_HEADER</code></li>
256 <li><code>org.apache.tomcat.util.http.<br>ServerCookie.STRICT_NAMING</code></li>
257 <li>The <code>resourceOnlyServlets</code> attribute of any
Hongqing Liufd5ee812014-05-10 16:32:51 +0800258 <a href="context.html">Context</a> element.</li>
259 <li>The <code>tldValidation</code> attribute of any
260 <a href="context.html">Context</a> element.</li>
刘洪青6266f992017-05-15 21:21:03 +0800261 <li>The <code>useRelativeRedirects</code> attribute of any
262 <a href="context.html">Context</a> element.</li>
263 <li>The <code>xmlNamespaceAware</code> attribute of any
264 <a href="context.html">Context</a> element.</li>
265 <li>The <code>xmlValidation</code> attribute of any
266 <a href="context.html">Context</a> element.</li>
Hongqing Liufd5ee812014-05-10 16:32:51 +0800267 </ul>
刘洪青6266f992017-05-15 21:21:03 +0800268
269 <p>Note that changing a number of the above defaults is likely to break
270 the majority of systems as some browsers are unable to correctly handle
271 the cookie headers that result from a strict adherence to the
272 specifications. Defaults, regardless of whether or not they have been
273 changed by setting
274 <code>org.apache.catalina.STRICT_SERVLET_COMPLIANCE</code> can always be
275 overridden by explicitly setting the appropriate system property or element
276 attribute.</p>
277 </td></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.catalina.connector. Response.ENFORCE_ENCODING_IN_GET_WRITER</code></td><td align="left" valign="center">
278 <p>If this is <code>true</code> then
279 a call to <code>Response.getWriter()</code> if no character encoding
280 has been specified will result in subsequent calls to
281 <code>Response.getCharacterEncoding()</code> returning
282 <code>ISO-8859-1</code> and the <code>Content-Type</code> response header
283 will include a <code>charset=ISO-8859-1</code> component. (SRV.15.2.22.1)</p>
284 <p>If not specified, the default specification compliant value of
285 <code>true</code> will be used.</p>
286 </td></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.catalina.core.ApplicationContext .GET_RESOURCE_REQUIRE_SLASH</code></td><td align="left" valign="center">
287 <p>If this is <code>true</code> then the path passed to
288 <code>ServletContext.getResource()</code> or
289 <code>ServletContext.getResourceAsStream()</code> must start with
290 "/". If <code>false</code>, code like
291 <code>getResource("myfolder/myresource.txt")</code> will work.</p>
292 <p>If <code>org.apache.catalina.STRICT_SERVLET_COMPLIANCE</code> is set to
293 <code>true</code>, the default of this setting will be <code>true</code>,
294 else the default value will be <code>false</code>.</p>
295 </td></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.catalina.core. ApplicationDispatcher.WRAP_SAME_OBJECT</code></td><td align="left" valign="center">
296 <p>If this is <code>true</code> then any wrapped request or response
297 object passed to an application dispatcher will be checked to ensure that
298 it has wrapped the original request or response.</p>
299 <p>If <code>org.apache.catalina.STRICT_SERVLET_COMPLIANCE</code> is set to
300 <code>true</code>, the default of this setting will be <code>true</code>,
301 else the default value will be <code>false</code>.</p>
302 </td></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.tomcat.util.http. ServerCookie.ALLOW_EQUALS_IN_VALUE</code></td><td align="left" valign="center">
Hongqing Liufd5ee812014-05-10 16:32:51 +0800303 <p>If this is <code>true</code> Tomcat will allow '<code>=</code>'
304 characters when parsing unquoted cookie values. If <code>false</code>,
305 cookie values containing '<code>=</code>' will be terminated when the
306 '<code>=</code>' is encountered and the remainder of the cookie value will
307 be dropped.</p>
刘洪青6266f992017-05-15 21:21:03 +0800308 <p>If not specified, the default value specification compliant value of
309 <code>false</code> will be used.</p>
310 </td></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.tomcat.util.http. ServerCookie.ALLOW_HTTP_SEPARATORS_IN_V0</code></td><td align="left" valign="center">
311 <p>If this is <code>true</code> Tomcat will allow HTTP separators in
312 cookie names and values.</p>
Hongqing Liufd5ee812014-05-10 16:32:51 +0800313 <p>If not specified, the default specification compliant value of
314 <code>false</code> will be used.</p>
刘洪青6266f992017-05-15 21:21:03 +0800315 </td></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.tomcat.util.http. ServerCookie.ALLOW_NAME_ONLY</code></td><td align="left" valign="center">
316 <p>If this is <code>false</code> then the requirements of the cookie
317 specifications that cookies must have values will be enforced and cookies
318 consisting only of a name but no value will be ignored.</p>
319 <p>If not specified, the default specification compliant value of
320 <code>false</code> will be used.</p>
321 </td></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.tomcat.util.http. ServerCookie.ALWAYS_ADD_EXPIRES</code></td><td align="left" valign="center">
Hongqing Liufd5ee812014-05-10 16:32:51 +0800322 <p>If this is <code>true</code> Tomcat will always add an expires
323 parameter to a SetCookie header even for cookies with version greater than
324 zero. This is to work around a known IE6 and IE7 bug that causes IE to
325 ignore the Max-Age parameter in a SetCookie header.</p>
刘洪青6266f992017-05-15 21:21:03 +0800326 <p>If <code>org.apache.catalina.STRICT_SERVLET_COMPLIANCE</code> is set to
327 <code>true</code>, the default of this setting will be <code>false</code>,
328 else the default value will be <code>true</code>.</p>
329 </td></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.tomcat.util.http. ServerCookie.FWD_SLASH_IS_SEPARATOR</code></td><td align="left" valign="center">
330 <p> If this is true then the <code>/</code> (forward slash) character will
331 be treated as a separator. Note that this character is frequently used in
332 cookie path attributes and some browsers will fail to process a cookie if
333 the path attribute is quoted as is required by a strict adherence to the
334 specifications. This is highly likely to break session tracking using
335 cookies.</p>
336 <p>If <code>org.apache.catalina.STRICT_SERVLET_COMPLIANCE</code> is set to
337 <code>true</code>, the default of this setting will be <code>true</code>,
338 else the default value will be <code>false</code>.</p>
339 </td></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.tomcat.util.http. ServerCookie.PRESERVE_COOKIE_HEADER</code></td><td align="left" valign="center">
340 <p>If this is <code>true</code> Tomcat will ensure that cookie
341 processing does not modify cookie header returned by
342 <code>HttpServletRequest.getHeader()</code>.</p>
343 <p>If <code>org.apache.catalina.STRICT_SERVLET_COMPLIANCE</code> is set to
344 <code>true</code>, the default of this setting will be <code>true</code>,
345 else the default value will be <code>false</code>.</p>
346 </td></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.tomcat.util.http. ServerCookie.STRICT_NAMING</code></td><td align="left" valign="center">
347 <p> If this is true then the requirements of the Servlet specification
348 that Cookie names must adhere to RFC2109 (no use of separators) will be
349 enforced.</p>
350 <p>If <code>org.apache.catalina.STRICT_SERVLET_COMPLIANCE</code> is set to
351 <code>true</code>, the default of this setting will be <code>true</code>,
352 else the default value will be <code>false</code>.</p>
Hongqing Liufd5ee812014-05-10 16:32:51 +0800353 </td></tr></table>
354
355</blockquote></td></tr></table><table border="0" cellspacing="0" cellpadding="2"><tr><td bgcolor="#525D76"><font color="#ffffff" face="arial,helvetica.sanserif"><a name="Sessions"><strong>Sessions</strong></a></font></td></tr><tr><td><blockquote>
356
刘洪青6266f992017-05-15 21:21:03 +0800357 <table border="1" cellpadding="5"><tr><th width="15%" bgcolor="#023264"><font color="#ffffff">Property</font></th><th width="85%" bgcolor="#023264"><font color="#ffffff">Description</font></th></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.catalina.authenticator. Constants.SSO_SESSION_COOKIE_NAME</code></td><td align="left" valign="center">
Hongqing Liufd5ee812014-05-10 16:32:51 +0800358 <p>An alternative name for the single sign on session cookie. Defaults to
359 <code>JSESSIONIDSSO</code>.</p>
刘洪青6266f992017-05-15 21:21:03 +0800360 </td></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.catalina.core. StandardHostValve.ACCESS_SESSION</code></td><td align="left" valign="center">
361 <p>If this is <code>true</code>, every request that is associated with a
362 session will cause the session's last accessed time to be updated
363 regardless of whether or not the request explicitly accesses the session.</p>
364 <p>If <code>org.apache.catalina.STRICT_SERVLET_COMPLIANCE</code> is set to
365 <code>true</code>, the default of this setting will be <code>true</code>,
366 else the default value will be <code>false</code>.</p>
367 </td></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.catalina.session. StandardSession.ACTIVITY_CHECK</code></td><td align="left" valign="center">
368 <p>If this is <code>true</code>, Tomcat will track the number of active
369 requests for each session. When determining if a session is valid, any
370 session with at least one active request will always be considered valid.</p>
371 <p>If <code>org.apache.catalina.STRICT_SERVLET_COMPLIANCE</code> is set to
372 <code>true</code>, the default of this setting will be <code>true</code>,
373 else the default value will be <code>false</code>.</p>
374 </td></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.catalina.session. StandardSession.LAST_ACCESS_AT_START</code></td><td align="left" valign="center">
375 <p>If this is <code>true</code>, the last accessed time for sessions will
376 be calculated from the beginning of the previous request. If
377 <code>false</code>, the last accessed time for sessions will be calculated
378 from the end of the previous request. This also affects how the idle time
379 is calculated.</p>
380 <p>If <code>org.apache.catalina.STRICT_SERVLET_COMPLIANCE</code> is set to
381 <code>true</code>, the default of this setting will be <code>true</code>,
382 else the default value will be <code>false</code>.</p>
Hongqing Liufd5ee812014-05-10 16:32:51 +0800383 </td></tr></table>
384
385</blockquote></td></tr></table><table border="0" cellspacing="0" cellpadding="2"><tr><td bgcolor="#525D76"><font color="#ffffff" face="arial,helvetica.sanserif"><a name="Logging"><strong>Logging</strong></a></font></td></tr><tr><td><blockquote>
386
刘洪青6266f992017-05-15 21:21:03 +0800387 <table border="1" cellpadding="5"><tr><th width="15%" bgcolor="#023264"><font color="#ffffff">Property</font></th><th width="85%" bgcolor="#023264"><font color="#ffffff">Description</font></th></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.juli.formatter</code></td><td align="left" valign="center">
388 <p>If no logging configuration file is specified and no logging configuration class is specified
389 using the <code>java.util.logging.config.class</code> and <code>java.util.logging.config.file</code>
390 properties the default logging framework <code>org.apache.juli</code> will use the default
391 <code>java.util.logging.SimpleFormatter</code> for all console output.
392 To simply override the console output formatter, one can use the described property. Example:
393 <code>-Dorg.apache.juli.formatter=org.apache.juli.OneLineFormatter</code></p>
394 </td></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.juli. AsyncOverflowDropType</code></td><td align="left" valign="center">
395 <p>When the memory limit of records has been reached the system needs to determine what action to take.
396 Currently there are three actions that can be taken:
397 </p>
398 <ul>
399 <li><code>int OVERFLOW_DROP_LAST = 1</code> - the record that caused the overflow will be dropped and not logged</li>
400 <li><code>int OVERFLOW_DROP_FIRST = 2</code> - the record that is next in line to be logged will be dropped to make room for the latest record on the queue</li>
401 <li><code>int OVERFLOW_DROP_FLUSH = 3</code> - suspend the thread while the queue empties out and flushes the entries to the write buffer</li>
402 <li><code>int OVERFLOW_DROP_CURRENT = 4</code> - drop the current log entry</li>
403 </ul>
404 <p>The default value is <code>1</code> (OVERFLOW_DROP_LAST).</p>
405 </td></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.juli. AsyncMaxRecordCount</code></td><td align="left" valign="center">
406 <p>The max number of log records that the async logger will keep in memory. When this limit is reached and a new record is being logged by the
407 JULI framework the system will take an action based on the <code>org.apache.juli.AsyncOverflowDropType</code> setting.</p>
408 <p>The default value is <code>10000</code> records.
409 This number represents the global number of records, not on a per handler basis.
410 </p>
411 </td></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.juli. AsyncLoggerPollInterval</code></td><td align="left" valign="center">
412 <p>The poll interval in milliseconds for the asynchronous logger thread in milliseconds.
413 If the log queue is empty, the async thread will issue a poll(poll interval)
414 in order to not wake up too often.</p>
415 <p>The default value is <code>1000</code> milliseconds.</p>
416 </td></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.juli.logging. UserDataHelper.CONFIG</code></td><td align="left" valign="center">
Hongqing Liufd5ee812014-05-10 16:32:51 +0800417 <p>The type of logging to use for errors generated by invalid input data.
418 The options are: <code>DEBUG_ALL</code>, <code>INFO_THEN_DEBUG</code>,
419 <code>INFO_ALL</code> and <code>NONE</code>. When
420 <code>INFO_THEN_DEBUG</code> is used, the period for which errors are
421 logged at DEBUG rather than INFO is controlled by the system property
422 <code>org.apache.juli.logging.UserDataHelper.SUPPRESSION_TIME</code>.
423 </p>
424 <p>The default value is <code>INFO_THEN_DEBUG</code>.</p>
刘洪青6266f992017-05-15 21:21:03 +0800425 <p>The errors currently logged using this system are:</p>
Hongqing Liufd5ee812014-05-10 16:32:51 +0800426 <ul>
刘洪青6266f992017-05-15 21:21:03 +0800427 <li>invalid cookies;</li>
428 <li>invalid parameters;</li>
429 <li>too many headers, too many parameters (hitting
430 <code>maxHeaderCount</code> or <code>maxParameterCount</code> limits
431 of a <a href="http.html">connector</a>).</li>
Hongqing Liufd5ee812014-05-10 16:32:51 +0800432 </ul>
刘洪青6266f992017-05-15 21:21:03 +0800433 <p>Other errors triggered by invalid input data may be added to this
Hongqing Liufd5ee812014-05-10 16:32:51 +0800434 system in later versions.</p>
刘洪青6266f992017-05-15 21:21:03 +0800435 </td></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.juli.logging. UserDataHelper.SUPPRESSION_TIME</code></td><td align="left" valign="center">
Hongqing Liufd5ee812014-05-10 16:32:51 +0800436 <p>When using <code>INFO_THEN_DEBUG</code> for
437 <code>org.apache.juli.logging.UserDataHelper.CONFIG</code> this system
438 property controls how long messages are logged at DEBUG after a message
439 has been logged at INFO. Once this period has elapsed, the next message
440 will be logged at INFO followed by a new suppression period where
441 messages are logged at DEBUG and so on. The value is measured
442 in seconds.</p>
443 <p>A value of <code>0</code> is equivalent to using <code>INFO_ALL</code>
444 for <code>org.apache.juli.logging.UserDataHelper.CONFIG</code>.</p>
445 <p>A negative value means an infinite suppression period.</p>
446 <p>The default value is <code>86400</code> (24 hours).</p>
447 </td></tr></table>
448
刘洪青6266f992017-05-15 21:21:03 +0800449</blockquote></td></tr></table><table border="0" cellspacing="0" cellpadding="2"><tr><td bgcolor="#525D76"><font color="#ffffff" face="arial,helvetica.sanserif"><a name="JAR Scanning"><!--()--></a><a name="JAR_Scanning"><strong>JAR Scanning</strong></a></font></td></tr><tr><td><blockquote>
450
451 <table border="1" cellpadding="5"><tr><th width="15%" bgcolor="#023264"><font color="#ffffff">Property</font></th><th width="85%" bgcolor="#023264"><font color="#ffffff">Description</font></th></tr><tr><td align="left" valign="center"><code class="propertyName">tomcat.util.scan. DefaultJarScanner.jarsToSkip</code></td><td align="left" valign="center">
452 <p>The comma-separated list of file name patterns of JARs that Tomcat will
453 not scan for configuration information when using the
454 <a href="jar-scanner.html">JarScanner</a> functionality. The file name
455 pattern syntax is described in
456 <a href="jar-scanner.html">JarScanner</a> documentation. Note that
457 there are additional system properties that enable JARs to be excluded
458 from specific scans rather than all scans.</p>
459 <p>The coded default is that no JARs are skipped however the system
460 property is set in a default Tomcat installation via the
461 <code>$CATALINA_BASE/conf/catalina.properties</code> file.</p>
462 </td></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.catalina.startup. ContextConfig.jarsToSkip</code></td><td align="left" valign="center">
463 <p>The comma-separated list of additional filenames of JARs that Tomcat
464 will not scan for Servlet 3.0 pluggability features.</p>
465 <p>The coded default is that no JARs are skipped however the system
466 property is set in a default Tomcat installation via the
467 <code>$CATALINA_BASE/conf/catalina.properties</code> file.</p>
468 </td></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.catalina.startup. TldConfig.jarsToSkip</code></td><td align="left" valign="center">
469 <p>The comma-separated list of additional filenames of JARs that Tomcat
470 will not scan for TLDs.</p>
471 <p>The coded default is that no JARs are skipped however the system
472 property is set in a default Tomcat installation via the
473 <code>$CATALINA_BASE/conf/catalina.properties</code> file.</p>
474 </td></tr></table>
475
476</blockquote></td></tr></table><table border="0" cellspacing="0" cellpadding="2"><tr><td bgcolor="#525D76"><font color="#ffffff" face="arial,helvetica.sanserif"><a name="Websockets"><strong>Websockets</strong></a></font></td></tr><tr><td><blockquote>
477
478 <table border="1" cellpadding="5"><tr><th width="15%" bgcolor="#023264"><font color="#ffffff">Property</font></th><th width="85%" bgcolor="#023264"><font color="#ffffff">Description</font></th></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.tomcat .websocket.ALLOW_UNSUPPORTED_EXTENSIONS</code></td><td align="left" valign="center">
479 <p>If <code>true</code>, allow unknown extensions to be declared by
480 the user.</p>
481 <p>The default value is <code>false</code>.</p>
482 </td></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.tomcat. websocket.DEFAULT_ORIGIN_HEADER_VALUE</code></td><td align="left" valign="center">
483 <p>Default value of the origin header that will be sent by the client
484 during the upgrade handshake.</p>
485 <p>The default is null so that no origin header is sent.</p>
486 </td></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.tomcat. websocket.DEFAULT_PROCESS_PERIOD</code></td><td align="left" valign="center">
487 <p>The number of periodic ticks between periodic processing which
488 involves in particular session expiration checks.</p>
489 <p>The default value is <code>10</code> which corresponds to 10
490 seconds.</p>
491 </td></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.tomcat. websocket.DISABLE_BUILTIN_EXTENSIONS</code></td><td align="left" valign="center">
492 <p>If <code>true</code>, disable all built-in extensions provided by the
493 server, such as message compression.</p>
494 <p>The default value is <code>false</code>.</p>
495 </td></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.tomcat. websocket.STREAMS_DROP_EMPTY_MESSAGES</code></td><td align="left" valign="center">
496 <p>If <code>true</code>, streams provided to the user (writer and output
497 stream) will not send an empty message when flushing and there is no
498 data to flush, or when it is closed without having been used (for
499 example if an error occurs).</p>
500 <p>The default value is <code>false</code>.</p>
501 </td></tr></table>
502
Hongqing Liufd5ee812014-05-10 16:32:51 +0800503</blockquote></td></tr></table><table border="0" cellspacing="0" cellpadding="2"><tr><td bgcolor="#525D76"><font color="#ffffff" face="arial,helvetica.sanserif"><a name="Other"><strong>Other</strong></a></font></td></tr><tr><td><blockquote>
504
刘洪青6266f992017-05-15 21:21:03 +0800505 <table border="1" cellpadding="5"><tr><th width="15%" bgcolor="#023264"><font color="#ffffff">Property</font></th><th width="85%" bgcolor="#023264"><font color="#ffffff">Description</font></th></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.coyote. USE_CUSTOM_STATUS_MSG_IN_HEADER</code></td><td align="left" valign="center"><p>If this is
506 <code>true</code>, custom HTTP status messages will be used within HTTP
507 headers. If a custom message is specified that is not valid for use in an
508 HTTP header (as defined by RFC2616) then the custom message will be
509 ignored and the default message used.</p>
510 <p>If not specified, the default value of <code>false</code> will be used.</p>
511 </td></tr><tr><td align="left" valign="center"><code class="propertyName">catalina.useNaming</code></td><td align="left" valign="center">
Hongqing Liufd5ee812014-05-10 16:32:51 +0800512 <p>If this is <code>false</code> it will override the
513 <code>useNaming</code> attribute for all <a href="context.html">
514 Context</a> elements.</p>
刘洪青6266f992017-05-15 21:21:03 +0800515 </td></tr><tr><td align="left" valign="center"><code class="propertyName">javax.sql.DataSource.Factory</code></td><td align="left" valign="center">
516 <p>The class name of the factory to use to create resources of type
517 <code>javax.sql.DataSource</code>. If not specified the default of
518 <code>org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory</code> is used
519 which is a package renamed (to avoid conflicts) copy of
520 <a href="http://commons.apache.org/dbcp">Apache Commons DBCP</a>.</p>
521 </td></tr><tr><td align="left" valign="center"><code class="propertyName">javax.mail.Session.Factory</code></td><td align="left" valign="center">
522 <p>The class name of the factory to use to create resources of type
523 <code>javax.mail.Session</code>. If not specified the default of
524 <code>org.apache.naming.factory.MailSessionFactory</code> is used.</p>
525 </td></tr><tr><td align="left" valign="center"><code class="propertyName">jvmRoute</code></td><td align="left" valign="center">
Hongqing Liufd5ee812014-05-10 16:32:51 +0800526 <p>Provides a default value for the <code>jvmRoute</code> attribute of the
527 <a href="engine.html">Engine</a> element. It does not override the value
528 configured on the <a href="engine.html">Engine</a> element.</p>
刘洪青6266f992017-05-15 21:21:03 +0800529 </td></tr><tr><td align="left" valign="center"><code class="propertyName">catalina.config</code></td><td align="left" valign="center">
Hongqing Liufd5ee812014-05-10 16:32:51 +0800530 <p>The URL for the catalina.properties configuration file.</p>
刘洪青6266f992017-05-15 21:21:03 +0800531 </td></tr><tr><td align="left" valign="center"><code class="propertyName">tomcat.util.buf.StringCache.byte.enabled</code></td><td align="left" valign="center">
Hongqing Liufd5ee812014-05-10 16:32:51 +0800532 <p>If <code>true</code>, the String cache is enabled for
533 <code>ByteChunk</code>.</p>
534 <p>If not specified, the default value of <code>false</code> will be used.</p>
刘洪青6266f992017-05-15 21:21:03 +0800535 </td></tr><tr><td align="left" valign="center"><code class="propertyName">tomcat.util.buf.StringCache.char.enabled</code></td><td align="left" valign="center">
Hongqing Liufd5ee812014-05-10 16:32:51 +0800536 <p>If <code>true</code>, the String cache is enabled for
537 <code>CharChunk</code>.</p>
538 <p>If not specified, the default value of <code>false</code> will be used.</p>
刘洪青6266f992017-05-15 21:21:03 +0800539 </td></tr><tr><td align="left" valign="center"><code class="propertyName">tomcat.util.buf.StringCache.trainThreshold</code></td><td align="left" valign="center">
Hongqing Liufd5ee812014-05-10 16:32:51 +0800540 <p>The number of times <code>toString()</code> must be called before the
541 cache is activated.</p>
542 <p>If not specified, the default value of <code>20000</code> will be used.</p>
刘洪青6266f992017-05-15 21:21:03 +0800543 </td></tr><tr><td align="left" valign="center"><code class="propertyName">tomcat.util.buf.StringCache.cacheSize</code></td><td align="left" valign="center">
Hongqing Liufd5ee812014-05-10 16:32:51 +0800544 <p>The size of the String cache.</p>
545 <p>If not specified, the default value of <code>200</code> will be used.</p>
刘洪青6266f992017-05-15 21:21:03 +0800546 </td></tr><tr><td align="left" valign="center"><code class="propertyName">tomcat.util.buf.StringCache.maxStringSize</code></td><td align="left" valign="center">
Hongqing Liufd5ee812014-05-10 16:32:51 +0800547 <p>The maximum length of String that will be cached.</p>
548 <p>If not specified, the default value of <code>128</code> will be used.</p>
刘洪青6266f992017-05-15 21:21:03 +0800549 </td></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.tomcat.util. http.FastHttpDateFormat.CACHE_SIZE</code></td><td align="left" valign="center">
Hongqing Liufd5ee812014-05-10 16:32:51 +0800550 <p>The size of the cache to use parsed and formatted date value.</p>
551 <p>If not specified, the default value of <code>1000</code> will be used.</p>
刘洪青6266f992017-05-15 21:21:03 +0800552 </td></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.tomcat.util. net.NioSelectorShared</code></td><td align="left" valign="center">
Hongqing Liufd5ee812014-05-10 16:32:51 +0800553 <p>If <code>true</code>, use a shared selector for servlet write/read.</p>
554 <p>If not specified, the default value of <code>true</code> will be used.</p>
刘洪青6266f992017-05-15 21:21:03 +0800555 </td></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.catalina.startup. EXIT_ON_INIT_FAILURE</code></td><td align="left" valign="center">
Hongqing Liufd5ee812014-05-10 16:32:51 +0800556 <p>If <code>true</code>, the server will exit if an exception happens
557 during the server initialization phase.</p>
558 <p>If not specified, the default value of <code>false</code> will be used.</p>
刘洪青6266f992017-05-15 21:21:03 +0800559 </td></tr><tr><td align="left" valign="center"><code class="propertyName">org.apache.catalina.startup. RealmRuleSet.MAX_NESTED_REALM_LEVELS</code></td><td align="left" valign="center">
560 <p>The CombinedRealm allows nested Realms. This property controls the
561 maximum permitted number of levels of nesting.</p>
562 <p>If not specified, the default value of <code>3</code> will be used.</p>
563 </td></tr><tr><td align="left" valign="center"><code class="propertyName">tomcat.util.http.parser.HttpParser. requestTargetAllow</code></td><td align="left" valign="center">
564 <p>A string comprised of characters the server should allow even when they are not encoded.
565 These characters would normally result in a 400 status.</p>
566 <p>The acceptable characters for this property are: <code>|</code>, <code>{</code>
567 , and <code>}</code></p>
568 <p><strong>WARNING</strong>: Use of this option will expose the server to CVE-2016-6816.
569 </p>
570 <p>If not specified, the default value of <code>null</code> will be used.</p>
Hongqing Liufd5ee812014-05-10 16:32:51 +0800571 </td></tr></table>
572
刘洪青6266f992017-05-15 21:21:03 +0800573</blockquote></td></tr></table></td></tr><tr class="noPrint"><td width="20%" valign="top" nowrap class="noPrint"></td><td width="80%" valign="top" align="left"><table border="0" cellspacing="0" cellpadding="2"><tr><td bgcolor="#525D76"><font color="#ffffff" face="arial,helvetica.sanserif"><a name="comments_section" id="comments_section"><strong>Comments</strong></a></font></td></tr><tr><td><blockquote><p class="notice"><strong>Notice: </strong>This comments section collects your suggestions
574 on improving documentation for Apache Tomcat.<br><br>
575 If you have trouble and need help, read
576 <a href="http://tomcat.apache.org/findhelp.html">Find Help</a> page
577 and ask your question on the tomcat-users
578 <a href="http://tomcat.apache.org/lists.html">mailing list</a>.
579 Do not ask such questions here. This is not a Q&amp;A section.<br><br>
580 The Apache Comments System is explained <a href="../comments.html">here</a>.
581 Comments may be removed by our moderators if they are either
582 implemented or considered invalid/off-topic.</p><script type="text/javascript"><!--//--><![CDATA[//><!--
583 var comments_shortname = 'tomcat';
584 var comments_identifier = 'http://tomcat.apache.org/tomcat-7.0-doc/config/systemprops.html';
585 (function(w, d) {
586 if (w.location.hostname.toLowerCase() == "tomcat.apache.org") {
587 d.write('<div id="comments_thread"><\/div>');
588 var s = d.createElement('script');
589 s.type = 'text/javascript';
590 s.async = true;
591 s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
592 (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
593 }
594 else {
595 d.write('<div id="comments_thread"><strong>Comments are disabled for this page at the moment.<\/strong><\/div>');
596 }
597 })(window, document);
598 //--><!]]></script></blockquote></td></tr></table></td></tr><!--FOOTER SEPARATOR--><tr><td colspan="2"><hr noshade size="1"></td></tr><!--PAGE FOOTER--><tr><td colspan="2"><div align="center"><font color="#525D76" size="-1"><em>
599 Copyright &copy; 1999-2017, Apache Software Foundation
Hongqing Liufd5ee812014-05-10 16:32:51 +0800600 </em></font></div></td></tr></table></body></html>