Modified: websites/production/tapestry/content/configuration.html
==============================================================================
--- websites/production/tapestry/content/configuration.html (original)
+++ websites/production/tapestry/content/configuration.html Thu Oct 27 17:20:26 
2016
@@ -46,18 +46,13 @@
 
   <div class="wrapper bs">
 
-        <div id="navigation"><div class="nav">
-<ul class="alternate"><li><a  href="index.html">Home</a></li><li><a  
href="getting-started.html">Getting Started</a></li><li><a  
href="documentation.html">Documentation</a></li><li><a  
href="download.html">Download</a></li><li><a  
href="about.html">About</a></li><li><a  
href="community.html">Community</a></li><li><a  class="external-link" 
href="http://www.apache.org/";>Apache</a></li><li><a  class="external-link" 
href="http://www.apache.org/foundation/sponsorship.html";>Sponsorship</a></li><li><a
  class="external-link" 
href="http://www.apache.org/foundation/thanks.html";>Thanks</a></li></ul>
-</div></div>
+        <div id="navigation"><div class="nav"><ul class="alternate"><li><a  
href="index.html">Home</a></li><li><a  href="getting-started.html">Getting 
Started</a></li><li><a  href="documentation.html">Documentation</a></li><li><a  
href="download.html">Download</a></li><li><a  
href="about.html">About</a></li><li><a  
href="community.html">Community</a></li><li><a  class="external-link" 
href="http://www.apache.org/";>Apache</a></li><li><a  class="external-link" 
href="http://www.apache.org/foundation/sponsorship.html";>Sponsorship</a></li><li><a
  class="external-link" 
href="http://www.apache.org/foundation/thanks.html";>Thanks</a></li></ul></div></div>
 
           <div id="top">
-            <div id="smallbanner"><div class="searchbox" 
style="float:right;margin: .3em 1em .1em 1em"><span style="color: #999; 
font-size: 90%">Tapestry docs, issues, wikis &amp; blogs:</span>
-<form enctype="application/x-www-form-urlencoded" method="get" 
action="http://tapestry.apache.org/search.html";>
-  <input type="text" name="q">
-  <input type="submit" value="Search">
-</form>
-
-</div><div class="emblem" style="float:left"><p><a  href="index.html"><span 
class="confluence-embedded-file-wrapper"><img class="confluence-embedded-image 
confluence-external-resource" 
src="http://tapestry.apache.org/images/tapestry_small.png"; 
data-image-src="http://tapestry.apache.org/images/tapestry_small.png";></span></a></p></div><div
 class="title" style="float:left; margin: 0 0 0 3em"><h1 
id="SmallBanner-PageTitle">Configuration</h1></div></div>
+            <div id="smallbanner"><div class="searchbox" 
style="float:right;margin: .3em 1em .1em 1em"><span style="color: #999; 
font-size: 90%">Tapestry docs, issues, wikis &amp; blogs:</span><form 
enctype="application/x-www-form-urlencoded" method="get" 
action="http://tapestry.apache.org/search.html";> 
+ <input type="text" name="q"> 
+ <input type="submit" value="Search"> 
+</form></div><div class="emblem" style="float:left"><p><a  
href="index.html"><span class="confluence-embedded-file-wrapper"><img 
class="confluence-embedded-image confluence-external-resource" 
src="http://tapestry.apache.org/images/tapestry_small.png"; 
data-image-src="http://tapestry.apache.org/images/tapestry_small.png";></span></a></p></div><div
 class="title" style="float:left; margin: 0 0 0 3em"><h1 
id="SmallBanner-PageTitle">Configuration</h1></div></div>
       <div class="clearer"></div>
       </div>
 
@@ -69,78 +64,48 @@
       </div>
 
       <div id="content">
-                <div id="ConfluenceContent"><div class="aui-label" 
style="float:right" title="Related Articles">
-
-
-
-
-
+                <div id="ConfluenceContent"><div class="aui-label" 
style="float:right" title="Related Articles"><h3>Related Articles</h3><ul 
class="content-by-label"><li> 
+  <div> 
+   <span class="icon aui-icon aui-icon-small aui-iconfont-page-default" 
title="Page">Page:</span> 
+  </div> 
+  <div class="details"> 
+   <a  href="application-module-class-cheat-sheet.html">Application Module 
Class Cheat Sheet</a> 
+  </div> </li><li> 
+  <div> 
+   <span class="icon aui-icon aui-icon-small aui-iconfont-page-default" 
title="Page">Page:</span> 
+  </div> 
+  <div class="details"> 
+   <a  href="ioc-cookbook-service-configurations.html">IoC cookbook - Service 
Configurations</a> 
+  </div> </li><li> 
+  <div> 
+   <span class="icon aui-icon aui-icon-small aui-iconfont-page-default" 
title="Page">Page:</span> 
+  </div> 
+  <div class="details"> 
+   <a  href="symbols.html">Symbols</a> 
+  </div> </li><li> 
+  <div> 
+   <span class="icon aui-icon aui-icon-small aui-iconfont-page-default" 
title="Page">Page:</span> 
+  </div> 
+  <div class="details"> 
+   <a  href="tapestry-ioc-configuration.html">Tapestry IoC Configuration</a> 
+  </div> </li><li> 
+  <div> 
+   <span class="icon aui-icon aui-icon-small aui-iconfont-page-default" 
title="Page">Page:</span> 
+  </div> 
+  <div class="details"> 
+   <a  href="response-compression.html">Response Compression</a> 
+  </div> </li><li> 
+  <div> 
+   <span class="icon aui-icon aui-icon-small aui-iconfont-page-default" 
title="Page">Page:</span> 
+  </div> 
+  <div class="details"> 
+   <a  href="configuration.html">Configuration</a> 
+  </div> </li></ul></div><h1 
id="Configuration-ConfiguringTapestry">Configuring Tapestry</h1><p>This page 
discusses all the ways in which Tapestry can be configured. Tapestry 
applications are configured almost entirely using Java, with very little XML at 
all.</p><p><strong>Contents</strong></p><p><style type="text/css">/*<![CDATA[*/
+div.rbtoc1477588769916 {padding: 0px;}
+div.rbtoc1477588769916 ul {list-style: disc;margin-left: 0px;}
+div.rbtoc1477588769916 li {margin-left: 0px;padding-left: 0px;}
 
-
-
-<h3>Related Articles</h3>
-
-<ul class="content-by-label"><li>
-        <div>
-                <span class="icon aui-icon aui-icon-small 
aui-iconfont-page-default" title="Page">Page:</span>        </div>
-
-        <div class="details">
-                        <a  
href="application-module-class-cheat-sheet.html">Application Module Class Cheat 
Sheet</a>
-                
-                        
-                    </div>
-    </li><li>
-        <div>
-                <span class="icon aui-icon aui-icon-small 
aui-iconfont-page-default" title="Page">Page:</span>        </div>
-
-        <div class="details">
-                        <a  
href="ioc-cookbook-service-configurations.html">IoC cookbook - Service 
Configurations</a>
-                
-                        
-                    </div>
-    </li><li>
-        <div>
-                <span class="icon aui-icon aui-icon-small 
aui-iconfont-page-default" title="Page">Page:</span>        </div>
-
-        <div class="details">
-                        <a  href="symbols.html">Symbols</a>
-                
-                        
-                    </div>
-    </li><li>
-        <div>
-                <span class="icon aui-icon aui-icon-small 
aui-iconfont-page-default" title="Page">Page:</span>        </div>
-
-        <div class="details">
-                        <a  href="tapestry-ioc-configuration.html">Tapestry 
IoC Configuration</a>
-                
-                        
-                    </div>
-    </li><li>
-        <div>
-                <span class="icon aui-icon aui-icon-small 
aui-iconfont-page-default" title="Page">Page:</span>        </div>
-
-        <div class="details">
-                        <a  href="response-compression.html">Response 
Compression</a>
-                
-                        
-                    </div>
-    </li><li>
-        <div>
-                <span class="icon aui-icon aui-icon-small 
aui-iconfont-page-default" title="Page">Page:</span>        </div>
-
-        <div class="details">
-                        <a  href="configuration.html">Configuration</a>
-                
-                        
-                    </div>
-    </li></ul>
-</div><h1 id="Configuration-ConfiguringTapestry">Configuring 
Tapestry</h1><p>This page discusses all the ways in which Tapestry can be 
configured. Tapestry applications are configured almost entirely using Java, 
with very little XML at all.</p><p><strong>Contents</strong></p><p><style 
type="text/css">/*<![CDATA[*/
-div.rbtoc1463689167342 {padding: 0px;}
-div.rbtoc1463689167342 ul {list-style: disc;margin-left: 0px;}
-div.rbtoc1463689167342 li {margin-left: 0px;padding-left: 0px;}
-
-/*]]>*/</style></p><div class="toc-macro rbtoc1463689167342">
+/*]]>*/</style></p><div class="toc-macro rbtoc1477588769916">
 <ul class="toc-indentation"><li><a  
href="#Configuration-XMLconfiguration(web.xml)">XML configuration 
(web.xml)</a></li><li><a  
href="#Configuration-YourApplication'sModuleClass">Your Application's Module 
Class</a></li><li><a  
href="#Configuration-ConfigurationSymbolNames">Configuration Symbol 
Names</a></li><li><a  
href="#Configuration-SettingComponentParameterDefaults">Setting Component 
Parameter Defaults</a></li><li><a  
href="#Configuration-ConfiguringIgnoredPaths">Configuring Ignored 
Paths</a></li><li><a  
href="#Configuration-ConfiguringContentTypeMapping">Configuring Content Type 
Mapping</a></li><li><a  href="#Configuration-SettingExecutionModes">Setting 
Execution Modes</a></li></ul>
 </div><h2 id="Configuration-XMLconfiguration(web.xml)">XML configuration 
(web.xml)</h2><p>Tapestry runs on top of the standard Java Servlet API. To the 
servlet container, such as Tomcat, Tapestry appears as a <em>servlet 
filter</em>. This gives Tapestry great flexibility in matching URLs without 
requiring lots of XML configuration.</p><p>Although most configuration is done 
with Java, a small but necessary amount of configuration occurs inside the 
servlet deployment descriptor, WEB-INF/web.xml. Most of the configuration is 
boilerplate, nearly the same for all applications.</p><div class="code panel 
pdl" style="border-width: 1px;"><div class="codeHeader panelHeader pdl" 
style="border-bottom-width: 1px;"><b>web.xml (partial)</b></div><div 
class="codeContent panelContent pdl">
 <pre class="brush: xml; gutter: false; theme: Default" 
