Modified: websites/production/tapestry/content/specific-errors-faq.html
==============================================================================
--- websites/production/tapestry/content/specific-errors-faq.html (original)
+++ websites/production/tapestry/content/specific-errors-faq.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">Specific Errors FAQ</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">Specific Errors FAQ</h1></div></div>
       <div class="clearer"></div>
       </div>
 
@@ -69,46 +64,25 @@
       </div>
 
       <div id="content">
-                <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="error-page-recipe.html">Error Page Recipe</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="specific-errors-faq.html">Specific Errors 
FAQ</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="overriding-exception-reporting.html">Overriding Exception Reporting</a>
-                
-                        
-                    </div>
-    </li></ul>
-</div><h3 
id="SpecificErrorsFAQ-WhydoIgettheexception&quot;Noserviceimplementstheinterfaceorg.apache.tapestry5.internal.InternalComponentResources&quot;whentryingtousetheBeanEditFormcomponent?">Why
 do I get the exception "No service implements the interface 
org.apache.tapestry5.internal.InternalComponentResources" when trying to use 
the BeanEditForm component?</h3><p>This can occur when you choose the wrong 
package for your data object, the object edited by the BeanEditForm component. 
If you place it in the same package as your pages, Tapestry will treat it like 
a page, and perform a number of transformation on it, including adding a new 
constructor.</p><p>Only component classes should go in the Tapestry-controlled 
packages (<code>pages</code>, <code>components</code>, <code>mixins</code> and 
<code>base</code> under your application's root package). By convention, simple 
data objects should go in a <code>data</code> package, and Hibernate entities 
should go in an <code>entities</cod
 e> package.</p><div class="confluence-information-macro 
confluence-information-macro-note"><span class="aui-icon aui-icon-small 
aui-iconfont-warning confluence-information-macro-icon"></span><div 
class="confluence-information-macro-body"><p>This is likely a bit different in 
5.3 than in 5.2 (because 5.3 builds a very different constructor into the 
component) and needs to be tested in 5.3 to see what exact exception will 
occur.</p></div></div><h3 
id="SpecificErrorsFAQ-Igetanerrorabout&quot;Pagedidnotgenerateanymarkupwhenrendered.&quot;butIhaveatemplate,whathappened?">I
 get an error about "Page did not generate any markup when rendered." but I 
have a template, what happened?</h3><p>The most common error here is that the 
case of the page class did not match the case of the template. For example, you 
might name your class ViewOrders, but name the template vieworders.tml. The 
correct name for the template is ViewOrders.tml, matching the case of the Java 
class name.</p><p>Worse, you may fi
 nd that your application works during development (under Windows, which is 
case insensitive) but does not work when deployed on a Linux or Unix server, 
which may be case sensitive.</p><p>The other cause of this may be that your 
template files simply are not being packaged up correctly with the rest of your 
application. When in doubt, use the Java <code>jar</code> command to see 
exactly whats inside your WAR file. Your page templates should either be in the 
root folder of the WAR, or package with the corresponding .class file.</p><h3 
id="SpecificErrorsFAQ-MyapplicationfailswiththeerrorPermGen,howdoIfixthis?">My 
application fails with the error <strong>PermGen</strong>, how do I fix 
this?</h3><p>PermGen refers to the part of the Java memory space devoted to 
permanent objects, which are mostly loaded classes. When developing under 
Tapestry, many more classes and class loaders are created than normal; this is 
part of live class reloading. Because of this, you will want to increase the a
 mount of memory Java devotes to this.</p><p>The solution is to add 
<code>-XX:MaxPermSize=512m</code> to your command line. You may also want to 
increase the regular amount of heap space with <code>-Xmx600M</code>. Of 
course, you may need to adjust the amount of memory in each category to match 
your actual application, but these are good starting values.</p><p>Java Virtual 
Machine arguments can be specified inside an Eclipse launch 
configuration:</p><p><span class="confluence-embedded-file-wrapper"><img 
class="confluence-embedded-image confluence-thumbnail" 
src="specific-errors-faq.data/eclipse-permgen.png"></span></p><h3 
id="SpecificErrorsFAQ-WhydoIsometimesgetajava.lang.NoSuchMethodErrorexceptionafterreloadingmypage?">Why
 do I sometimes get a <code>java.lang.NoSuchMethodError</code> exception after 
reloading my page?</h3><p>Tapestry's live class reloading is not 
perfect.&#160;<span style="line-height: 1.4285715;">It tends to use a lot of 
Java ClassLoaders on top of the normal Class
 Loaders used by the Java Virtual Machine and the servlet container. When you 
change non-component classes and interfaces that are referenced by components 
and pages, such as to add or change a method, only the component classes are 
reloaded. The non-component classes are frozen as they were when they were 
</span><em style="line-height: 1.4285715;">first</em><span style="line-height: 
1.4285715;"> loaded.</span></p><p>Unfortunately, this is one of the areas where 
you must restart your application entirely in order to force the new versions 
of the non-component classes to be loaded into memory.</p><h3 
id="SpecificErrorsFAQ-Whydomylogscontain&quot;java.lang.RuntimeException:FormsrequirethattherequestmethodbePOSTandthatthet:formdataqueryparameterhavevalues&quot;?">Why
 do my logs contain "java.lang.RuntimeException: Forms require that the request 
method be POST and that the t:formdata query parameter have 
values"?</h3><p>This is caused by someone (or something) submitting the URL of 
your 
 form using an HTTP GET instead of POST. Tapestry forms must always use POST 
actions.</p><p>Some known scenarios that cause this error:</p><ul><li>Bots 
crawling your site</li><li>Web browser auto-complete functions trying to be 
helpful</li><li>Users with browser developer tools manually modifying the form 
from a POST to a GET to see what will happen.</li><li>Users getting a 
validation error on a form, then re-submitting the form by clicking in the URL 
address field and hitting Enter.</li><li>In Tapestry versions before 5.4, 
(rarely) the use of property names for form fields where the property name 
matches a JavaScript property (see <a  class="external-link" 
href="https://issues.apache.org/jira/browse/TAP5-2066";>TAP5-2066</a>).</li></ul><p>In
 every known scenario except the last, these errors are harmless and you 
probably want to redirect the user to the page the form is on &#8211; and avoid 
logging an error. That's not too hard to do. Just add code like the following 
to your module c
 lass (usually AppModule.java):</p><div class="code panel pdl" 
style="border-width: 1px;"><div class="codeHeader panelHeader pdl" 
style="border-bottom-width: 1px;"><b>AppModule.java (partial)</b></div><div 
class="codeContent panelContent pdl">
+                <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="error-page-recipe.html">Error Page Recipe</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="specific-errors-faq.html">Specific Errors FAQ</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="overriding-exception-reporting.html">Overriding Exception 
Reporting</a> 
+  </div> </li></ul></div><h3 
id="SpecificErrorsFAQ-WhydoIgettheexception&quot;Noserviceimplementstheinterfaceorg.apache.tapestry5.internal.InternalComponentResources&quot;whentryingtousetheBeanEditFormcomponent?">Why
 do I get the exception "No service implements the interface 
org.apache.tapestry5.internal.InternalComponentResources" when trying to use 
the BeanEditForm component?</h3><p>This can occur when you choose the wrong 
package for your data object, the object edited by the BeanEditForm component. 
If you place it in the same package as your pages, Tapestry will treat it like 
a page, and perform a number of transformation on it, including adding a new 
constructor.</p><p>Only component classes should go in the Tapestry-controlled 
packages (<code>pages</code>, <code>components</code>, <code>mixins</code> and 
<code>base</code> under your application's root package). By convention, simple 
data objects should go in a <code>data</code> package, and Hibernate entities 
should go in an 
 <code>entities</code> package.</p><div class="confluence-information-macro 
confluence-information-macro-note"><span class="aui-icon aui-icon-small 
aui-iconfont-warning confluence-information-macro-icon"></span><div 
class="confluence-information-macro-body"><p>This is likely a bit different in 
5.3 than in 5.2 (because 5.3 builds a very different constructor into the 
component) and needs to be tested in 5.3 to see what exact exception will 
occur.</p></div></div><h3 
id="SpecificErrorsFAQ-Igetanerrorabout&quot;Pagedidnotgenerateanymarkupwhenrendered.&quot;butIhaveatemplate,whathappened?">I
 get an error about "Page did not generate any markup when rendered." but I 
have a template, what happened?</h3><p>The most common error here is that the 
case of the page class did not match the case of the template. For example, you 
might name your class ViewOrders, but name the template vieworders.tml. The 
correct name for the template is ViewOrders.tml, matching the case of the Java 
class name.</p><
 p>Worse, you may find that your application works during development (under 
Windows, which is case insensitive) but does not work when deployed on a Linux 
or Unix server, which may be case sensitive.</p><p>The other cause of this may 
be that your template files simply are not being packaged up correctly with the 
rest of your application. When in doubt, use the Java <code>jar</code> command 
to see exactly whats inside your WAR file. Your page templates should either be 
in the root folder of the WAR, or package with the corresponding .class 
file.</p><h3 
id="SpecificErrorsFAQ-MyapplicationfailswiththeerrorPermGen,howdoIfixthis?">My 
application fails with the error <strong>PermGen</strong>, how do I fix 
this?</h3><p>PermGen refers to the part of the Java memory space devoted to 
permanent objects, which are mostly loaded classes. When developing under 
Tapestry, many more classes and class loaders are created than normal; this is 
part of live class reloading. Because of this, you will wan
 t to increase the amount of memory Java devotes to this.</p><p>The solution is 
to add <code>-XX:MaxPermSize=512m</code> to your command line. You may also 
want to increase the regular amount of heap space with <code>-Xmx600M</code>. 
Of course, you may need to adjust the amount of memory in each category to 
match your actual application, but these are good starting values.</p><p>Java 
Virtual Machine arguments can be specified inside an Eclipse launch 
configuration:</p><p><span class="confluence-embedded-file-wrapper"><img 
class="confluence-embedded-image confluence-thumbnail" 
src="specific-errors-faq.data/eclipse-permgen.png"></span></p><h3 
id="SpecificErrorsFAQ-WhydoIsometimesgetajava.lang.NoSuchMethodErrorexceptionafterreloadingmypage?">Why
 do I sometimes get a <code>java.lang.NoSuchMethodError</code> exception after 
reloading my page?</h3><p>Tapestry's live class reloading is not 
perfect.&#160;<span style="line-height: 1.4285715;">It tends to use a lot of 
Java ClassLoaders on top 
 of the normal ClassLoaders used by the Java Virtual Machine and the servlet 
container. When you change non-component classes and interfaces that are 
referenced by components and pages, such as to add or change a method, only the 
component classes are reloaded. The non-component classes are frozen as they 
were when they were </span><em style="line-height: 1.4285715;">first</em><span 
style="line-height: 1.4285715;"> loaded.</span></p><p>Unfortunately, this is 
one of the areas where you must restart your application entirely in order to 
force the new versions of the non-component classes to be loaded into 
memory.</p><h3 
id="SpecificErrorsFAQ-Whydomylogscontain&quot;java.lang.RuntimeException:FormsrequirethattherequestmethodbePOSTandthatthet:formdataqueryparameterhavevalues&quot;?">Why
 do my logs contain "java.lang.RuntimeException: Forms require that the request 
method be POST and that the t:formdata query parameter have 
values"?</h3><p>This is caused by someone (or something) submitti
 ng the URL of your form using an HTTP GET instead of POST. Tapestry forms must 
always use POST actions.</p><p>Some known scenarios that cause this 
error:</p><ul><li>Bots crawling your site</li><li>Web browser auto-complete 
functions trying to be helpful</li><li>Users with browser developer tools 
manually modifying the form from a POST to a GET to see what will 
happen.</li><li>Users getting a validation error on a form, then re-submitting 
the form by clicking in the URL address field and hitting Enter.</li><li>In 
Tapestry versions before 5.4, (rarely) the use of property names for form 
fields where the property name matches a JavaScript property (see <a  
class="external-link" 
href="https://issues.apache.org/jira/browse/TAP5-2066";>TAP5-2066</a>).</li></ul><p>In
 every known scenario except the last, these errors are harmless and you 
probably want to redirect the user to the page the form is on &#8211; and avoid 
logging an error. That's not too hard to do. Just add code like the followi
 ng to your module class (usually AppModule.java):</p><div class="code panel 
pdl" style="border-width: 1px;"><div class="codeHeader panelHeader pdl" 
style="border-bottom-width: 1px;"><b>AppModule.java (partial)</b></div><div 
class="codeContent panelContent pdl">
 <pre class="brush: java; gutter: false; theme: Default" 
style="font-size:12px;">    /**
      * Redirect the user to the intended page when browsing through
      * tapestry forms through browser history or over-eager autocomplete

Modified: websites/production/tapestry/content/starting-the-ioc-registry.html
==============================================================================
--- websites/production/tapestry/content/starting-the-ioc-registry.html 
(original)
+++ websites/production/tapestry/content/starting-the-ioc-registry.html Thu Oct 
27 17:20:26 2016
@@ -44,18 +44,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">Starting the IoC Registry</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">Starting the IoC Registry</h1></div></div>
       <div class="clearer"></div>
       </div>
 
@@ -79,8 +74,7 @@ registry.performRegistryStartup();</pre>
 
 <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>As of version 5.2 the class <a  class="external-link" 
href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/ioc/RegistryBuilder.html";>RegistryBuilder</a>
 has convenience methods to build and start a Registry. The static method <a  
class="external-link" 
href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/ioc/RegistryBuilder.html#buildAndStartupRegistry(java.lang.Class...)">RegistryBuilder.buildAndStartupRegistry(Class...)</a>
 constructs a registry, adds a number of modules to the registry and performs 
registry startup. The returned registry is ready to use.</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>&#160;</p></div><p>As of version 5.2 the class <a  
class="external-link" 
href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/ioc/RegistryBuilder.html";>RegistryBuilder</a>
 has convenience methods to build and start a Registry. The static method <a  
class="external-link" 
href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/ioc/RegistryBuilder.html#buildAndStartupRegistry(java.lang.Class...)">RegistryBuilder.buildAndStartupRegistry(Class...)</a>
 constructs a registry, adds a number of modules to the registry and performs 
registry startup. The returned registry is ready to use.</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;">Registry registry = 
RegistryBuilder.buildAndStartupRegistry(AppModule.class, UtilModule.class);
 </pre>
 </div></div><h1 
id="StartingtheIoCRegistry-BuildingtheDefaultRegistry">Building the Default 
Registry</h1><p>The default registry is available by invoking the static method 
<a  class="external-link" 
href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/ioc/IOCUtilities.html#buildDefaultRegistry";>IOCUtilities.buildDefaultRegistry()</a>.
 This method builds a Registry using <a  
href="autoloading-modules.html">autoloading logic</a>, where modules to load 
are identified via a JAR Manifest entry.</p><p>In addition, the JVM system 
property <code>tapestry.modules</code> (if specified) is a list of additional 
module classes to load. This is often used in development, where tests may be 
executed against the local classes, not JARs, and so there is no manifest to 
read.</p><h1 id="StartingtheIoCRegistry-ShuttingdowntheRegistry">Shutting down 
the Registry</h1><p>The method <a  class="external-link" 
href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/ioc/Registry.
 html#shutdown">Registry.shutdown()</a> will shutdown the Registry. This 
immediately invalidates all service proxies. Some services may have chosen to 
register for shutdown notification (for example, to do cleanup work such as 
closing a database connection).</p><p>Once the Registry is shutdown, it may not 
be used again: it will not be possible to access services within the Registry, 
or invoke methods on services previously acquired. All you can do is release 
the Registry to the garbage collector.</p><p>&#160;</p><p></p></div>

Modified: websites/production/tapestry/content/switching-cases.html
==============================================================================
--- websites/production/tapestry/content/switching-cases.html (original)
+++ websites/production/tapestry/content/switching-cases.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">Switching Cases</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">Switching Cases</h1></div></div>
       <div class="clearer"></div>
       </div>
 

Modified: 
websites/production/tapestry/content/tapestry-inversion-of-control-faq.html
==============================================================================
--- websites/production/tapestry/content/tapestry-inversion-of-control-faq.html 
(original)
+++ websites/production/tapestry/content/tapestry-inversion-of-control-faq.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">Tapestry Inversion of Control FAQ</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">Tapestry Inversion of Control FAQ</h1></div></div>
       <div class="clearer"></div>
       </div>
 
@@ -69,55 +64,31 @@
       </div>
 
       <div id="content">
-                <div id="ConfluenceContent"><h2 
id="TapestryInversionofControlFAQ-TapestryInversionofControlContainer">Tapestry 
Inversion of Control Container</h2><p>Main article: <a  
href="ioc.html">Tapestry IoC</a></p><p>&#160;</p><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="ioc.html">IOC</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.html">IoC cookbook</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-overview.html">Tapestry IoC 
Overview</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-inversion-of-control-faq.html">Tapestry Inversion of Control 
FAQ</a>
-                
-                        
-                    </div>
-    </li></ul>
-</div><h3 
id="TapestryInversionofControlFAQ-WhydoIneedtodefineaninterfaceformyservices?Whycan'tIjustusetheclassitself?">Why
 do I need to define an interface for my services? Why can't I just use the 
class itself?</h3><p>First of all: you can do exactly this, but you lose some 
of the functionality that Tapestry's IoC container provides.</p><p>The reason 
for the split is so that Tapestry can provide functionality for your service 
around the core service implementation. It does this by creating 
<em>proxies</em>: Java classes that implement the service interface. The 
methods of the proxy will ultimately invoke the methods of your service 
implementation.</p><p>One of the primary purposes for proxies is to encapsulate 
the service's life cycle: most services are singletons that are created 
<em>just in time</em>. Just in time means only as soon as you invoke a method. 
What's going on is that the life cycle proxy (the object that gets injected 
into pages, components or other service implemen
 tations) checks on each method invocation to see if the actual service exists 
yet. If not, it instantiates and configures it (using proper locking to ensure 
thread safety), then delegates the method invocation to the service.</p><p>If 
you bind a service class (not a service interface and class), then the service 
is fully instantiated the first time it is injected, rather than at that first 
method invocation. Further, you can't use decorations or method advice on such 
a service.</p><p>The final reason for the service interface / implementation 
split is to nudge you towards always coding to an interface, which has manifest 
benefits for code structure, robustness, and testability.</p><h3 
id="TapestryInversionofControlFAQ-Myservicestartsathread;howdoIknowwhentheapplicationisshuttingdown,tostopthatthread?">My
 service starts a thread; how do I know when the application is shutting down, 
to stop that thread?</h3><p>This same concern applies to any long-lived 
resource (a thread, a database 
 connection, a JMS queue connection) that a service may hold onto. Your code 
needs to know when the application has been undeployed and shutdown. This is 
actually quite easy, by adding some post-injection logic to your implementation 
class.</p><div class="code panel pdl" style="border-width: 1px;"><div 
class="codeContent panelContent pdl">
+                <div id="ConfluenceContent"><h2 
id="TapestryInversionofControlFAQ-TapestryInversionofControlContainer">Tapestry 
Inversion of Control Container</h2><p>Main article: <a  
href="ioc.html">Tapestry IoC</a></p><p>&#160;</p><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="ioc.html">IOC</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.html">IoC cookbook</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-overview.html">Tapestry IoC Overview</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-inversion-of-control-faq.html">Tapestry Inversion of 
Control FAQ</a> 
+  </div> </li></ul></div><h3 
id="TapestryInversionofControlFAQ-WhydoIneedtodefineaninterfaceformyservices?Whycan'tIjustusetheclassitself?">Why
 do I need to define an interface for my services? Why can't I just use the 
class itself?</h3><p>First of all: you can do exactly this, but you lose some 
of the functionality that Tapestry's IoC container provides.</p><p>The reason 
for the split is so that Tapestry can provide functionality for your service 
around the core service implementation. It does this by creating 
<em>proxies</em>: Java classes that implement the service interface. The 
methods of the proxy will ultimately invoke the methods of your service 
implementation.</p><p>One of the primary purposes for proxies is to encapsulate 
the service's life cycle: most services are singletons that are created 
<em>just in time</em>. Just in time means only as soon as you invoke a method. 
What's going on is that the life cycle proxy (the object that gets injected 
into pages, components or oth
 er service implementations) checks on each method invocation to see if the 
actual service exists yet. If not, it instantiates and configures it (using 
proper locking to ensure thread safety), then delegates the method invocation 
to the service.</p><p>If you bind a service class (not a service interface and 
class), then the service is fully instantiated the first time it is injected, 
rather than at that first method invocation. Further, you can't use decorations 
or method advice on such a service.</p><p>The final reason for the service 
interface / implementation split is to nudge you towards always coding to an 
interface, which has manifest benefits for code structure, robustness, and 
testability.</p><h3 
id="TapestryInversionofControlFAQ-Myservicestartsathread;howdoIknowwhentheapplicationisshuttingdown,tostopthatthread?">My
 service starts a thread; how do I know when the application is shutting down, 
to stop that thread?</h3><p>This same concern applies to any long-lived 
resource (a 
 thread, a database connection, a JMS queue connection) that a service may hold 
onto. Your code needs to know when the application has been undeployed and 
shutdown. This is actually quite easy, by adding some post-injection logic to 
your implementation class.</p><div class="code panel pdl" style="border-width: 
1px;"><div class="codeContent panelContent pdl">
 <pre class="brush: java; gutter: true; theme: Default" 
style="font-size:12px;">public class MyServiceImpl implements MyService
 {
   private boolean shuttingDown;

Modified: websites/production/tapestry/content/tapestry-ioc-configuration.html
==============================================================================
--- websites/production/tapestry/content/tapestry-ioc-configuration.html 
(original)
+++ websites/production/tapestry/content/tapestry-ioc-configuration.html Thu 
Oct 27 17:20:26 2016
@@ -44,18 +44,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">Tapestry IoC 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">Tapestry IoC Configuration</h1></div></div>
       <div class="clearer"></div>
       </div>
 
@@ -67,73 +62,43 @@
       </div>
 
       <div id="content">
-                <div id="ConfluenceContent"><p><strong>Tapestry IOC 
Configuration</strong> is the configuration of both the IOC services provided 
by Tapestry and those you write yourself. Both are configured in the same way: 
using Java, not XML.</p><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><p>One of the key concepts in Tapestry IoC is <em>distributed 
configuration</em>. The <em>distributed</em> part refers to the fact that 
<em>any module</em> may configure a service. Distributed configuration is the 
key feature of Tapestry IoC that supports extensibility and 
modularity.</p><p>Modules configure a service by <em>contributing</em> to 
service configurations. This may seem esoteric but is really pretty simple. 
We'll explain with an example.</p><p>Let's say you've written a bunch of 
different services, each of which does something specific for a particular type 
of file (identified by the file's extension), and each implements the same 
interface, which we'll call FileServicer. And now let's say you need a central 
service that selects the one of your FileServicer implementations based on a 
given file extension. You start by providing a <a  
href="defining-tapestry-ioc-services.html">service builder method</a>:</p><div 
class="code panel pdl" style="border-width: 1px;"><di
 v class="codeContent panelContent pdl">
+                <div id="ConfluenceContent"><p><strong>Tapestry IOC 
Configuration</strong> is the configuration of both the IOC services provided 
by Tapestry and those you write yourself. Both are configured in the same way: 
using Java, not XML.</p><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><p>One of the key concepts in Tapestry IoC is 
<em>distributed configuration</em>. The <em>distributed</em> part refers to the 
fact that <em>any module</em> may configure a service. Distributed 
configuration is the key feature of Tapestry IoC that supports extensibility 
and modularity.</p><p>Modules configure a service by <em>contributing</em> to 
service configurations. This may seem esoteric but is really pretty simple. 
We'll explain with an example.</p><p>Let's say you've written a bunch of 
different services, each of which does something specific for a particular type 
of file (identified by the file's extension), and each implements the same 
interface, which we'll call FileServicer. And now let's say you need a central 
service that selects the one of your FileServicer implementations based on a 
given file extension. You start by providing a <a  
href="defining-tapestry-ioc-services.html">service builder method</a>:</p><div 
class="code panel pdl" style="bord
 er-width: 1px;"><div class="codeContent panelContent pdl">
 <pre class="brush: java; gutter: false; theme: Default" 
style="font-size:12px;">  public static FileServiceDispatcher 
buildFileServicerDispatcher(Map&lt;String,FileServicer&gt; contributions)
   {
     return new FileServiceDispatcherImpl(contributions);
@@ -163,8 +128,7 @@
 
 </p><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>If you prefer annotations over naming conventions you can 
use the @<a  class="external-link" 
href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/annotations/Contribute.html";>Contribute</a>
 annotation. As of version 5.2 this annotation that may be placed on a 
contributor method of a module instead of starting the methods name with 
"contribute". The value of the annotation is the type of the service to 
contribute into.<p>The primary reasons to use @Contribute and marker 
annotations is twofold:</p><ul><li>There is no longer a linkage between the 
contribution method name and the service id, which is much more refactoring 
safe: if you change the service interface name, or the ID of the service, your 
method will still be invoked when using @Contribute.</li></ul><ul><li>It makes 
it much easier for an <a  href="tapestry-ioc-configuration.html">override</a> 
of the service to get the configuration intended for the original 
service.</li></ul><p>The followin
 g example is an annotation-based alternative for the contribution method 
above.</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>&#160;</p></div>If you prefer annotations over naming conventions 
you can use the @<a  class="external-link" 
href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/annotations/Contribute.html";>Contribute</a>
 annotation. As of version 5.2 this annotation that may be placed on a 
contributor method of a module instead of starting the methods name with 
"contribute". The value of the annotation is the type of the service to 
contribute into.<p>The primary reasons to use @Contribute and marker 
annotations is twofold:</p><ul><li>There is no longer a linkage between the 
contribution method name and the service id, which is much more refactoring 
safe: if you change the service interface name, or the ID of the service, your 
method will still be invoked when using @Contribute.</li></ul><ul><li>It makes 
it much easier for an <a  href="tapestry-ioc-configuration.html">override</a> 
of the service to ge
 t the configuration intended for the original service.</li></ul><p>The 
following example is an annotation-based alternative for the contribution 
method above.</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;">@Contribute(FileServiceDispatcher.class)
 public static void 
arbitraryMethodName(MappedConfiguration&lt;String,FileServicer&gt; 
configuration)
 {
@@ -230,14 +194,11 @@ public static void arbitraryMethodName(M
 
 </p><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>When using <code>add()</code> without any specific constraints, a default 
constraint is added: after the previously added element. These default 
constraints are only within a single contribution method, but makes it much 
easier to set the order of several related contributions. Note that the 
contributions will be ordered relative to each other and it's possible that 
contributions by some other module or method may be interspersed between 
them.</p>
-</div><h2 id="TapestryIoCConfiguration-MappedConfigurations">Mapped 
Configurations</h2><p>As discussed in the earlier examples, mapped 
configurations are also supported. The keys passed in must be unique. When 
conflicts occur, Tapestry will log warnings (identifying the source of the 
conflict, in terms of invoked methods), and ignore the conflicting 
value.</p><p>Neither the key nor the value may be null.</p><p>For mapped 
configurations where the key type is String, a <a  class="external-link" 
href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/ioc/util/CaseInsensitiveMap.html";>CaseInsensitiveMap</a>
 will be automatically used (and passed to the service builder method), to help 
ensure that <a  href="tapestry-ioc-configuration.html">case insensitivity</a> 
is automatic and pervasive.</p><h1 
id="TapestryIoCConfiguration-InjectingClasses">Injecting Classes</h1><p>All 
three configuration interfaces have a second method, 
<code>addInstance()</code>. This method takes a cla
 ss, not an instance. The class is instantiated and contributed. If the 
constructor for the class takes dependencies, those are injected as 
well.</p><h1 id="TapestryIoCConfiguration-InjectingResources">Injecting 
Resources</h1><p>In addition to injecting services into a contributor method 
(via the @InjectService and @Inject annotations), Tapestry will key off of the 
parameter type to allow other things to be injected.</p><ul><li><a  
class="external-link" 
href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/ioc/ObjectLocator.html";>ObjectLocator</a>:
 access to other services visible to the contributing 
module</li><li>org.slf4j.Logger: the Logger for the service being contributed 
to</li></ul><p>No annotation is needed for these cases.</p><p><span 
class="confluence-anchor-link" 
id="TapestryIoCConfiguration-overrides"></span></p><h1 
id="TapestryIoCConfiguration-ConfigurationOverrides">Configuration 
Overrides</h1><p>
+<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid 
#D8E4F1;"><p>When using <code>add()</code> without any specific constraints, a 
default constraint is added: after the previously added element. These default 
constraints are only within a single contribution method, but makes it much 
easier to set the order of several related contributions. Note that the 
contributions will be ordered relative to each other and it's possible that 
contributions by some other module or method may be interspersed between 
them.</p></div><h2 id="TapestryIoCConfiguration-MappedConfigurations">Mapped 
Configurations</h2><p>As discussed in the earlier examples, mapped 
configurations are also supported. The keys passed in must be unique. When 
conflicts occur, Tapestry will log warnings (identifying the source of the 
conflict, in terms of invoked methods), and ignore the conflicting 
value.</p><p>Neither the key nor the value may be null.</p><p>For mapped 
configurations where the key type is St
 ring, a <a  class="external-link" 
href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/ioc/util/CaseInsensitiveMap.html";>CaseInsensitiveMap</a>
 will be automatically used (and passed to the service builder method), to help 
ensure that <a  href="tapestry-ioc-configuration.html">case insensitivity</a> 
is automatic and pervasive.</p><h1 
id="TapestryIoCConfiguration-InjectingClasses">Injecting Classes</h1><p>All 
three configuration interfaces have a second method, 
<code>addInstance()</code>. This method takes a class, not an instance. The 
class is instantiated and contributed. If the constructor for the class takes 
dependencies, those are injected as well.</p><h1 
id="TapestryIoCConfiguration-InjectingResources">Injecting Resources</h1><p>In 
addition to injecting services into a contributor method (via the 
@InjectService and @Inject annotations), Tapestry will key off of the parameter 
type to allow other things to be injected.</p><ul><li><a  class="external-link" 
href="h
 
ttp://tapestry.apache.org/current/apidocs/org/apache/tapestry5/ioc/ObjectLocator.html">ObjectLocator</a>:
 access to other services visible to the contributing 
module</li><li>org.slf4j.Logger: the Logger for the service being contributed 
to</li></ul><p>No annotation is needed for these cases.</p><p><span 
class="confluence-anchor-link" 
id="TapestryIoCConfiguration-overrides"></span></p><h1 
id="TapestryIoCConfiguration-ConfigurationOverrides">Configuration 
Overrides</h1><p>
 
 </p><div class="confluence-information-macro 
confluence-information-macro-information"><p class="title">Added in 
5.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>The OrderedConfiguration and MappedConfiguration interfaces 
now support overrides. An override is a replacement for a normally contributed 
object. An override <em>must</em> match a contributed object, and each 
contributed object may be overridden at most once.<p>The new object replaces 
the original object; alternately, you may override the original object with 
null.</p><p>This allows you to fine tune configuration values that are 
contributed from modules that you are using, rather than just those that you 
write yourself. It is powerful and a bit dangerous.</p><p>In Tapestry 5.0, 
services that wanted to support this kind of override behavior had to implement 
it on an ad-hoc basis, such as ApplicationDefaults overriding FactoryDefaults. 
In many cases, that is still useful.</p><p>&#160;</p><p></p></div>
+<div style="border-right: 20px solid #D8E4F1;border-left: 20px solid 
#D8E4F1;"><p>&#160;</p></div>The OrderedConfiguration and MappedConfiguration 
interfaces now support overrides. An override is a replacement for a normally 
contributed object. An override <em>must</em> match a contributed object, and 
each contributed object may be overridden at most once.<p>The new object 
replaces the original object; alternately, you may override the original object 
with null.</p><p>This allows you to fine tune configuration values that are 
contributed from modules that you are using, rather than just those that you 
write yourself. It is powerful and a bit dangerous.</p><p>In Tapestry 5.0, 
services that wanted to support this kind of override behavior had to implement 
it on an ad-hoc basis, such as ApplicationDefaults overriding FactoryDefaults. 
In many cases, that is still useful.</p><p>&#160;</p><p></p></div>
       </div>
 
       <div class="clearer"></div>

Modified: websites/production/tapestry/content/tapestry-ioc-decorators.html
==============================================================================
--- websites/production/tapestry/content/tapestry-ioc-decorators.html (original)
+++ websites/production/tapestry/content/tapestry-ioc-decorators.html Thu Oct 
27 17:20:26 2016
@@ -44,18 +44,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">Tapestry IoC Decorators</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">Tapestry IoC Decorators</h1></div></div>
       <div class="clearer"></div>
       </div>
 
@@ -127,8 +122,7 @@ public class MyAppModule
 
 </p><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>Starting from version 5.2, Tapestry supports 
annotation-driven decorator methods. If the <a  class="external-link" 
href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/ioc/annotations/Decorate.html";>@Decorate</a>
 annotation is present, the decorator method can be arbitrary named, as shown 
in the following example.<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>&#160;</p></div>Starting from version 5.2, Tapestry supports 
annotation-driven decorator methods. If the <a  class="external-link" 
href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/ioc/annotations/Decorate.html";>@Decorate</a>
 annotation is present, the decorator method can be arbitrary named, as shown 
in the following example.<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;">  @Decorate
   @Match("*DAO")
   public static &lt;T&gt; T byServiceId(Class&lt;T&gt; serviceInterface, T 
delegate,

Modified: websites/production/tapestry/content/templating-and-markup-faq.html
==============================================================================
--- websites/production/tapestry/content/templating-and-markup-faq.html 
(original)
+++ websites/production/tapestry/content/templating-and-markup-faq.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">Templating and Markup FAQ</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">Templating and Markup FAQ</h1></div></div>
       <div class="clearer"></div>
       </div>
 
@@ -113,7 +108,7 @@
     return isUrgent() ? "urgent" : null;
   }
 </pre>
-</div></div><p>When an informal parameter is bound to null, then the attribute 
is not written out at all.</p><p>You can verify which components support 
informal parameters by checking the component reference, or looking for the @<a 
 class="external-link" 
href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/annotations/SupportsInformalParameters.html";>SupportsInformalParameters</a>
 annotation in the components' source 
file.</p><p>&#160;</p><p>&#160;</p><p>&#160;</p><p>&#160;</p><p>&#160;</p><p>&#160;</p><p></p><p></p><p><table
 class="Footnotes" style="width: 100%; border:none;" cellspacing="0" 
cellpadding="0" summary="This table contains one or more notes for references 
made elsewhere on the page."><caption 
class="accessibility">Footnotes</caption><thead class="accessibility"><tr 
class="accessibility"><th colspan="1" rowspan="1" class="accessibility" 
id="footnote-th1">Reference</th><th colspan="1" rowspan="1" 
class="accessibility" id="footnote-th2">Notes</th></tr></t
 
head><tbody></tbody></table></p><p></p><p></p><p>&#160;</p><p>&#160;</p><p>&#160;</p><p>&#160;</p></div>
+</div></div><p>When an informal parameter is bound to null, then the attribute 
is not written out at all.</p><p>You can verify which components support 
informal parameters by checking the component reference, or looking for the @<a 
 class="external-link" 
href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/annotations/SupportsInformalParameters.html";>SupportsInformalParameters</a>
 annotation in the components' source 
file.</p><p>&#160;</p><p>&#160;</p><p>&#160;</p><p>&#160;</p><p>&#160;</p><p>&#160;</p><p></p><p></p><p></p><p><table
 class="Footnotes" style="width: 100%; border:none;" cellspacing="0" 
cellpadding="0" summary="This table contains one or more notes for references 
made elsewhere on the page."><caption 
class="accessibility">Footnotes</caption><thead class="accessibility"><tr 
class="accessibility"><th colspan="1" rowspan="1" class="accessibility" 
id="footnote-th1">Reference</th><th colspan="1" rowspan="1" 
class="accessibility" id="footnote-th2">Notes</th><
 
/tr></thead><tbody></tbody></table></p><p></p><p></p><p></p><p>&#160;</p><p>&#160;</p><p>&#160;</p><p>&#160;</p></div>
       </div>
 
       <div class="clearer"></div>

Modified: websites/production/tapestry/content/test-page-2.html
==============================================================================
--- websites/production/tapestry/content/test-page-2.html (original)
+++ websites/production/tapestry/content/test-page-2.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">Test Page 2</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">Test Page 2</h1></div></div>
       <div class="clearer"></div>
       </div>
 
@@ -71,11 +66,11 @@
       <div id="content">
                 <div id="ConfluenceContent"><p>
 <style type="text/css">/*<![CDATA[*/
-div.rbtoc1463689185242 {padding: 0px;}
-div.rbtoc1463689185242 ul {list-style: disc;margin-left: 0px;}
-div.rbtoc1463689185242 li {margin-left: 0px;padding-left: 0px;}
+div.rbtoc1477588787905 {padding: 0px;}
+div.rbtoc1477588787905 ul {list-style: disc;margin-left: 0px;}
+div.rbtoc1477588787905 li {margin-left: 0px;padding-left: 0px;}
 
-/*]]>*/</style></p><div class="toc-macro rbtoc1463689185242">
+/*]]>*/</style></p><div class="toc-macro rbtoc1477588787905">
 <ul class="toc-indentation"><li><a  href="#TestPage2-Generalquestions">General 
questions</a>
 <ul class="toc-indentation"><li><a  
href="#TestPage2-HowdoIgetstartedwithTapestry?">How do I get started with 
Tapestry?</a></li><li><a  
href="#TestPage2-WhydoesTapestryusePrototype?WhynotinsertfavoriteJavaScriptlibraryhere?">Why
 does Tapestry use Prototype? Why not insert favorite JavaScript library 
here?</a></li><li><a  
href="#TestPage2-WhydoesTapestryhaveitsownInversionofControlContainer?WhynotSpringorGuice?">Why
 does Tapestry have its own Inversion of Control Container? Why not Spring or 
Guice?</a></li><li><a  
href="#TestPage2-HowdoIupgradefromTapestry4toTapestry5?">How do I upgrade from 
Tapestry 4 to Tapestry 5?</a></li><li><a  
href="#TestPage2-WhyaretherebothRequestandHttpServletRequest?">Why are there 
both Request and HttpServletRequest?</a></li></ul>
 </li></ul>
@@ -122,7 +117,7 @@ div.rbtoc1463689185242 li {margin-left:
 <p>However, the stronger reason for Request (and the related interfaces 
Response and Session) is to enable the support for Portlets at some point in 
the future. By writing code in terms of Tapestry's Request, and not 
HttpServletRequest, you can be assured that the same code will operate in both 
Servlet Tapestry and Portlet Tapestry.</p>
 
 <hr>
-<p></p><p></p><p></p><p></p><p></p><p></p><p></p><p></p><p></p><p></p><p></p><p><table
 class="Footnotes" style="width: 100%; border:none;" cellspacing="0" 
cellpadding="0" summary="This table contains one or more notes for references 
made elsewhere on the page."><caption 
class="accessibility">Footnotes</caption><thead class="accessibility"><tr 
class="accessibility"><th colspan="1" rowspan="1" class="accessibility" 
id="footnote-th1">Reference</th><th colspan="1" rowspan="1" 
class="accessibility" 
id="footnote-th2">Notes</th></tr></thead><tbody></tbody></table></p><p></p><p></p><p></p><p></p><p></p><p></p><p></p><p></p><p></p><p></p><p></p></div>
+<p></p><p></p><p></p><p></p><p></p><p></p><p></p><p></p><p></p><p></p><p></p><p></p><p><table
 class="Footnotes" style="width: 100%; border:none;" cellspacing="0" 
cellpadding="0" summary="This table contains one or more notes for references 
made elsewhere on the page."><caption 
class="accessibility">Footnotes</caption><thead class="accessibility"><tr 
class="accessibility"><th colspan="1" rowspan="1" class="accessibility" 
id="footnote-th1">Reference</th><th colspan="1" rowspan="1" 
class="accessibility" 
id="footnote-th2">Notes</th></tr></thead><tbody></tbody></table></p><p></p><p></p><p></p><p></p><p></p><p></p><p></p><p></p><p></p><p></p><p></p><p></p></div>
       </div>
 
       <div class="clearer"></div>

Modified: websites/production/tapestry/content/test-page.html
==============================================================================
--- websites/production/tapestry/content/test-page.html (original)
+++ websites/production/tapestry/content/test-page.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">Test Page</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">Test Page</h1></div></div>
       <div class="clearer"></div>
       </div>
 

Modified: websites/production/tapestry/content/uploading-files.html
==============================================================================
--- websites/production/tapestry/content/uploading-files.html (original)
+++ websites/production/tapestry/content/uploading-files.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">Uploading Files</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">Uploading Files</h1></div></div>
       <div class="clearer"></div>
       </div>
 


Reply via email to