style="font-size:12px;">&lt;!DOCTYPE web-app
@@ -181,189 +146,151 @@ div.rbtoc1463689167342 li {margin-left:
 
 <div class="confluence-information-macro 
confluence-information-macro-information"><p class="title">Added in 
5.3</p><span class="aui-icon aui-icon-small aui-iconfont-info 
confluence-information-macro-icon"></span><div 
class="confluence-information-macro-body">
 </div></div>
-<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid #D8E4F1;">
-<p>&#160;</p></div><p>The folder, of the context, in which the Tapestry 
application executes. By default this is blank, meaning the Tapestry 
application executes in the root of the web application context. Setting this 
value allows the Tapestry application to be <a  
href="configuration.html">segregated into a folder</a>, which can be useful 
when Tapestry is executed inside a web application with other servlets or 
filters.</p><h3 
id="Configuration-tapestry.asset-url-fully-qualified(SymbolConstants.ASSET_URL_FULL_QUALIFIED)">tapestry.asset-url-fully-qualified
 (SymbolConstants.ASSET_URL_FULL_QUALIFIED)</h3>
+<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid 
#D8E4F1;"><p>&#160;</p></div><p>The folder, of the context, in which the 
Tapestry application executes. By default this is blank, meaning the Tapestry 
application executes in the root of the web application context. Setting this 
value allows the Tapestry application to be <a  
href="configuration.html">segregated into a folder</a>, which can be useful 
when Tapestry is executed inside a web application with other servlets or 
filters.</p><h3 
id="Configuration-tapestry.asset-url-fully-qualified(SymbolConstants.ASSET_URL_FULL_QUALIFIED)">tapestry.asset-url-fully-qualified
 (SymbolConstants.ASSET_URL_FULL_QUALIFIED)</h3>
 
 <div class="confluence-information-macro 
confluence-information-macro-information"><p class="title">Added in 
5.3</p><span class="aui-icon aui-icon-small aui-iconfont-info 
confluence-information-macro-icon"></span><div 
class="confluence-information-macro-body">
 </div></div>
-<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid #D8E4F1;">
-<p>&#160;</p></div><p>A boolean value to indicate whether <a  
href="assets.html">asset</a> URLs should be fully qualified in the rendered 
page.<br clear="none"> This defaults to <code>false</code> (not fully 
qualified).</p><h3 
id="Configuration-tapestry.asset-path-prefix(SymbolConstants.ASSET_PATH_PREFIX)">tapestry.asset-path-prefix
 (SymbolConstants.ASSET_PATH_PREFIX)</h3>
+<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid 
#D8E4F1;"><p>&#160;</p></div><p>A boolean value to indicate whether <a  
href="assets.html">asset</a> URLs should be fully qualified in the rendered 
page.<br clear="none"> This defaults to <code>false</code> (not fully 
qualified).</p><h3 
id="Configuration-tapestry.asset-path-prefix(SymbolConstants.ASSET_PATH_PREFIX)">tapestry.asset-path-prefix
 (SymbolConstants.ASSET_PATH_PREFIX)</h3>
 
 <div class="confluence-information-macro 
confluence-information-macro-information"><p class="title">Added in 
5.3.1</p><span class="aui-icon aui-icon-small aui-iconfont-info 
confluence-information-macro-icon"></span><div 
class="confluence-information-macro-body">
 </div></div>
-<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid #D8E4F1;">
-<p>&#160;</p></div><p>The prefix to be used for all asset paths. This should 
start <em>and</em> end with a slash ("/"). By default this is 
"/assets/".</p><h3 
id="Configuration-tapestry.blackbird-enabled(SymbolConstants.BLACKBIRD_ENABLED)">tapestry.blackbird-enabled
 (SymbolConstants.<a  class="external-link" 
href="http://tapestry.apache.org/5.3/apidocs/src-html/org/apache/tapestry5/SymbolConstants.html#line.202";><strong>BLACKBIRD_ENABLED</strong></a>)</h3><p>A
 flag (true or false). When "false" the Blackbird JavaScript console will be 
disabled (in Tapestry 5.2 and newer). Defaults to "true".</p>
+<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid 
#D8E4F1;"><p>&#160;</p></div><p>The prefix to be used for all asset paths. This 
should start <em>and</em> end with a slash ("/"). By default this is 
"/assets/".</p><h3 
id="Configuration-tapestry.blackbird-enabled(SymbolConstants.BLACKBIRD_ENABLED)">tapestry.blackbird-enabled
 (SymbolConstants.<a  class="external-link" 
href="http://tapestry.apache.org/5.3/apidocs/src-html/org/apache/tapestry5/SymbolConstants.html#line.202";><strong>BLACKBIRD_ENABLED</strong></a>)</h3><p>A
 flag (true or false). When "false" the Blackbird JavaScript console will be 
disabled (in Tapestry 5.2 and newer). Defaults to "true".</p>
 
 <div class="confluence-information-macro 
confluence-information-macro-warning"><p class="title">Deprecated since 
5.3</p><span class="aui-icon aui-icon-small aui-iconfont-error 
confluence-information-macro-icon"></span><div 
class="confluence-information-macro-body">
 </div></div>
-<div style="border-right: 20px solid #ffcccc;border-left: 20px solid #ffcccc;">
-<p>The client-side BlackBird console has been removed.</p></div><h3 
id="Configuration-tapestry.bootstrap-root(SymbolConstants.BOOTSTRAP_ROOT)">tapestry.bootstrap-root
 (SymbolConstants.BOOTSTRAP_ROOT)</h3>
+<div style="border-right: 20px solid #ffcccc;border-left: 20px solid 
#ffcccc;"><p>The client-side BlackBird console has been removed.</p></div><h3 
id="Configuration-tapestry.bootstrap-root(SymbolConstants.BOOTSTRAP_ROOT)">tapestry.bootstrap-root
 (SymbolConstants.BOOTSTRAP_ROOT)</h3>
 
 <div class="confluence-information-macro 
confluence-information-macro-information"><p class="title">Added in 
5.4</p><span class="aui-icon aui-icon-small aui-iconfont-info 
confluence-information-macro-icon"></span><div 
class="confluence-information-macro-body">
 </div></div>
-<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid #D8E4F1;">
-<p>&#160;</p></div><p>The root asset path for Twitter Bootstrap; if your 
application uses a modified version of Bootstrap, you can override this symbol 
to have Tapestry automatically use your version. The value should be a path to 
a folder (under "classpath:" or "context:") and should not include a trailing 
slash.</p><h3 
id="Configuration-tapestry.charset(SymbolConstants.CHARSET)">tapestry.charset 
(SymbolConstants.CHARSET)</h3><p>The character encoding used when generating 
output (or parsing input). The default is "UTF-8". See <a  
href="content-type-and-markup.html">Content Type and Markup</a> for more 
details.</p><h3 
id="Configuration-tapestry.clustered-sessions(SymbolConstants.CLUSTERED_SESSIONS)">tapestry.clustered-sessions
 (SymbolConstants.CLUSTERED_SESSIONS)</h3>
+<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid 
#D8E4F1;"><p>&#160;</p></div><p>The root asset path for Twitter Bootstrap; if 
your application uses a modified version of Bootstrap, you can override this 
symbol to have Tapestry automatically use your version. The value should be a 
path to a folder (under "classpath:" or "context:") and should not include a 
trailing slash.</p><h3 
id="Configuration-tapestry.charset(SymbolConstants.CHARSET)">tapestry.charset 
(SymbolConstants.CHARSET)</h3><p>The character encoding used when generating 
output (or parsing input). The default is "UTF-8". See <a  
href="content-type-and-markup.html">Content Type and Markup</a> for more 
details.</p><h3 
id="Configuration-tapestry.clustered-sessions(SymbolConstants.CLUSTERED_SESSIONS)">tapestry.clustered-sessions
 (SymbolConstants.CLUSTERED_SESSIONS)</h3>
 
 <div class="confluence-information-macro 
confluence-information-macro-information"><p class="title">Added in 
5.3</p><span class="aui-icon aui-icon-small aui-iconfont-info 
confluence-information-macro-icon"></span><div 
class="confluence-information-macro-body">
 </div></div>
-<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid #D8E4F1;">
-<p>&#160;</p></div><p>If "true" then at the end of each request the 
SessionPersistedObjectAnalyzer will be called on each session persisted object 
that was accessed during the request. The default is "true", to preserve 5.2 
behavior. For non-clustered applications (the majority), this value should be 
overridden to "false".</p><h3 
id="Configuration-tapestry.combine-scripts(SymbolConstants.COMBINE_SCRIPTS)">tapestry.combine-scripts
 (SymbolConstants.COMBINE_SCRIPTS)</h3><p>If "true", then Tapestry will combine 
(or "aggregate") the individual JavaScript libraries within a JavaScript stack; 
this reduces the number of requests from the client to the server, as the 
client can cache the combined JavaScript files locally (and will not need to 
re-download them on subsequent pages). The implementation of this changed 
significantly between Tapestry 5.1 and 5.2.</p><p>Defaults to "true" in 
production mode.</p><h3 
id="Configuration-tapestry.compact-json(SymbolConstants.COMPACT_JSON)">tapestry.com
 pact-json (SymbolConstants.COMPACT_JSON)</h3>
+<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid 
#D8E4F1;"><p>&#160;</p></div><p>If "true" then at the end of each request the 
SessionPersistedObjectAnalyzer will be called on each session persisted object 
that was accessed during the request. The default is "true", to preserve 5.2 
behavior. For non-clustered applications (the majority), this value should be 
overridden to "false".</p><h3 
id="Configuration-tapestry.combine-scripts(SymbolConstants.COMBINE_SCRIPTS)">tapestry.combine-scripts
 (SymbolConstants.COMBINE_SCRIPTS)</h3><p>If "true", then Tapestry will combine 
(or "aggregate") the individual JavaScript libraries within a JavaScript stack; 
this reduces the number of requests from the client to the server, as the 
client can cache the combined JavaScript files locally (and will not need to 
re-download them on subsequent pages). The implementation of this changed 
significantly between Tapestry 5.1 and 5.2.</p><p>Defaults to "true" in 
production mode.</p><h3 id="
 
Configuration-tapestry.compact-json(SymbolConstants.COMPACT_JSON)">tapestry.compact-json
 (SymbolConstants.COMPACT_JSON)</h3>
 
 <div class="confluence-information-macro 
confluence-information-macro-information"><p class="title">Added in 
5.2</p><span class="aui-icon aui-icon-small aui-iconfont-info 
confluence-information-macro-icon"></span><div 
class="confluence-information-macro-body">
 </div></div>
-<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid #D8E4F1;">
-<p>&#160;</p></div><p>If "true", then JSON page initialization content is 
compressed; if "false" then extra white space is added (pretty printing). 
Defaults to "true" in production mode.</p><h3 
id="Configuration-tapestry.compatibility.unknown-component-id-check-enabled(SymbolConstants.UNKNOWN_COMPONENT_ID_CHECK_ENABLED)">tapestry.compatibility.unknown-component-id-check-enabled
 (SymbolConstants.UNKNOWN_COMPONENT_ID_CHECK_ENABLED)</h3>
+<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid 
#D8E4F1;"><p>&#160;</p></div><p>If "true", then JSON page initialization 
content is compressed; if "false" then extra white space is added (pretty 
printing). Defaults to "true" in production mode.</p><h3 
id="Configuration-tapestry.compatibility.unknown-component-id-check-enabled(SymbolConstants.UNKNOWN_COMPONENT_ID_CHECK_ENABLED)">tapestry.compatibility.unknown-component-id-check-enabled
 (SymbolConstants.UNKNOWN_COMPONENT_ID_CHECK_ENABLED)</h3>
 
 <div class="confluence-information-macro 
confluence-information-macro-information"><p class="title">Added in 
5.3</p><span class="aui-icon aui-icon-small aui-iconfont-info 
confluence-information-macro-icon"></span><div 
class="confluence-information-macro-body">
 </div></div>
-<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid #D8E4F1;">
-<p>&#160;</p></div>
+<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid 
#D8E4F1;"><p>&#160;</p></div>
 
 <div class="confluence-information-macro 
confluence-information-macro-warning"><p class="title">Deprecated since 
5.3</p><span class="aui-icon aui-icon-small aui-iconfont-error 
confluence-information-macro-icon"></span><div 
class="confluence-information-macro-body">
 </div></div>
-<div style="border-right: 20px solid #ffcccc;border-left: 20px solid #ffcccc;">
-<p>&#160;</p></div><p>When enabled, Tapestry will check that component ids 
referenced in event handler method names (or the @OnEvent annotation) match up 
against components in the container's template. The default is true, but 
applications upgraded form Tapestry 5.2 may want to set this to false, to keep 
pages from failing due to the presence of such dead code.</p><h3 
id="Configuration-tapestry.component-render-tracing-enabled(SymbolConstants.COMPONENT_RENDER_TRACING_ENABLED)">tapestry.component-render-tracing-enabled
 (SymbolConstants.COMPONENT_RENDER_TRACING_ENABLED)</h3><p>Starting with 
version 5.3, if "true" then Tapestry will emit rendering comments for all 
requests; these are comments (such as &lt;!--BEGIN Index:loop 
(context:Index.tml, line 15)--&gt;) that can assist you in debugging markup 
output on the client-side. This will significantly increase the size of the 
rendered markup, but can be very helpful with complex layouts to determine 
which component was responsible for wh
 ich portion of the rendered page. (To turn on rendering comments only for a 
particular request, add the query parameter t:component-trace=true to the 
URL.)</p><h3 
id="Configuration-tapestry.compress-whitespace(SymbolConstants.COMPRESS_WHITESPACE)">tapestry.compress-whitespace
 (SymbolConstants.COMPRESS_WHITESPACE)</h3><p>A flag (true or false). When true 
(the default) whitespace in component templates is compressed by default (this 
can be fine-tuned using the standard xml:space attribute on an element in the 
template). When this flag is false, then whitespace is retained by default (but 
can still be overridden). See <a  href="component-templates.html">Component 
Templates</a> for details.</p><h3 
id="Configuration-tapestry.module-path-prefix(SymbolConstants.MODULE_PATH_PREFIX)">tapestry.module-path-prefix&#160;(SymbolConstants.MODULE_PATH_PREFIX)</h3>
+<div style="border-right: 20px solid #ffcccc;border-left: 20px solid 
#ffcccc;"><p>&#160;</p></div><p>When enabled, Tapestry will check that 
component ids referenced in event handler method names (or the @OnEvent 
annotation) match up against components in the container's template. The 
default is true, but applications upgraded form Tapestry 5.2 may want to set 
this to false, to keep pages from failing due to the presence of such dead 
code.</p><h3 
id="Configuration-tapestry.component-render-tracing-enabled(SymbolConstants.COMPONENT_RENDER_TRACING_ENABLED)">tapestry.component-render-tracing-enabled
 (SymbolConstants.COMPONENT_RENDER_TRACING_ENABLED)</h3><p>Starting with 
version 5.3, if "true" then Tapestry will emit rendering comments for all 
requests; these are comments (such as &lt;!--BEGIN Index:loop 
(context:Index.tml, line 15)--&gt;) that can assist you in debugging markup 
output on the client-side. This will significantly increase the size of the 
rendered markup, but can be very h
 elpful with complex layouts to determine which component was responsible for 
which portion of the rendered page. (To turn on rendering comments only for a 
particular request, add the query parameter t:component-trace=true to the 
URL.)</p><h3 
id="Configuration-tapestry.compress-whitespace(SymbolConstants.COMPRESS_WHITESPACE)">tapestry.compress-whitespace
 (SymbolConstants.COMPRESS_WHITESPACE)</h3><p>A flag (true or false). When true 
(the default) whitespace in component templates is compressed by default (this 
can be fine-tuned using the standard xml:space attribute on an element in the 
template). When this flag is false, then whitespace is retained by default (but 
can still be overridden). See <a  href="component-templates.html">Component 
Templates</a> for details.</p><h3 
id="Configuration-tapestry.module-path-prefix(SymbolConstants.MODULE_PATH_PREFIX)">tapestry.module-path-prefix&#160;(SymbolConstants.MODULE_PATH_PREFIX)</h3>
 
 <div class="confluence-information-macro 
confluence-information-macro-information"><p class="title">Added in 
5.4</p><span class="aui-icon aui-icon-small aui-iconfont-info 
confluence-information-macro-icon"></span><div 
class="confluence-information-macro-body">
 </div></div>
-<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid #D8E4F1;">
-<p>&#160;</p></div><p>Prefix used for all module resources. This may contain 
slashes, but should not being or end with one. Tapestry will create two 
Dispatchers from this: one for normal modules, the other for GZip compressed 
modules (by appending ".gz" to this value).</p><h3 
id="Configuration-tapestry.context-path(SymbolConstants.CONTEXT_PATH)">tapestry.context-path
 (SymbolConstants.CONTEXT_PATH)</h3>
+<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid 
#D8E4F1;"><p>&#160;</p></div><p>Prefix used for all module resources. This may 
contain slashes, but should not being or end with one. Tapestry will create two 
Dispatchers from this: one for normal modules, the other for GZip compressed 
modules (by appending ".gz" to this value).</p><h3 
id="Configuration-tapestry.context-path(SymbolConstants.CONTEXT_PATH)">tapestry.context-path
 (SymbolConstants.CONTEXT_PATH)</h3>
 
 <div class="confluence-information-macro 
confluence-information-macro-information"><p class="title">Added in 
5.4</p><span class="aui-icon aui-icon-small aui-iconfont-info 
confluence-information-macro-icon"></span><div 
class="confluence-information-macro-body">
 </div></div>
-<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid #D8E4F1;">
-<p>&#160;</p></div><p>Identifies the context path of the application, as 
determined from ServletContext.getContextPath() method. This is either a blank 
string or a string that starts with a slash but does not end with one.</p><h3 
id="Configuration-tapestry.datepicker(SymbolConstants.DATEPICKER)">tapestry.datepicker
 (SymbolConstants.DATEPICKER)</h3>
+<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid 
#D8E4F1;"><p>&#160;</p></div><p>Identifies the context path of the application, 
as determined from ServletContext.getContextPath() method. This is either a 
blank string or a string that starts with a slash but does not end with 
one.</p><h3 
id="Configuration-tapestry.datepicker(SymbolConstants.DATEPICKER)">tapestry.datepicker
 (SymbolConstants.DATEPICKER)</h3>
 
 <div class="confluence-information-macro 
confluence-information-macro-information"><p class="title">Added in 
5.2</p><span class="aui-icon aui-icon-small aui-iconfont-info 
confluence-information-macro-icon"></span><div 
class="confluence-information-macro-body">
 </div></div>
-<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid #D8E4F1;">
-<p>&#160;</p></div><p>The path to the assets of the embedded DatePicker 
component</p><h3 
id="Configuration-tapestry.default-cookie-max-age(SymbolConstants.)">tapestry.default-cookie-max-age
 (SymbolConstants.)</h3><p>The default time interval that cookies created by 
Tapestry will be kept in the client web browser. Primarily, this is used with a 
cookie that exists to track the preferred user locale. The default value is "7 
d" (7 days; see <a  class="external-link" 
href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/ioc/util/TimeInterval.html";>Time
 Interval Formats</a>).</p><h3 
id="Configuration-tapestry.default-stylesheet(SymbolConstants.DEFAULT_STYLESHEET)">tapestry.default-stylesheet
 (SymbolConstants.DEFAULT_STYLESHEET)</h3>
+<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid 
#D8E4F1;"><p>&#160;</p></div><p>The path to the assets of the embedded 
DatePicker component</p><h3 
id="Configuration-tapestry.default-cookie-max-age(SymbolConstants.)">tapestry.default-cookie-max-age
 (SymbolConstants.)</h3><p>The default time interval that cookies created by 
Tapestry will be kept in the client web browser. Primarily, this is used with a 
cookie that exists to track the preferred user locale. The default value is "7 
d" (7 days; see <a  class="external-link" 
href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/ioc/util/TimeInterval.html";>Time
 Interval Formats</a>).</p><h3 
id="Configuration-tapestry.default-stylesheet(SymbolConstants.DEFAULT_STYLESHEET)">tapestry.default-stylesheet
 (SymbolConstants.DEFAULT_STYLESHEET)</h3>
 
 <div class="confluence-information-macro 
confluence-information-macro-information"><p class="title">Added in 
5.3.6</p><span class="aui-icon aui-icon-small aui-iconfont-info 
confluence-information-macro-icon"></span><div 
class="confluence-information-macro-body">
 </div></div>
-<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid #D8E4F1;">
-<p>&#160;</p></div><p>In 5.3, this is the default stylesheet automatically 
injected into every rendered HTML page. Many Tapestry components assume that 
this stylesheet is available. All the classes defined in the stylesheet are 
prefixed with "t-". The exact contents of the stylesheet are subject to change 
at any time (they are considered internal), so replacing the stylesheet, rather 
than overriding selected rules within it, entails some risk.</p><p>The default 
is org/apache/tapestry5/default.css, stored on the classpath.</p>
+<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid 
#D8E4F1;"><p>&#160;</p></div><p>In 5.3, this is the default stylesheet 
automatically injected into every rendered HTML page. Many Tapestry components 
assume that this stylesheet is available. All the classes defined in the 
stylesheet are prefixed with "t-". The exact contents of the stylesheet are 
subject to change at any time (they are considered internal), so replacing the 
stylesheet, rather than overriding selected rules within it, entails some 
risk.</p><p>The default is org/apache/tapestry5/default.css, stored on the 
classpath.</p>
 
 <div class="confluence-information-macro 
confluence-information-macro-warning"><p class="title">Deprecated since 
5.4</p><span class="aui-icon aui-icon-small aui-iconfont-error 
confluence-information-macro-icon"></span><div 
class="confluence-information-macro-body">
 </div></div>
-<div style="border-right: 20px solid #ffcccc;border-left: 20px solid #ffcccc;">
-<p>Deprecated in 5.4 with no replacement. The stylesheet is now associated 
with the core JavaScriptStack</p></div><h3 
id="Configuration-tapestry.enable-minification(SymbolConstants.MINIFICATION_ENABLED)">tapestry.enable-minification
 (SymbolConstants.MINIFICATION_ENABLED)</h3>
+<div style="border-right: 20px solid #ffcccc;border-left: 20px solid 
#ffcccc;"><p>Deprecated in 5.4 with no replacement. The stylesheet is now 
associated with the core JavaScriptStack</p></div><h3 
id="Configuration-tapestry.enable-minification(SymbolConstants.MINIFICATION_ENABLED)">tapestry.enable-minification
 (SymbolConstants.MINIFICATION_ENABLED)</h3>
 
 <div class="confluence-information-macro 
confluence-information-macro-information"><p class="title">Added in 
5.3.6</p><span class="aui-icon aui-icon-small aui-iconfont-info 
confluence-information-macro-icon"></span><div 
class="confluence-information-macro-body">
 </div></div>
-<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid #D8E4F1;">
-<p>&#160;</p></div><p>If "true", then resources (individually or when 
aggregated into stacks) will be minimized via the ResourceMinimizer service. If 
"false", then minification is disabled. The default is "true" in production 
mode, "false" otherwise.</p><p>Note that Tapestry's default implementation of 
ResourceMinimizer does nothing; minification is provided by add-on libraries. 
See <a  href="assets.html">Assets</a> for details.</p><h3 
id="Configuration-tapestry.encode-locale-into-path(SymbolConstants.ENCODE_LOCALE_INTO_PATH)">tapestry.encode-locale-into-path
 (SymbolConstants.ENCODE_LOCALE_INTO_PATH)</h3><p>If "true" (the default), then 
the <a  class="external-link" 
href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/services/PersistentLocale.html";>PersistentLocale</a>
 will be encoded into URLs by the ComponentEventLinkEncoder service. If 
overridden to "false" this does not occur, but you should provide a 
LinkCreationListener2 (registered with the LinkCreationHub) 
 in order to add the locale as a query parameter (or provide some alternate 
means of persisting the locale between requests). See <a  
href="localization.html">Localization</a> for more details on 
localization.</p><h3 
id="Configuration-tapestry.exception-report-page(SymbolConstants.EXCEPTION_REPORT_PAGE)">tapestry.exception-report-page
 (SymbolConstants.EXCEPTION_REPORT_PAGE)</h3><p>The name of the page used to 
report exceptions. This defaults to "ExceptionReport", a page that Tapestry 
provides. See <a  href="overriding-exception-reporting.html">Overriding 
Exception Reporting</a> for details.</p><h3 
id="Configuration-tapestry.exception-reports-dir(SymbolConstants.EXCEPTION_REPORTS_DIR)">tapestry.exception-reports-dir
 (SymbolConstants.EXCEPTION_REPORTS_DIR)</h3>
+<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid 
#D8E4F1;"><p>&#160;</p></div><p>If "true", then resources (individually or when 
aggregated into stacks) will be minimized via the ResourceMinimizer service. If 
"false", then minification is disabled. The default is "true" in production 
mode, "false" otherwise.</p><p>Note that Tapestry's default implementation of 
ResourceMinimizer does nothing; minification is provided by add-on libraries. 
See <a  href="assets.html">Assets</a> for details.</p><h3 
id="Configuration-tapestry.encode-locale-into-path(SymbolConstants.ENCODE_LOCALE_INTO_PATH)">tapestry.encode-locale-into-path
 (SymbolConstants.ENCODE_LOCALE_INTO_PATH)</h3><p>If "true" (the default), then 
the <a  class="external-link" 
href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/services/PersistentLocale.html";>PersistentLocale</a>
 will be encoded into URLs by the ComponentEventLinkEncoder service. If 
overridden to "false" this does not occur, but yo
 u should provide a LinkCreationListener2 (registered with the LinkCreationHub) 
in order to add the locale as a query parameter (or provide some alternate 
means of persisting the locale between requests). See <a  
href="localization.html">Localization</a> for more details on 
localization.</p><h3 
id="Configuration-tapestry.exception-report-page(SymbolConstants.EXCEPTION_REPORT_PAGE)">tapestry.exception-report-page
 (SymbolConstants.EXCEPTION_REPORT_PAGE)</h3><p>The name of the page used to 
report exceptions. This defaults to "ExceptionReport", a page that Tapestry 
provides. See <a  href="overriding-exception-reporting.html">Overriding 
Exception Reporting</a> for details.</p><h3 
id="Configuration-tapestry.exception-reports-dir(SymbolConstants.EXCEPTION_REPORTS_DIR)">tapestry.exception-reports-dir
 (SymbolConstants.EXCEPTION_REPORTS_DIR)</h3>
 
 <div class="confluence-information-macro 
confluence-information-macro-information"><p class="title">Added in 
5.4</p><span class="aui-icon aui-icon-small aui-iconfont-info 
confluence-information-macro-icon"></span><div 
class="confluence-information-macro-body">
 </div></div>
-<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid #D8E4F1;">
-</div><p>The root directory where Tapestry's built-in OperationTracker will 
create dated folders into which it writes exception report files. This is 
<code>build/exceptions</code> by default but should be overridden for 
production. See the related <code>tapestry.restrictive-environment</code> 
symbol below.</p><h3 
id="Configuration-tapestry.execution-mode(SymbolConstants.EXECUTION_MODE)">tapestry.execution-mode&#160;
 (SymbolConstants.EXECUTION_MODE)</h3><p>The execution mode. See <a  
href="configuration.html">Setting Execution Modes</a> below.</p><h3 
id="Configuration-tapestry.file-check-interval(SymbolConstants.FILE_CHECK_INTERVAL)">tapestry.file-check-interval
 (SymbolConstants.FILE_CHECK_INTERVAL)</h3><p>Time interval between file system 
checks. During a file system check, only a single thread is active (all others 
are blocked) and any files loaded are checked for changes (this is part of 
Tapestry's <a  href="class-reloading.html">Class Reloading</a> 
mechanism).</p><p>The default i
 s "1 s" (one second; see <a  class="external-link" 
href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/ioc/util/TimeInterval.html";>Time
 Interval Formats</a>), and is usually overridden with a higher value in 
production (say, between one and five minutes).</p><h3 
id="Configuration-tapestry.file-check-update-timeout(SymbolConstants.FILE_CHECK_UPDATE_TIMEOUT)">tapestry.file-check-update-timeout
 (SymbolConstants.FILE_CHECK_UPDATE_TIMEOUT)</h3><p>Time interval that Tapestry 
will wait to obtain the exclusive lock needed for a file check. If the 
exclusive lock can't be obtained in that amount of time, the request will 
proceed normally (without the check), but each successive request will attempt 
to get the lock and perform the check until successful.</p><p>The default is 
"50 ms" (50 milliseconds; see <a  class="external-link" 
href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/ioc/util/TimeInterval.html";>Time
 Interval Formats</a>).</p><h3 id="Configurati
 
on-tapestry.force-absolute-uris(SymbolConstants.FORCE_ABSOLUTE_URIS)">tapestry.force-absolute-uris
 (SymbolConstants.<span>FORCE_ABSOLUTE_URIS</span>)</h3>
+<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid 
#D8E4F1;"></div><p>The root directory where Tapestry's built-in 
OperationTracker will create dated folders into which it writes exception 
report files. This is <code>build/exceptions</code> by default but should be 
overridden for production. See the related 
<code>tapestry.restrictive-environment</code> symbol below.</p><h3 
id="Configuration-tapestry.execution-mode(SymbolConstants.EXECUTION_MODE)">tapestry.execution-mode&#160;
 (SymbolConstants.EXECUTION_MODE)</h3><p>The execution mode. See <a  
href="configuration.html">Setting Execution Modes</a> below.</p><h3 
id="Configuration-tapestry.file-check-interval(SymbolConstants.FILE_CHECK_INTERVAL)">tapestry.file-check-interval
 (SymbolConstants.FILE_CHECK_INTERVAL)</h3><p>Time interval between file system 
checks. During a file system check, only a single thread is active (all others 
are blocked) and any files loaded are checked for changes (this is part of 
Tapestry's <a  
 href="class-reloading.html">Class Reloading</a> mechanism).</p><p>The default 
is "1 s" (one second; see <a  class="external-link" 
href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/ioc/util/TimeInterval.html";>Time
 Interval Formats</a>), and is usually overridden with a higher value in 
production (say, between one and five minutes).</p><h3 
id="Configuration-tapestry.file-check-update-timeout(SymbolConstants.FILE_CHECK_UPDATE_TIMEOUT)">tapestry.file-check-update-timeout
 (SymbolConstants.FILE_CHECK_UPDATE_TIMEOUT)</h3><p>Time interval that Tapestry 
will wait to obtain the exclusive lock needed for a file check. If the 
exclusive lock can't be obtained in that amount of time, the request will 
proceed normally (without the check), but each successive request will attempt 
to get the lock and perform the check until successful.</p><p>The default is 
"50 ms" (50 milliseconds; see <a  class="external-link" 
href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5
 /ioc/util/TimeInterval.html">Time Interval Formats</a>).</p><h3 
id="Configuration-tapestry.force-absolute-uris(SymbolConstants.FORCE_ABSOLUTE_URIS)">tapestry.force-absolute-uris
 (SymbolConstants.<span>FORCE_ABSOLUTE_URIS</span>)</h3>
 
 <div class="confluence-information-macro 
confluence-information-macro-warning"><p class="title">Deprecated since 
5.2</p><span class="aui-icon aui-icon-small aui-iconfont-error 
confluence-information-macro-icon"></span><div 
class="confluence-information-macro-body">
 </div></div>
-<div style="border-right: 20px solid #ffcccc;border-left: 20px solid #ffcccc;">
-<p>Starting in Tapestry 5.2, the optimization to generate relative URIs has 
been removed, and all URIs are always absolute.  <em>Removed in 
5.3.</em></p></div><p><em>For Tapestry 5.0 and 5.1 only</em>: when false (the 
default), Tapestry will attempt to optimize URIs that it generates, using 
relative URIs when such URIs are shorter than absolute URIs. When true, all 
URIs will be absolute URIs (including the context path, and the complete path 
for the request).</p><h3 
id="Configuration-tapestry.gzip-compression-enabled(SymbolConstants.)">tapestry.gzip-compression-enabled
 (SymbolConstants.)</h3><p>Override to "false" to disable GZIP compression of 
dynamic Tapestry pages and static assets.</p><h3 
id="Configuration-tapestry.hostname(SymbolConstants.GZIP_COMPRESSION_ENABLED)">tapestry.hostname
 (SymbolConstants.GZIP_COMPRESSION_ENABLED)</h3>
+<div style="border-right: 20px solid #ffcccc;border-left: 20px solid 
#ffcccc;"><p>Starting in Tapestry 5.2, the optimization to generate relative 
URIs has been removed, and all URIs are always absolute. <em>Removed in 
5.3.</em></p></div><p><em>For Tapestry 5.0 and 5.1 only</em>: when false (the 
default), Tapestry will attempt to optimize URIs that it generates, using 
relative URIs when such URIs are shorter than absolute URIs. When true, all 
URIs will be absolute URIs (including the context path, and the complete path 
for the request).</p><h3 
id="Configuration-tapestry.gzip-compression-enabled(SymbolConstants.)">tapestry.gzip-compression-enabled
 (SymbolConstants.)</h3><p>Override to "false" to disable GZIP compression of 
dynamic Tapestry pages and static assets.</p><h3 
id="Configuration-tapestry.hostname(SymbolConstants.GZIP_COMPRESSION_ENABLED)">tapestry.hostname
 (SymbolConstants.GZIP_COMPRESSION_ENABLED)</h3>
 
 <div class="confluence-information-macro 
confluence-information-macro-information"><p class="title">Added in 
5.3</p><span class="aui-icon aui-icon-small aui-iconfont-info 
confluence-information-macro-icon"></span><div 
class="confluence-information-macro-body">
 </div></div>
-<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid #D8E4F1;">
-<p>&#160;</p></div><p>The hostname that application should use when 
constructing an absolute URL. The default is "", i.e. an empty string, in which 
case system will use request.getServerName(). Not the same as environment 
variable HOSTNAME (but you could contribute "$HOSTNAME" as the value to make it 
the same).</p><h3 
id="Configuration-tapestry.hostport(SymbolConstants.HOSTPORT)">tapestry.hostport
 (SymbolConstants.HOSTPORT)</h3>
+<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid 
#D8E4F1;"><p>&#160;</p></div><p>The hostname that application should use when 
constructing an absolute URL. The default is "", i.e. an empty string, in which 
case system will use request.getServerName(). Not the same as environment 
variable HOSTNAME (but you could contribute "$HOSTNAME" as the value to make it 
the same).</p><h3 
id="Configuration-tapestry.hostport(SymbolConstants.HOSTPORT)">tapestry.hostport
 (SymbolConstants.HOSTPORT)</h3>
 
 <div class="confluence-information-macro 
confluence-information-macro-information"><p class="title">Added in 
5.3</p><span class="aui-icon aui-icon-small aui-iconfont-info 
confluence-information-macro-icon"></span><div 
class="confluence-information-macro-body">
 </div></div>
-<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid #D8E4F1;">
-<p>&#160;</p></div><p>The port that application should use when constructing 
an absolute URL. The default is "0", which means to use the port value from the 
request.</p><h3 
id="Configuration-tapestry.hostport-secure(SymbolConstants.HOSTPORT_SECURE)">tapestry.hostport-secure
 (SymbolConstants.HOSTPORT_SECURE)</h3>
+<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid 
#D8E4F1;"><p>&#160;</p></div><p>The port that application should use when 
constructing an absolute URL. The default is "0", which means to use the port 
value from the request.</p><h3 
id="Configuration-tapestry.hostport-secure(SymbolConstants.HOSTPORT_SECURE)">tapestry.hostport-secure
 (SymbolConstants.HOSTPORT_SECURE)</h3>
 
 <div class="confluence-information-macro 
confluence-information-macro-information"><p class="title">Added in 
5.3</p><span class="aui-icon aui-icon-small aui-iconfont-info 
confluence-information-macro-icon"></span><div 
class="confluence-information-macro-body">
 </div></div>
-<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid #D8E4F1;">
-<p>&#160;</p></div><p>The secure (https) port that application should use when 
constructing an absolute URL. The default is "0", i.e. use the value from the 
request.</p><h3 
id="Configuration-tapestry.hmac-passphrase(SymbolConstants.HMAC_PASSPHRASE)">tapestry.hmac-passphrase
 (SymbolConstants.HMAC_PASSPHRASE)</h3>
+<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid 
#D8E4F1;"><p>&#160;</p></div><p>The secure (https) port that application should 
use when constructing an absolute URL. The default is "0", i.e. use the value 
from the request.</p><h3 
id="Configuration-tapestry.hmac-passphrase(SymbolConstants.HMAC_PASSPHRASE)">tapestry.hmac-passphrase
 (SymbolConstants.HMAC_PASSPHRASE)</h3>
 
 <div class="confluence-information-macro 
confluence-information-macro-information"><p class="title">Added in 
5.3.6</p><span class="aui-icon aui-icon-small aui-iconfont-info 
confluence-information-macro-icon"></span><div 
class="confluence-information-macro-body">
 </div></div>
-<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid #D8E4F1;">
-<p>&#160;</p></div><p>The plaintext phrase used to set the key for <a  
class="external-link" href="http://en.wikipedia.org/wiki/HMAC"; 
rel="nofollow">HMAC</a> securing of serialized object data. The default is 
blank, which causes a runtime alert and console error. You should set this to a 
reasonably unique, private value, and ensure (in a cluster) that all servers 
use the same value &#8211; typically by making a contribution in your 
applications module class (normally AppModule.java). See <a  
href="security.html">Security</a> for details.</p><h3 
id="Configuration-tapestry.include-core-stack(SymbolConstants.INCLUDE_CORE_STACK)">tapestry.include-core-stack
 (SymbolConstants.INCLUDE_CORE_STACK)</h3>
+<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid 
#D8E4F1;"><p>&#160;</p></div><p>The plaintext phrase used to set the key for <a 
 class="external-link" href="http://en.wikipedia.org/wiki/HMAC"; 
rel="nofollow">HMAC</a> securing of serialized object data. The default is 
blank, which causes a runtime alert and console error. You should set this to a 
reasonably unique, private value, and ensure (in a cluster) that all servers 
use the same value &#8211; typically by making a contribution in your 
applications module class (normally AppModule.java). See <a  
href="security.html">Security</a> for details.</p><h3 
id="Configuration-tapestry.include-core-stack(SymbolConstants.INCLUDE_CORE_STACK)">tapestry.include-core-stack
 (SymbolConstants.INCLUDE_CORE_STACK)</h3>
 
 <div class="confluence-information-macro 
confluence-information-macro-information"><p class="title">Added in 
5.4</p><span class="aui-icon aui-icon-small aui-iconfont-info 
confluence-information-macro-icon"></span><div 
class="confluence-information-macro-body">
 </div></div>
-<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid #D8E4F1;">
-<p>&#160;</p></div><p>Whether to include Tapestry's "core" stack of JavaScript 
libraries. The default is "true".</p><h3 
id="Configuration-tapestry.javascript-infrastructure-provider(SymbolConstants.JAVASCRIPT_INFRASTRUCTURE_PROVIDER)">tapestry.javascript-infrastructure-provider
 (SymbolConstants.JAVASCRIPT_INFRASTRUCTURE_PROVIDER)</h3>
+<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid 
#D8E4F1;"><p>&#160;</p></div><p>Whether to include Tapestry's "core" stack of 
JavaScript libraries. The default is "true".</p><h3 
id="Configuration-tapestry.javascript-infrastructure-provider(SymbolConstants.JAVASCRIPT_INFRASTRUCTURE_PROVIDER)">tapestry.javascript-infrastructure-provider
 (SymbolConstants.JAVASCRIPT_INFRASTRUCTURE_PROVIDER)</h3>
 
 <div class="confluence-information-macro 
confluence-information-macro-information"><p class="title">Added in 
5.4</p><span class="aui-icon aui-icon-small aui-iconfont-info 
confluence-information-macro-icon"></span><div 
class="confluence-information-macro-body">
 </div></div>
-<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid #D8E4F1;">
-<p>&#160;</p></div><p>Tapestry relies on an underlying client-side JavaScript 
infrastructure framework to handle DOM manipulation, event handling, and Ajax 
requests. Through Tapestry 5.3, the foundation was <a  class="external-link" 
href="http://http//prototypejs.org/"; rel="nofollow">Prototype</a>. In 5.4, 
support for <a  class="external-link" href="http://jquery.org/"; 
rel="nofollow">jQuery</a> has been added, and it is possible to add others. 
This symbol defines a value that is used to select a resource that is provided 
to the ModuleManager service as a JavaScriptModuleConfiguration to provide a 
specific implementation of the <code>t5/core/dom</code> module. Tapestry 5.4 
directly supports "prototype" or "jquery". To support other foundation 
frameworks, override this symbol value and supply your own module 
configuration.</p><p>In Tapestry 5.4, this defaults to "prototype" for 
compatibility with 5.3. This will likely change in 5.5 to default to "jquery". 
At some point in the future, 
 Prototype support may no longer be present.</p><h3 
id="Configuration-tapestry.lenient-date-format(SymbolConstants.LENIENT_DATE_FORMAT)">tapestry.lenient-date-format
 (SymbolConstants.LENIENT_DATE_FORMAT)</h3>
+<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid 
#D8E4F1;"><p>&#160;</p></div><p>Tapestry relies on an underlying client-side 
JavaScript infrastructure framework to handle DOM manipulation, event handling, 
and Ajax requests. Through Tapestry 5.3, the foundation was <a  
class="external-link" href="http://http//prototypejs.org/"; 
rel="nofollow">Prototype</a>. In 5.4, support for <a  class="external-link" 
href="http://jquery.org/"; rel="nofollow">jQuery</a> has been added, and it is 
possible to add others. This symbol defines a value that is used to select a 
resource that is provided to the ModuleManager service as a 
JavaScriptModuleConfiguration to provide a specific implementation of the 
<code>t5/core/dom</code> module. Tapestry 5.4 directly supports "prototype" or 
"jquery". To support other foundation frameworks, override this symbol value 
and supply your own module configuration.</p><p>In Tapestry 5.4, this defaults 
to "prototype" for compatibility with 5.3. This 
 will likely change in 5.5 to default to "jquery". At some point in the future, 
Prototype support may no longer be present.</p><h3 
id="Configuration-tapestry.lenient-date-format(SymbolConstants.LENIENT_DATE_FORMAT)">tapestry.lenient-date-format
 (SymbolConstants.LENIENT_DATE_FORMAT)</h3>
 
 <div class="confluence-information-macro 
confluence-information-macro-information"><p class="title">Added in 
5.4</p><span class="aui-icon aui-icon-small aui-iconfont-info 
confluence-information-macro-icon"></span><div 
class="confluence-information-macro-body">
 </div></div>
-<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid #D8E4F1;">
-<p>When set to true, the DateField component will be lenient about date 
calculations, for example allowing a January 32 date as input and automatically 
converting it to February 1. When false (the default), only valid dates may be 
entered.</p>
-</div><h3 
id="Configuration-tapestry.min-gzip-size(SymbolConstants.MIN_GZIP_SIZE)">tapestry.min-gzip-size
 (SymbolConstants.MIN_GZIP_SIZE)</h3><p>The minimum stream size necessary for 
Tapestry to use GZIP compression on the response stream. See <a  
href="response-compression.html">Response Compression</a> for more 
details.</p><h3 
id="Configuration-tapestry.omit-generator-meta(SymbolConstants.OMIT_GENERATOR_META)">tapestry.omit-generator-meta
 (SymbolConstants.OMIT_GENERATOR_META)</h3><p>If "true", then the &lt;meta&gt; 
tag that Tapestry normally writes into the &lt;head&gt;, identifying the 
Tapestry version, will be omitted. Use this when you do not wish to advertise 
your application's use of Tapestry.</p><h3 
id="Configuration-tapestry.page-pool.active-window">tapestry.page-pool.active-window</h3>
+<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid 
#D8E4F1;"><p>When set to true, the DateField component will be lenient about 
date calculations, for example allowing a January 32 date as input and 
automatically converting it to February 1. When false (the default), only valid 
dates may be entered.</p></div><h3 
id="Configuration-tapestry.min-gzip-size(SymbolConstants.MIN_GZIP_SIZE)">tapestry.min-gzip-size
 (SymbolConstants.MIN_GZIP_SIZE)</h3><p>The minimum stream size necessary for 
Tapestry to use GZIP compression on the response stream. See <a  
href="response-compression.html">Response Compression</a> for more 
details.</p><h3 
id="Configuration-tapestry.omit-generator-meta(SymbolConstants.OMIT_GENERATOR_META)">tapestry.omit-generator-meta
 (SymbolConstants.OMIT_GENERATOR_META)</h3><p>If "true", then the &lt;meta&gt; 
tag that Tapestry normally writes into the &lt;head&gt;, identifying the 
Tapestry version, will be omitted. Use this when you do not wish to advertise y
 our application's use of Tapestry.</p><h3 
id="Configuration-tapestry.page-pool.active-window">tapestry.page-pool.active-window</h3>
 
 <div class="confluence-information-macro 
confluence-information-macro-warning"><p class="title">Deprecated since 
5.2</p><span class="aui-icon aui-icon-small aui-iconfont-error 
confluence-information-macro-icon"></span><div 
class="confluence-information-macro-body">
 </div></div>
-<div style="border-right: 20px solid #ffcccc;border-left: 20px solid #ffcccc;">
-<p>Starting in 5.2, this is only used if tapestry.page-pool-enabled is "true". 
<em>Removed in 5.3</em></p></div><p>The time interval that an instantiated page 
instance may be cached before being removed. As pages are returned to the pool, 
they are time stamped. Periodically (as per the file check interval), the pool 
is scanned for page instances that have not been used recently; those that are 
outside the active window are discarded. This is used to free up unnecessary 
page instances after a request surge. Starting in 5.2, this is only effective 
if tapestry.page-pool-enabled is true.</p><p>The default is "10 m" (10 minutes; 
see <a  class="external-link" 
href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/ioc/util/TimeInterval.html";>Time
 Interval Formats</a>).</p><h3 
id="Configuration-tapestry.page-pool-enabled">tapestry.page-pool-enabled</h3><p>Starting
 with Tapestry 5.2, page pooling has been turned off by default. This symbol 
lets you re-enable page pooling. Unde
 r most circumstances this symbol should not be set. The disabling of page 
pooling starting in 5.2 significantly reduces heap memory usage and improves 
performance for most web applications.</p><p>The default is "false".</p>
+<div style="border-right: 20px solid #ffcccc;border-left: 20px solid 
#ffcccc;"><p>Starting in 5.2, this is only used if tapestry.page-pool-enabled 
is "true". <em>Removed in 5.3</em></p></div><p>The time interval that an 
instantiated page instance may be cached before being removed. As pages are 
returned to the pool, they are time stamped. Periodically (as per the file 
check interval), the pool is scanned for page instances that have not been used 
recently; those that are outside the active window are discarded. This is used 
to free up unnecessary page instances after a request surge. Starting in 5.2, 
this is only effective if tapestry.page-pool-enabled is true.</p><p>The default 
is "10 m" (10 minutes; see <a  class="external-link" 
href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/ioc/util/TimeInterval.html";>Time
 Interval Formats</a>).</p><h3 
id="Configuration-tapestry.page-pool-enabled">tapestry.page-pool-enabled</h3><p>Starting
 with Tapestry 5.2, page pooling ha
 s been turned off by default. This symbol lets you re-enable page pooling. 
Under most circumstances this symbol should not be set. The disabling of page 
pooling starting in 5.2 significantly reduces heap memory usage and improves 
performance for most web applications.</p><p>The default is "false".</p>
 
 <div class="confluence-information-macro 
confluence-information-macro-warning"><p class="title">Deprecated since 
5.2</p><span class="aui-icon aui-icon-small aui-iconfont-error 
confluence-information-macro-icon"></span><div 
class="confluence-information-macro-body">
 </div></div>
-<div style="border-right: 20px solid #ffcccc;border-left: 20px solid #ffcccc;">
-<p>Removed in 5.3.</p></div><h3 
id="Configuration-tapestry.page-pool.hard-limit">tapestry.page-pool.hard-limit</h3>
+<div style="border-right: 20px solid #ffcccc;border-left: 20px solid 
#ffcccc;"><p>Removed in 5.3.</p></div><h3 
id="Configuration-tapestry.page-pool.hard-limit">tapestry.page-pool.hard-limit</h3>
 
 <div class="confluence-information-macro 
confluence-information-macro-warning"><p class="title">Deprecated since 
5.2</p><span class="aui-icon aui-icon-small aui-iconfont-error 
confluence-information-macro-icon"></span><div 
class="confluence-information-macro-body">
 </div></div>
-<div style="border-right: 20px solid #ffcccc;border-left: 20px solid #ffcccc;">
-<p>Starting in 5.2, this is only used if tapestry.page-pool-enabled is "true". 
<em>Removed in 5.3</em></p></div><p>The absolute maximum number of page 
instances (for a particular page name / locale combination) that Tapestry will 
create at any time. If this number is reached, then requests will fail because 
a page instance is not available ... this can happen as part of a denial of 
service attack. For this value to have any meaning, it should be lower than the 
number of threads that the servlet container is configured to use when 
processing requests.</p><p>The default is 20 page instances.</p><h3 
id="Configuration-tapestry.page-pool.soft-limit">tapestry.page-pool.soft-limit</h3>
+<div style="border-right: 20px solid #ffcccc;border-left: 20px solid 
#ffcccc;"><p>Starting in 5.2, this is only used if tapestry.page-pool-enabled 
is "true". <em>Removed in 5.3</em></p></div><p>The absolute maximum number of 
page instances (for a particular page name / locale combination) that Tapestry 
will create at any time. If this number is reached, then requests will fail 
because a page instance is not available ... this can happen as part of a 
denial of service attack. For this value to have any meaning, it should be 
lower than the number of threads that the servlet container is configured to 
use when processing requests.</p><p>The default is 20 page instances.</p><h3 
id="Configuration-tapestry.page-pool.soft-limit">tapestry.page-pool.soft-limit</h3>
 
 <div class="confluence-information-macro 
confluence-information-macro-warning"><p class="title">Deprecated since 
5.2</p><span class="aui-icon aui-icon-small aui-iconfont-error 
confluence-information-macro-icon"></span><div 
class="confluence-information-macro-body">
 </div></div>
-<div style="border-right: 20px solid #ffcccc;border-left: 20px solid #ffcccc;">
-<p>Starting in 5.2, this is only used if tapestry.page-pool-enabled is "true". 
<em>Removed in 5.3</em></p></div><p>The number of pages in the page pool (for a 
given page name / locale combination) before which Tapestry will start to wait 
for existing pages to be made available. Under this limit of pages, Tapestry 
will simply create a new page instance if no existing instance is readily 
available. Once the soft limit is reached, Tapestry will wait a short period of 
time (the soft wait interval) to see if an existing page instance is made 
available. It will then create a new page instance (unless the hard limit has 
been reached).</p><p>The default is 5 page instances. Remember that page 
pooling is done separately for each page (and localization of the page).</p><h3 
id="Configuration-tapestry.page-pool.soft-wait">tapestry.page-pool.soft-wait</h3>
+<div style="border-right: 20px solid #ffcccc;border-left: 20px solid 
#ffcccc;"><p>Starting in 5.2, this is only used if tapestry.page-pool-enabled 
is "true". <em>Removed in 5.3</em></p></div><p>The number of pages in the page 
pool (for a given page name / locale combination) before which Tapestry will 
start to wait for existing pages to be made available. Under this limit of 
pages, Tapestry will simply create a new page instance if no existing instance 
is readily available. Once the soft limit is reached, Tapestry will wait a 
short period of time (the soft wait interval) to see if an existing page 
instance is made available. It will then create a new page instance (unless the 
hard limit has been reached).</p><p>The default is 5 page instances. Remember 
that page pooling is done separately for each page (and localization of the 
page).</p><h3 
id="Configuration-tapestry.page-pool.soft-wait">tapestry.page-pool.soft-wait</h3>
 
 <div class="confluence-information-macro 
confluence-information-macro-warning"><p class="title">Deprecated since 
5.2</p><span class="aui-icon aui-icon-small aui-iconfont-error 
confluence-information-macro-icon"></span><div 
class="confluence-information-macro-body">
 </div></div>
-<div style="border-right: 20px solid #ffcccc;border-left: 20px solid #ffcccc;">
-<p>Starting in 5.2, this is only used if tapestry.page-pool-enabled is "true". 
<em>Removed in 5.3</em></p></div><p>The time interval that Tapestry will wait 
for a page instance to become available before deciding whether to create an 
entirely new page instance.</p><p>The default is "10 ms" (10 milliseconds; see 
<a  class="external-link" 
href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/ioc/util/TimeInterval.html";>Time
 Interval Formats</a>).</p><h3 
id="Configuration-tapestry.persistence-strategy(SymbolConstants.PERSISTENCE_STRATEGY)">tapestry.persistence-strategy
 (SymbolConstants.PERSISTENCE_STRATEGY)</h3><p>Identifies the default <a  
class="external-link" 
href="http://tapestry.apache.org/persistent-page-data.html#PersistentPageData-PersistenceStrategies";>persistence
 strategy</a> for all pages that do not provide an override. The default is 
"session" (PersistenceConstants.SESSION).</p><h3 
id="Configuration-tapestry.production-mode(SymbolConstants.PRODUCTION_MODE)"
 >tapestry.production-mode (SymbolConstants.PRODUCTION_MODE)</h3><p>A flag 
 >(true or false) indicating whether the application is running in production 
 >or in development. The default is true, which means that runtime exceptions 
 >are not reported with full detail (only the root exception message is 
 >displayed, not the entire stack of exceptions, properties and other 
 >information shown in development mode).</p><h3 
 >id="Configuration-tapestry.restrictive-environment(SymbolConstants.RESTRICTIVE_ENVIRONMENT)">tapestry.restrictive-environment
 > (SymbolConstants.RESTRICTIVE_ENVIRONMENT)</h3>
+<div style="border-right: 20px solid #ffcccc;border-left: 20px solid 
#ffcccc;"><p>Starting in 5.2, this is only used if tapestry.page-pool-enabled 
is "true". <em>Removed in 5.3</em></p></div><p>The time interval that Tapestry 
will wait for a page instance to become available before deciding whether to 
create an entirely new page instance.</p><p>The default is "10 ms" (10 
milliseconds; see <a  class="external-link" 
href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/ioc/util/TimeInterval.html";>Time
 Interval Formats</a>).</p><h3 
id="Configuration-tapestry.persistence-strategy(SymbolConstants.PERSISTENCE_STRATEGY)">tapestry.persistence-strategy
 (SymbolConstants.PERSISTENCE_STRATEGY)</h3><p>Identifies the default <a  
class="external-link" 
href="http://tapestry.apache.org/persistent-page-data.html#PersistentPageData-PersistenceStrategies";>persistence
 strategy</a> for all pages that do not provide an override. The default is 
"session" (PersistenceConstants.SESSION).</p><
 h3 
id="Configuration-tapestry.production-mode(SymbolConstants.PRODUCTION_MODE)">tapestry.production-mode
 (SymbolConstants.PRODUCTION_MODE)</h3><p>A flag (true or false) indicating 
whether the application is running in production or in development. The default 
is true, which means that runtime exceptions are not reported with full detail 
(only the root exception message is displayed, not the entire stack of 
exceptions, properties and other information shown in development mode).</p><h3 
id="Configuration-tapestry.restrictive-environment(SymbolConstants.RESTRICTIVE_ENVIRONMENT)">tapestry.restrictive-environment
 (SymbolConstants.RESTRICTIVE_ENVIRONMENT)</h3>
 
 <div class="confluence-information-macro 
confluence-information-macro-information"><p class="title">Added in 
5.4</p><span class="aui-icon aui-icon-small aui-iconfont-info 
confluence-information-macro-icon"></span><div 
class="confluence-information-macro-body">
 </div></div>
-<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid #D8E4F1;">
-</div><p>A flag (true or false) that, if true, changes some default Tapestry 
behavior to make it work better in restrictive environments such as&#160;<a  
href="google-app-engine.html">Google App Engine</a> (GAE). Specifically, if 
true, then OperationsTracker writes its exception report files into a single 
folder (specified by the tapestry.exception-reports-dir symbol, above) rather 
than creating dated sub-folders under that path, and ResourceTransformerFactory 
avoids creating a cache folder for resources.</p><h3 
id="Configuration-tapestry.secure-enabled(SymbolConstants.SECURE_ENABLED)">tapestry.secure-enabled
 (SymbolConstants.SECURE_ENABLED)</h3><p>If true, then @<a  
class="external-link" 
href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/annotations/Secure.html";>Secure</a>
 annotations are honored; if false, no security checks or redirects take place. 
This defaults to tapestry.production-mode, meaning that in development mode it 
will (by default) be disabled. See 
 <a  href="https.html">HTTPS</a> for details.</p><h3 
id="Configuration-tapestry.secure-page(MetaDataConstants.SECURE_PAGE)">tapestry.secure-page
 (MetaDataConstants.SECURE_PAGE)</h3><p>If true, then the page may only be 
accessed via HTTPS. The @<a  class="external-link" 
href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/annotations/Secure.html";>Secure</a>
 annotation will set this value to true. This symbol is the default for all 
pages; set it to "true" to force the entire application to be secure. See <a  
href="https.html">HTTPS</a> for details.</p><h3 
id="Configuration-tapestry.service-reloading-enabled">tapestry.service-reloading-enabled</h3>
+<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid 
#D8E4F1;"></div><p>A flag (true or false) that, if true, changes some default 
Tapestry behavior to make it work better in restrictive environments such 
as&#160;<a  href="google-app-engine.html">Google App Engine</a> (GAE). 
Specifically, if true, then OperationsTracker writes its exception report files 
into a single folder (specified by the tapestry.exception-reports-dir symbol, 
above) rather than creating dated sub-folders under that path, and 
ResourceTransformerFactory avoids creating a cache folder for resources.</p><h3 
id="Configuration-tapestry.secure-enabled(SymbolConstants.SECURE_ENABLED)">tapestry.secure-enabled
 (SymbolConstants.SECURE_ENABLED)</h3><p>If true, then @<a  
class="external-link" 
href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/annotations/Secure.html";>Secure</a>
 annotations are honored; if false, no security checks or redirects take place. 
This defaults to tapestry.productio
 n-mode, meaning that in development mode it will (by default) be disabled. See 
<a  href="https.html">HTTPS</a> for details.</p><h3 
id="Configuration-tapestry.secure-page(MetaDataConstants.SECURE_PAGE)">tapestry.secure-page
 (MetaDataConstants.SECURE_PAGE)</h3><p>If true, then the page may only be 
accessed via HTTPS. The @<a  class="external-link" 
href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/annotations/Secure.html";>Secure</a>
 annotation will set this value to true. This symbol is the default for all 
pages; set it to "true" to force the entire application to be secure. See <a  
href="https.html">HTTPS</a> for details.</p><h3 
id="Configuration-tapestry.service-reloading-enabled">tapestry.service-reloading-enabled</h3>
 
 <div class="confluence-information-macro 
confluence-information-macro-information"><p class="title">Added in 
5.2</p><span class="aui-icon aui-icon-small aui-iconfont-info 
confluence-information-macro-icon"></span><div 
class="confluence-information-macro-body">
 </div></div>
-<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid #D8E4F1;">
-<p>&#160;</p></div><p>If true (the default), then Tapestry IoC will attempt to 
reload service implementations when they change. This only applies to classes 
that Tapestry IoC instantiates itself, and have a known service interface (the 
container creates a proxy that, internally, can reload the implementation). 
Service reloading only works when the underlying class files are on the 
filesystem ... it is intended for development, not as an option in 
production.</p><p>This must be specified as a JVM system property. <em>You may 
not set it in your module class.</em></p><h3 
id="Configuration-tapestry.scriptaculous(SymbolConstants.SCRIPTACULOUS)">tapestry.scriptaculous
 (SymbolConstants.SCRIPTACULOUS)</h3>
+<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid 
#D8E4F1;"><p>&#160;</p></div><p>If true (the default), then Tapestry IoC will 
attempt to reload service implementations when they change. This only applies 
to classes that Tapestry IoC instantiates itself, and have a known service 
interface (the container creates a proxy that, internally, can reload the 
implementation). Service reloading only works when the underlying class files 
are on the filesystem ... it is intended for development, not as an option in 
production.</p><p>This must be specified as a JVM system property. <em>You may 
not set it in your module class.</em></p><h3 
id="Configuration-tapestry.scriptaculous(SymbolConstants.SCRIPTACULOUS)">tapestry.scriptaculous
 (SymbolConstants.SCRIPTACULOUS)</h3>
 
-<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid #D8E4F1;">
-<p>&#160;</p></div><p>The path to the embedded copy of <a  
class="external-link" href="http://script.aculo.us/"; 
rel="nofollow">script.aculo.us</a> packaged with Tapestry. This value may be 
overridden to use a different version of the script.aculo.us library. See <a  
href="legacy-javascript.html">Legacy JavaScript</a> for the default 
version.</p><h3 
id="Configuration-tapestry.session-locking-enabled(SymbolConstants.SESSION_LOCKING_ENABLED)">tapestry.session-locking-enabled
 (SymbolConstants.SESSION_LOCKING_ENABLED)</h3>
+<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid 
#D8E4F1;"><p>&#160;</p></div><p>The path to the embedded copy of <a  
class="external-link" href="http://script.aculo.us/"; 
rel="nofollow">script.aculo.us</a> packaged with Tapestry. This value may be 
overridden to use a different version of the script.aculo.us library. See <a  
href="legacy-javascript.html">Legacy JavaScript</a> for the default 
version.</p><h3 
id="Configuration-tapestry.session-locking-enabled(SymbolConstants.SESSION_LOCKING_ENABLED)">tapestry.session-locking-enabled
 (SymbolConstants.SESSION_LOCKING_ENABLED)</h3>
 
 <div class="confluence-information-macro 
confluence-information-macro-information"><p class="title">Added in 
5.4</p><span class="aui-icon aui-icon-small aui-iconfont-info 
confluence-information-macro-icon"></span><div 
class="confluence-information-macro-body">
 </div></div>
-<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid #D8E4F1;">
-<p>&#160;</p></div><p>If true (the default), then Tapestry will use a lock 
when reading/updating HttpSession attributes, to avoid simultaneous access by 
multiple threads when using AJAX. See <a  class="external-link" 
href="https://issues.apache.org/jira/browse/TAP5-2049";>TAP5-2049</a>. Set to 
false to deactivate the session locking logic.</p><p>Prior to version 5.4 
session locking was not performed.</p><h3 
id="Configuration-tapestry.start-page-name(SymbolConstants.START_PAGE_NAME)">tapestry.start-page-name
 (SymbolConstants.START_PAGE_NAME)</h3><p>The logical name of the start page, 
the page that is rendered for the <em>root URL</em>. This is normally "start". 
This functionality is vestigial: it has been superseded by the use of Index 
pages.</p><p><span class="confluence-anchor-link" 
id="Configuration-supported-locales"></span></p><h3 
id="Configuration-tapestry.supported-locales(SymbolConstants.SUPPORTED_LOCALES)">tapestry.supported-locales
 (SymbolConstants.SUPPORTED_LOCALES)</h3><p>
 A comma-separated list of supported locales. Incoming requests as "narrowed" 
to one of these locales, based on closest match. If no match can be found, the 
first locale in the list is treated as the default.</p><p>The default is 
(currently) "en,it,es,zh_CN,pt_PT,de,ru,hr,fi_FI,sv_SE,fr_FR,da,pt_BR,ja,el". 
As the community contributes new localizations of the necessary messages files, 
this list will expand. Note that the Tapestry quickstart archetype overrides 
the factory default, forcing the application to be localized only for 
"en".</p><h3 
id="Configuration-tapestry.suppress-redirect-from-action-requests(SymbolConstants.SUPPRESS_REDIRECT_FROM_ACTION_REQUESTS)">tapestry.suppress-redirect-from-action-requests
 (SymbolConstants.SUPPRESS_REDIRECT_FROM_ACTION_REQUESTS)</h3>
+<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid 
#D8E4F1;"><p>&#160;</p></div><p>If true (the default), then Tapestry will use a 
lock when reading/updating HttpSession attributes, to avoid simultaneous access 
by multiple threads when using AJAX. See <a  class="external-link" 
href="https://issues.apache.org/jira/browse/TAP5-2049";>TAP5-2049</a>. Set to 
false to deactivate the session locking logic.</p><p>Prior to version 5.4 
session locking was not performed.</p><h3 
id="Configuration-tapestry.start-page-name(SymbolConstants.START_PAGE_NAME)">tapestry.start-page-name
 (SymbolConstants.START_PAGE_NAME)</h3><p>The logical name of the start page, 
the page that is rendered for the <em>root URL</em>. This is normally "start". 
This functionality is vestigial: it has been superseded by the use of Index 
pages.</p><p><span class="confluence-anchor-link" 
id="Configuration-supported-locales"></span></p><h3 
id="Configuration-tapestry.supported-locales(SymbolConstants.SUPPORTED_L
 OCALES)">tapestry.supported-locales 
(SymbolConstants.SUPPORTED_LOCALES)</h3><p>A comma-separated list of supported 
locales. Incoming requests as "narrowed" to one of these locales, based on 
closest match. If no match can be found, the first locale in the list is 
treated as the default.</p><p>The default is (currently) 
"en,it,es,zh_CN,pt_PT,de,ru,hr,fi_FI,sv_SE,fr_FR,da,pt_BR,ja,el". As the 
community contributes new localizations of the necessary messages files, this 
list will expand. Note that the Tapestry quickstart archetype overrides the 
factory default, forcing the application to be localized only for "en".</p><h3 
id="Configuration-tapestry.suppress-redirect-from-action-requests(SymbolConstants.SUPPRESS_REDIRECT_FROM_ACTION_REQUESTS)">tapestry.suppress-redirect-from-action-requests
 (SymbolConstants.SUPPRESS_REDIRECT_FROM_ACTION_REQUESTS)</h3>
 
 <div class="confluence-information-macro 
confluence-information-macro-warning"><p class="title">Deprecated since 
5.2</p><span class="aui-icon aui-icon-small aui-iconfont-error 
confluence-information-macro-icon"></span><div 
class="confluence-information-macro-body">
 </div></div>
-<div style="border-right: 20px solid #ffcccc;border-left: 20px solid #ffcccc;">
-<p><em>Removed in 5.3.</em></p></div><p>Normally, Tapestry responds to action 
requests (such as form submissions) by sending a client-side redirect to the 
rendering page. This has a lot of benefits in terms of improving browser 
navigation, making sure URLs are bookmarkable, and so forth. However, it has a 
cost: more data stored persistently in the session, and a double-request for 
each user action (one action request, one render request).</p><p>Setting this 
symbol to "true" changes the Tapestry behavior to make it more like Tapestry 4: 
a markup response is sent directly for the action request, with no redirect in 
the middle. This option should be used with care, and only in cases where you 
are certain that the benefits outweigh the disadvantages.</p><h3 
id="Configuration-tapestry.thread-pool.core-pool-size(IOCSymbols.THREAD_POOL_CORE_SIZE)">tapestry.thread-pool.core-pool-size
 (IOCSymbols.THREAD_POOL_CORE_SIZE)</h3><p>Nominal size of the thread pool 
Tapestry uses to execute tasks in 
 parallel. Under sufficient load, the thread pool may grow larger than this 
core size. Defaults to 3.</p><h3 
id="Configuration-tapestry.thread-pool.max-pool-size(IOCSymbols.THREAD_POOL_MAX_SIZE)">tapestry.thread-pool.max-pool-size
 (IOCSymbols.THREAD_POOL_MAX_SIZE)</h3><p>Maximum size of the thread pool 
Tapestry uses to execute tasks in parallel. Defaults to 10.</p><h3 
id="Configuration-tapestry.thread-pool.queue-size(IOCSymbols.THREAD_POOL_QUEUE_SIZE)">tapestry.thread-pool.queue-size
 (IOCSymbols.THREAD_POOL_QUEUE_SIZE)</h3>
+<div style="border-right: 20px solid #ffcccc;border-left: 20px solid 
#ffcccc;"><p><em>Removed in 5.3.</em></p></div><p>Normally, Tapestry responds 
to action requests (such as form submissions) by sending a client-side redirect 
to the rendering page. This has a lot of benefits in terms of improving browser 
navigation, making sure URLs are bookmarkable, and so forth. However, it has a 
cost: more data stored persistently in the session, and a double-request for 
each user action (one action request, one render request).</p><p>Setting this 
symbol to "true" changes the Tapestry behavior to make it more like Tapestry 4: 
a markup response is sent directly for the action request, with no redirect in 
the middle. This option should be used with care, and only in cases where you 
are certain that the benefits outweigh the disadvantages.</p><h3 
id="Configuration-tapestry.thread-pool.core-pool-size(IOCSymbols.THREAD_POOL_CORE_SIZE)">tapestry.thread-pool.core-pool-size
 (IOCSymbols.THREAD_POOL_CORE_
 SIZE)</h3><p>Nominal size of the thread pool Tapestry uses to execute tasks in 
parallel. Under sufficient load, the thread pool may grow larger than this core 
size. Defaults to 3.</p><h3 
id="Configuration-tapestry.thread-pool.max-pool-size(IOCSymbols.THREAD_POOL_MAX_SIZE)">tapestry.thread-pool.max-pool-size
 (IOCSymbols.THREAD_POOL_MAX_SIZE)</h3><p>Maximum size of the thread pool 
Tapestry uses to execute tasks in parallel. Defaults to 10.</p><h3 
id="Configuration-tapestry.thread-pool.queue-size(IOCSymbols.THREAD_POOL_QUEUE_SIZE)">tapestry.thread-pool.queue-size
 (IOCSymbols.THREAD_POOL_QUEUE_SIZE)</h3>
 
 <div class="confluence-information-macro 
confluence-information-macro-information"><p class="title">Added in 
5.3</p><span class="aui-icon aui-icon-small aui-iconfont-info 
confluence-information-macro-icon"></span><div 
class="confluence-information-macro-body">
 </div></div>
-<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid #D8E4F1;">
-<p>Previously, the queue size was unbounded, which meant that max-pool-size 
was ignored.</p></div><p>Size of the task queue for the thread pool. Once the 
core pool size is reached, new threads are not created until the queue is full. 
The default queue size is 100.</p><h3 
id="Configuration-tapestry.thread-pool.keep-alive(IOCSymbols.THREAD_POOL_KEEP_ALIVE)">tapestry.thread-pool.keep-alive
 (IOCSymbols.THREAD_POOL_KEEP_ALIVE)</h3><p>The time to keep a created but 
unused thread in the pool alive. Defaults to one minute.</p><h3 
id="Configuration-tapestry.thread-pool-enabled(IOCSymbols.THREAD_POOL_ENABLED)">tapestry.thread-pool-enabled
 (IOCSymbols.THREAD_POOL_ENABLED)</h3><p>If set to false, then parallel task 
execution does not occur. This is useful in environments where creating new 
threads is not allowed, such as <a  href="google-app-engine.html">Google App 
Engine</a>.</p><h2 id="Configuration-SettingComponentParameterDefaults">Setting 
Component Parameter Defaults</h2>
+<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid 
#D8E4F1;"><p>Previously, the queue size was unbounded, which meant that 
max-pool-size was ignored.</p></div><p>Size of the task queue for the thread 
pool. Once the core pool size is reached, new threads are not created until the 
queue is full. The default queue size is 100.</p><h3 
id="Configuration-tapestry.thread-pool.keep-alive(IOCSymbols.THREAD_POOL_KEEP_ALIVE)">tapestry.thread-pool.keep-alive
 (IOCSymbols.THREAD_POOL_KEEP_ALIVE)</h3><p>The time to keep a created but 
unused thread in the pool alive. Defaults to one minute.</p><h3 
id="Configuration-tapestry.thread-pool-enabled(IOCSymbols.THREAD_POOL_ENABLED)">tapestry.thread-pool-enabled
 (IOCSymbols.THREAD_POOL_ENABLED)</h3><p>If set to false, then parallel task 
execution does not occur. This is useful in environments where creating new 
threads is not allowed, such as <a  href="google-app-engine.html">Google App 
Engine</a>.</p><h2 id="Configuration-SettingComponen
 tParameterDefaults">Setting Component Parameter Defaults</h2>
 
 <div class="confluence-information-macro 
confluence-information-macro-information"><p class="title">Added in 
5.3</p><span class="aui-icon aui-icon-small aui-iconfont-info 
confluence-information-macro-icon"></span><div 
class="confluence-information-macro-body">
 </div></div>
-<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid #D8E4F1;">
-<p> Some components, notably Grid, Pallete and Zone, have default parameter 
values specified in terms of symbols. This means you can use these symbols to 
modify the defaults for all instances of such components in your application. 
For example, you can set the default rows per page for all Grid instances by 
adding this to the <code>contributeApplicationDefaults</code> method in your 
application's module class (typically AppModule.java):</p>
-
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent 
panelContent pdl">
-<pre class="brush: java; gutter: false; theme: Default" 
style="font-size:12px;">
+<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid 
#D8E4F1;"><p> Some components, notably Grid, Pallete and Zone, have default 
parameter values specified in terms of symbols. This means you can use these 
symbols to modify the defaults for all instances of such components in your 
application. For example, you can set the default rows per page for all Grid 
instances by adding this to the <code>contributeApplicationDefaults</code> 
method in your application's module class (typically AppModule.java):</p><div 
class="code panel pdl" style="border-width: 1px;">
+ <div class="codeContent panelContent pdl"> 
+  <pre class="brush: java; gutter: false; theme: Default" 
style="font-size:12px;">
 configuration.add(ComponentParameterConstants.GRID_ROWS_PER_PAGE, "15");
-</pre>
-</div></div>
-</div><p>See the complete list of such constants at <a  class="external-link" 
href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/ComponentParameterConstants.html";>ComponentParameterConstants</a>.</p><h2
 id="Configuration-ConfiguringIgnoredPaths">Configuring Ignored 
Paths</h2><p>You may sometimes need to use Tapestry in concert with other 
servlets. This can cause problems, since Tapestry (being a servlet filter) may 
see URLs intended for another servlet and attempt to process them.</p><p>The 
Servlet API does not provide Tapestry with any clues about what other servlets 
are available in the web application. Instead, you must configure Tapestry to 
ignore paths intended for other servlets.</p><p>The IgnoredPathsFilter service 
is the method for this kind of configuration. Its configuration is an unordered 
collection of regular expression patterns. A request whose path matches any of 
these patterns is <strong>not</strong> processed by Tapestry.</p><p>For 
example, say yo
 u are using <a  class="external-link" href="http://getahead.org/dwr/"; 
rel="nofollow">Direct Web Remoting</a>. You'll likely have the servlet path 
/dwr mapped to the Direct Web Remoting servlet.</p><p>You contribution would 
look like:</p><div class="code panel pdl" style="border-width: 1px;"><div 
class="codeContent panelContent pdl">
+</pre> 
+ </div>
+</div></div><p>See the complete list of such constants at <a  
class="external-link" 
href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/ComponentParameterConstants.html";>ComponentParameterConstants</a>.</p><h2
 id="Configuration-ConfiguringIgnoredPaths">Configuring Ignored 
Paths</h2><p>You may sometimes need to use Tapestry in concert with other 
servlets. This can cause problems, since Tapestry (being a servlet filter) may 
see URLs intended for another servlet and attempt to process them.</p><p>The 
Servlet API does not provide Tapestry with any clues about what other servlets 
are available in the web application. Instead, you must configure Tapestry to 
ignore paths intended for other servlets.</p><p>The IgnoredPathsFilter service 
is the method for this kind of configuration. Its configuration is an unordered 
collection of regular expression patterns. A request whose path matches any of 
these patterns is <strong>not</strong> processed by Tapestry.</p><p>For 
example, 
 say you are using <a  class="external-link" href="http://getahead.org/dwr/"; 
rel="nofollow">Direct Web Remoting</a>. You'll likely have the servlet path 
/dwr mapped to the Direct Web Remoting servlet.</p><p>You contribution would 
look like:</p><div class="code panel pdl" style="border-width: 1px;"><div 
class="codeContent panelContent pdl">
 <pre class="brush: java; gutter: false; theme: Default" 
style="font-size:12px;">  public static void 
contributeIgnoredPathsFilter(Configuration&lt;String&gt; configuration)
   {
     configuration.add("/dwr/.*");
@@ -424,9 +351,7 @@ configuration.add(ComponentParameterCons
 
 <div class="confluence-information-macro 
confluence-information-macro-information"><p class="title">Added in 
5.3</p><span class="aui-icon aui-icon-small aui-iconfont-info 
confluence-information-macro-icon"></span><div 
class="confluence-information-macro-body">
 </div></div>
-<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid #D8E4F1;">
-<p>Support for application folders was added in release 5.3.</p>
-</div><p>Setting this up is in two parts:</p><ul><li>Modifying the 
configuration of the <code>&lt;url-pattern&gt;</code> for the Tapestry filter 
to match the specified folder.</li><li>Identifying the folder name using a 
Tapestry symbol value contribution.</li></ul><p>So, if you wanted to run the 
Tapestry application inside folder <code>t5app</code>, you would modify your 
<code>web.xml</code> indicate the use of the folder:</p><div class="code panel 
pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid 
#D8E4F1;"><p>Support for application folders was added in release 
5.3.</p></div><p>Setting this up is in two parts:</p><ul><li>Modifying the 
configuration of the <code>&lt;url-pattern&gt;</code> for the Tapestry filter 
to match the specified folder.</li><li>Identifying the folder name using a 
Tapestry symbol value contribution.</li></ul><p>So, if you wanted to run the 
Tapestry application inside folder <code>t5app</code>, you would modify your 
<code>web.xml</code> indicate the use of the folder:</p><div class="code panel 
pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
 <pre class="brush: xml; gutter: false; theme: Default" 
style="font-size:12px;">  &lt;filter-mapping&gt;
     &lt;filter-name&gt;app&lt;/filter-name&gt;
     &lt;url-pattern&gt;/t5app/*&lt;/url-pattern&gt;



Reply via email to