You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tapestry.apache.org by bu...@apache.org on 2015/06/27 23:21:05 UTC

svn commit: r956226 [25/34] - in /websites/production/tapestry/content: ./ 2010/10/11/ 2010/10/31/ 2010/11/18/ 2010/11/19/ 2010/12/16/ 2010/12/17/ 2011/01/10/ 2011/03/29/ 2011/06/13/ 2011/06/24/ 2011/06/29/ 2011/07/29/ 2011/08/16/ 2011/08/27/ 2011/10/3...

Modified: websites/production/tapestry/content/news.html
==============================================================================
--- websites/production/tapestry/content/news.html (original)
+++ websites/production/tapestry/content/news.html Sat Jun 27 21:21:02 2015
@@ -45,7 +45,7 @@
   <input type="submit" value="Search">
 </form>
 
-</div><div class="emblem" style="float:left"><p><a shape="rect" href="index.html"><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"></a></p></div><div class="title" style="float:left; margin: 0 0 0 3em"><h1 id="SmallBanner-PageTitle">News</h1></div></div>
+</div><div class="emblem" style="float:left"><p><a shape="rect" 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">News</h1></div></div>
 <div class="clearer"></div>
 </div>
 
@@ -57,7 +57,7 @@
   </div>
 
 <div id="content">
-<div id="ConfluenceContent"><p>&#160;</p><p>&#160;</p><p>&#160;</p><p>&#160;</p><p>&#160;</p><p>&#160;</p><div id="bar"><p><br clear="none"> <strong>We think you will love Tapestry!</strong> Give us 20 minutes and <strong><a shape="rect" href="tapestry-tutorial.html">follow our tutorial</a></strong>.</p></div><p>&#160;</p><p>&#160;</p><div><p>&#160;</p><h2 id="News-News">News <a shape="rect" href="https://cwiki.apache.org/confluence/createrssfeed.action?types=blogpost&amp;spaces=TAPESTRY&amp;title=Apache+Tapestry+News+RSS+Feed&amp;labelString%3D&amp;sort=created&amp;maxResults=10&amp;timeSpan=12&amp;confirm=Create&amp;showContent=true&amp;showDiff=false"><img class="confluence-embedded-image" src="news.data/Feed-icon.gif" data-image-src="/confluence/download/attachments/24185588/Feed-icon.gif?version=1&amp;modificationDate=1289228682000&amp;api=v2"></a></h2><p>    
+<div id="ConfluenceContent"><p>&#160;</p><p>&#160;</p><p>&#160;</p><p>&#160;</p><p>&#160;</p><p>&#160;</p><div id="bar"><p><br clear="none"> <strong>We think you will love Tapestry!</strong> Give us 20 minutes and <strong><a shape="rect" href="tapestry-tutorial.html">follow our tutorial</a></strong>.</p></div><p>&#160;</p><p>&#160;</p><div><p>&#160;</p><h2 id="News-News">News <a shape="rect" href="https://cwiki.apache.org/confluence/createrssfeed.action?types=blogpost&amp;spaces=TAPESTRY&amp;title=Apache+Tapestry+News+RSS+Feed&amp;labelString%3D&amp;sort=created&amp;maxResults=10&amp;timeSpan=12&amp;confirm=Create&amp;showContent=true&amp;showDiff=false"><span class="confluence-embedded-file-wrapper"><img class="confluence-embedded-image" src="news.data/Feed-icon.gif" data-image-src="/confluence/download/attachments/24185588/Feed-icon.gif?version=1&amp;modificationDate=1289228682000&amp;api=v2" data-unresolved-comment-count="0" data-linked-resource-id="24346803" data-linked-resource
 -version="1" data-linked-resource-type="attachment" data-linked-resource-default-alias="Feed-icon.gif" data-base-url="https://cwiki.apache.org/confluence" data-linked-resource-content-type="image/gif" data-linked-resource-container-id="24185588" data-linked-resource-container-version="37"></span></a></h2><p>    
 
     
         
@@ -69,7 +69,7 @@
            </a>            </span>
             <span class="blogHeading">
                 <a shape="rect" class="blogHeading" href="2015/01/19/tapestry-54-beta-26.html">Tapestry 5.4-beta-26</a>
-                </span><div class="page-metadata not-personal"><a shape="rect" class="url fn confluence-userlink" href="    /confluence/display/~hlship ">Howard M. Lewis Ship</a> posted on Jan 19, 2015</div>
+                </span><div class="page-metadata not-personal">    <a shape="rect" class="url fn confluence-userlink" href="    /confluence/display/~hlship ">Howard M. Lewis Ship</a> posted on Jan 19, 2015</div>
             
         </div>
     
@@ -89,7 +89,7 @@
            </a>            </span>
             <span class="blogHeading">
                 <a shape="rect" class="blogHeading" href="2014/12/11/tapestry-538.html">Tapestry 5.3.8</a>
-                </span><div class="page-metadata not-personal"><a shape="rect" class="url fn confluence-userlink" href="    /confluence/display/~kaosko ">Kalle Korhonen</a> posted on Dec 11, 2014</div>
+                </span><div class="page-metadata not-personal">    <a shape="rect" class="url fn confluence-userlink" href="    /confluence/display/~kaosko ">Kalle Korhonen</a> posted on Dec 11, 2014</div>
             
         </div>
     
@@ -119,7 +119,7 @@ Tapestry 5.3.8 is the latest maintenance
            </a>            </span>
             <span class="blogHeading">
                 <a shape="rect" class="blogHeading" href="2014/09/25/tapestry-54-beta-22.html">Tapestry 5.4-beta-22</a>
-                </span><div class="page-metadata not-personal"><a shape="rect" class="url fn confluence-userlink" href="    /confluence/display/~hlship ">Howard M. Lewis Ship</a> posted on Sep 25, 2014</div>
+                </span><div class="page-metadata not-personal">    <a shape="rect" class="url fn confluence-userlink" href="    /confluence/display/~hlship ">Howard M. Lewis Ship</a> posted on Sep 25, 2014</div>
             
         </div>
     
@@ -143,7 +143,7 @@ This release is available from the Maven
            </a>            </span>
             <span class="blogHeading">
                 <a shape="rect" class="blogHeading" href="2014/05/29/tapestry-54-beta-6.html">Tapestry 5.4-beta-6</a>
-                </span><div class="page-metadata not-personal"><a shape="rect" class="url fn confluence-userlink" href="    /confluence/display/~hlship ">Howard M. Lewis Ship</a> posted on May 29, 2014</div>
+                </span><div class="page-metadata not-personal">    <a shape="rect" class="url fn confluence-userlink" href="    /confluence/display/~hlship ">Howard M. Lewis Ship</a> posted on May 29, 2014</div>
             
         </div>
     
@@ -168,7 +168,7 @@ While not an actual release candidate,&#
            </a>            </span>
             <span class="blogHeading">
                 <a shape="rect" class="blogHeading" href="2014/03/07/tapestry-54-beta-3-preview-now-available.html">Tapestry 5.4-beta-3 preview now available</a>
-                </span><div class="page-metadata not-personal"><a shape="rect" class="url fn confluence-userlink" href="    /confluence/display/~bobharner ">Bob Harner</a> posted on Mar 07, 2014</div>
+                </span><div class="page-metadata not-personal">    <a shape="rect" class="url fn confluence-userlink" href="    /confluence/display/~bobharner ">Bob Harner</a> posted on Mar 07, 2014</div>
             
         </div>
     
@@ -190,7 +190,7 @@ If you're using Maven (or Gradle or Ivy,
            </a>            </span>
             <span class="blogHeading">
                 <a shape="rect" class="blogHeading" href="2014/02/23/tapestry-54-beta-3-preview-release-vote-underway.html">Tapestry 5.4-beta-3 preview release vote underway</a>
-                </span><div class="page-metadata not-personal"><a shape="rect" class="url fn confluence-userlink" href="    /confluence/display/~bobharner ">Bob Harner</a> posted on Feb 23, 2014</div>
+                </span><div class="page-metadata not-personal">    <a shape="rect" class="url fn confluence-userlink" href="    /confluence/display/~bobharner ">Bob Harner</a> posted on Feb 23, 2014</div>
             
         </div>
     
@@ -210,7 +210,7 @@ If you're using Maven (or Gradle or Ivy,
            </a>            </span>
             <span class="blogHeading">
                 <a shape="rect" class="blogHeading" href="2013/04/29/announcing-tapestry-537.html">Announcing Tapestry 5.3.7</a>
-                </span><div class="page-metadata not-personal"><a shape="rect" class="url fn confluence-userlink" href="    /confluence/display/~mlusetti ">Massimo Lusetti</a> posted on Apr 29, 2013</div>
+                </span><div class="page-metadata not-personal">    <a shape="rect" class="url fn confluence-userlink" href="    /confluence/display/~mlusetti ">Massimo Lusetti</a> posted on Apr 29, 2013</div>
             
         </div>
     
@@ -230,7 +230,7 @@ If you're using Maven (or Gradle or Ivy,
            </a>            </span>
             <span class="blogHeading">
                 <a shape="rect" class="blogHeading" href="2013/02/04/new-website-infrastructure.html">New Website Infrastructure</a>
-                </span><div class="page-metadata not-personal"><a shape="rect" class="url fn confluence-userlink" href="    /confluence/display/~uli ">Ulrich St&#228;rk</a> posted on Feb 04, 2013</div>
+                </span><div class="page-metadata not-personal">    <a shape="rect" class="url fn confluence-userlink" href="    /confluence/display/~uli ">Ulrich St&#228;rk</a> posted on Feb 04, 2013</div>
             
         </div>
     
@@ -250,7 +250,7 @@ If you're using Maven (or Gradle or Ivy,
            </a>            </span>
             <span class="blogHeading">
                 <a shape="rect" class="blogHeading" href="2012/10/12/announcing-tapestry-536.html">Announcing Tapestry 5.3.6</a>
-                </span><div class="page-metadata not-personal"><a shape="rect" class="url fn confluence-userlink" href="    /confluence/display/~hlship ">Howard M. Lewis Ship</a> posted on Oct 12, 2012</div>
+                </span><div class="page-metadata not-personal">    <a shape="rect" class="url fn confluence-userlink" href="    /confluence/display/~hlship ">Howard M. Lewis Ship</a> posted on Oct 12, 2012</div>
             
         </div>
     
@@ -270,7 +270,7 @@ If you're using Maven (or Gradle or Ivy,
            </a>            </span>
             <span class="blogHeading">
                 <a shape="rect" class="blogHeading" href="2012/08/30/announcing-tapestry-535.html">Announcing Tapestry 5.3.5</a>
-                </span><div class="page-metadata not-personal"><a shape="rect" class="url fn confluence-userlink" href="    /confluence/display/~hlship ">Howard M. Lewis Ship</a> posted on Aug 30, 2012</div>
+                </span><div class="page-metadata not-personal">    <a shape="rect" class="url fn confluence-userlink" href="    /confluence/display/~hlship ">Howard M. Lewis Ship</a> posted on Aug 30, 2012</div>
             
         </div>
     
@@ -290,7 +290,7 @@ If you're using Maven (or Gradle or Ivy,
            </a>            </span>
             <span class="blogHeading">
                 <a shape="rect" class="blogHeading" href="2012/07/16/announcing-tapestry-534.html">Announcing Tapestry 5.3.4</a>
-                </span><div class="page-metadata not-personal"><a shape="rect" class="url fn confluence-userlink" href="    /confluence/display/~hlship ">Howard M. Lewis Ship</a> posted on Jul 16, 2012</div>
+                </span><div class="page-metadata not-personal">    <a shape="rect" class="url fn confluence-userlink" href="    /confluence/display/~hlship ">Howard M. Lewis Ship</a> posted on Jul 16, 2012</div>
             
         </div>
     
@@ -310,7 +310,7 @@ If you're using Maven (or Gradle or Ivy,
            </a>            </span>
             <span class="blogHeading">
                 <a shape="rect" class="blogHeading" href="2012/04/24/announcing-tapestry-533.html">Announcing Tapestry 5.3.3</a>
-                </span><div class="page-metadata not-personal"><a shape="rect" class="url fn confluence-userlink" href="    /confluence/display/~hlship ">Howard M. Lewis Ship</a> posted on Apr 24, 2012</div>
+                </span><div class="page-metadata not-personal">    <a shape="rect" class="url fn confluence-userlink" href="    /confluence/display/~hlship ">Howard M. Lewis Ship</a> posted on Apr 24, 2012</div>
             
         </div>
     
@@ -330,12 +330,12 @@ If you're using Maven (or Gradle or Ivy,
            </a>            </span>
             <span class="blogHeading">
                 <a shape="rect" class="blogHeading" href="2012/02/08/tapestry-on-heroku.html">Tapestry on Heroku</a>
-                </span><div class="page-metadata not-personal"><a shape="rect" class="url fn confluence-userlink" href="    /confluence/display/~hlship ">Howard M. Lewis Ship</a> posted on Feb 08, 2012</div>
+                </span><div class="page-metadata not-personal">    <a shape="rect" class="url fn confluence-userlink" href="    /confluence/display/~hlship ">Howard M. Lewis Ship</a> posted on Feb 08, 2012</div>
             
         </div>
     
     <div class="wiki-content">
-        James Ward has published a short article about how to deploy Tapestry applications on the Heroku cloud computing service: Deploy Containerless Tapestry Apps on Heroku .
+        James Ward has published a short article about how to deploy Tapestry applications on the Heroku cloud computing service: Deploy Containerless Tapestry Apps on Heroku  http://www.jamesward.com/2012/02/08/deploy-containerless-tapestry-apps-on-heroku.
     </div>
     
         
@@ -350,7 +350,7 @@ If you're using Maven (or Gradle or Ivy,
            </a>            </span>
             <span class="blogHeading">
                 <a shape="rect" class="blogHeading" href="2012/02/07/announcing-tapestry-532.html">Announcing Tapestry 5.3.2</a>
-                </span><div class="page-metadata not-personal"><a shape="rect" class="url fn confluence-userlink" href="    /confluence/display/~mlusetti ">Massimo Lusetti</a> posted on Feb 07, 2012</div>
+                </span><div class="page-metadata not-personal">    <a shape="rect" class="url fn confluence-userlink" href="    /confluence/display/~mlusetti ">Massimo Lusetti</a> posted on Feb 07, 2012</div>
             
         </div>
     
@@ -370,7 +370,7 @@ If you're using Maven (or Gradle or Ivy,
            </a>            </span>
             <span class="blogHeading">
                 <a shape="rect" class="blogHeading" href="2011/12/21/announcing-tapestry-531.html">Announcing Tapestry 5.3.1</a>
-                </span><div class="page-metadata not-personal"><a shape="rect" class="url fn confluence-userlink" href="    /confluence/display/~mlusetti ">Massimo Lusetti</a> posted on Dec 21, 2011</div>
+                </span><div class="page-metadata not-personal">    <a shape="rect" class="url fn confluence-userlink" href="    /confluence/display/~mlusetti ">Massimo Lusetti</a> posted on Dec 21, 2011</div>
             
         </div>
     
@@ -390,7 +390,7 @@ If you're using Maven (or Gradle or Ivy,
            </a>            </span>
             <span class="blogHeading">
                 <a shape="rect" class="blogHeading" href="2011/11/23/announcing-tapestry-53.html">Announcing Tapestry 5.3</a>
-                </span><div class="page-metadata not-personal"><a shape="rect" class="url fn confluence-userlink" href="    /confluence/display/~hlship ">Howard M. Lewis Ship</a> posted on Nov 23, 2011</div>
+                </span><div class="page-metadata not-personal">    <a shape="rect" class="url fn confluence-userlink" href="    /confluence/display/~hlship ">Howard M. Lewis Ship</a> posted on Nov 23, 2011</div>
             
         </div>
     
@@ -410,7 +410,7 @@ If you're using Maven (or Gradle or Ivy,
            </a>            </span>
             <span class="blogHeading">
                 <a shape="rect" class="blogHeading" href="2011/10/31/tapestry-53-release-candidate.html">Tapestry 5.3 Release Candidate</a>
-                </span><div class="page-metadata not-personal"><a shape="rect" class="url fn confluence-userlink" href="    /confluence/display/~hlship ">Howard M. Lewis Ship</a> posted on Oct 31, 2011</div>
+                </span><div class="page-metadata not-personal">    <a shape="rect" class="url fn confluence-userlink" href="    /confluence/display/~hlship ">Howard M. Lewis Ship</a> posted on Oct 31, 2011</div>
             
         </div>
     
@@ -430,12 +430,12 @@ If you're using Maven (or Gradle or Ivy,
            </a>            </span>
             <span class="blogHeading">
                 <a shape="rect" class="blogHeading" href="/confluence/pages/viewpage.action?pageId=27828095">Tapestry Feedback!</a>
-                </span><div class="page-metadata not-personal"><a shape="rect" class="url fn confluence-userlink" href="    /confluence/display/~hlship ">Howard M. Lewis Ship</a> posted on Oct 03, 2011</div>
+                </span><div class="page-metadata not-personal">    <a shape="rect" class="url fn confluence-userlink" href="    /confluence/display/~hlship ">Howard M. Lewis Ship</a> posted on Oct 03, 2011</div>
             
         </div>
     
     <div class="wiki-content">
-        I've created a very long, detailed discussion of the importance of Feedback as a cornerstone of Tapestry. It's available from my personal blog, howardlewisship.com.
+        I've created a very long, detailed discussion of the importance of Feedback as a cornerstone of Tapestry. It's available from my personal blog, howardlewisship.com http://tapestryjava.blogspot.com/2011/10/tapestry-feedback.html.
     </div>
     
         
@@ -450,7 +450,7 @@ If you're using Maven (or Gradle or Ivy,
            </a>            </span>
             <span class="blogHeading">
                 <a shape="rect" class="blogHeading" href="2011/08/27/tapestry-53-beta-preview.html">Tapestry 5.3 Beta Preview</a>
-                </span><div class="page-metadata not-personal"><a shape="rect" class="url fn confluence-userlink" href="    /confluence/display/~hlship ">Howard M. Lewis Ship</a> posted on Aug 27, 2011</div>
+                </span><div class="page-metadata not-personal">    <a shape="rect" class="url fn confluence-userlink" href="    /confluence/display/~hlship ">Howard M. Lewis Ship</a> posted on Aug 27, 2011</div>
             
         </div>
     
@@ -470,7 +470,7 @@ If you're using Maven (or Gradle or Ivy,
            </a>            </span>
             <span class="blogHeading">
                 <a shape="rect" class="blogHeading" href="2011/08/16/tapestry-53-exception-reporting.html">Tapestry 5.3 Exception Reporting</a>
-                </span><div class="page-metadata not-personal"><a shape="rect" class="url fn confluence-userlink" href="    /confluence/display/~hlship ">Howard M. Lewis Ship</a> posted on Aug 16, 2011</div>
+                </span><div class="page-metadata not-personal">    <a shape="rect" class="url fn confluence-userlink" href="    /confluence/display/~hlship ">Howard M. Lewis Ship</a> posted on Aug 16, 2011</div>
             
         </div>
     
@@ -490,7 +490,7 @@ If you're using Maven (or Gradle or Ivy,
            </a>            </span>
             <span class="blogHeading">
                 <a shape="rect" class="blogHeading" href="2011/07/29/tapestry-53-screencast.html">Tapestry 5.3 screencast</a>
-                </span><div class="page-metadata not-personal"><a shape="rect" class="url fn confluence-userlink" href="    /confluence/display/~hlship ">Howard M. Lewis Ship</a> posted on Jul 29, 2011</div>
+                </span><div class="page-metadata not-personal">    <a shape="rect" class="url fn confluence-userlink" href="    /confluence/display/~hlship ">Howard M. Lewis Ship</a> posted on Jul 29, 2011</div>
             
         </div>
     
@@ -510,7 +510,7 @@ If you're using Maven (or Gradle or Ivy,
            </a>            </span>
             <span class="blogHeading">
                 <a shape="rect" class="blogHeading" href="2011/06/29/526-maintenance-release.html">5.2.6 Maintenance Release</a>
-                </span><div class="page-metadata not-personal"><a shape="rect" class="url fn confluence-userlink" href="    /confluence/display/~hlship ">Howard M. Lewis Ship</a> posted on Jun 29, 2011</div>
+                </span><div class="page-metadata not-personal">    <a shape="rect" class="url fn confluence-userlink" href="    /confluence/display/~hlship ">Howard M. Lewis Ship</a> posted on Jun 29, 2011</div>
             
         </div>
     
@@ -530,7 +530,7 @@ If you're using Maven (or Gradle or Ivy,
            </a>            </span>
             <span class="blogHeading">
                 <a shape="rect" class="blogHeading" href="2011/06/24/first-alpha-of-53-now-available.html">First alpha of 5.3 now available</a>
-                </span><div class="page-metadata not-personal"><a shape="rect" class="url fn confluence-userlink" href="    /confluence/display/~hlship ">Howard M. Lewis Ship</a> posted on Jun 24, 2011</div>
+                </span><div class="page-metadata not-personal">    <a shape="rect" class="url fn confluence-userlink" href="    /confluence/display/~hlship ">Howard M. Lewis Ship</a> posted on Jun 24, 2011</div>
             
         </div>
     
@@ -550,7 +550,7 @@ If you're using Maven (or Gradle or Ivy,
            </a>            </span>
             <span class="blogHeading">
                 <a shape="rect" class="blogHeading" href="2011/06/13/tapestrys-performance-tested.html">Tapestry's Performance Tested</a>
-                </span><div class="page-metadata not-personal"><a shape="rect" class="url fn confluence-userlink" href="    /confluence/display/~hlship ">Howard M. Lewis Ship</a> posted on Jun 13, 2011</div>
+                </span><div class="page-metadata not-personal">    <a shape="rect" class="url fn confluence-userlink" href="    /confluence/display/~hlship ">Howard M. Lewis Ship</a> posted on Jun 13, 2011</div>
             
         </div>
     
@@ -570,12 +570,12 @@ If you're using Maven (or Gradle or Ivy,
            </a>            </span>
             <span class="blogHeading">
                 <a shape="rect" class="blogHeading" href="2011/04/20/tapestry-magic.html">Tapestry Magic</a>
-                </span><div class="page-metadata not-personal"><a shape="rect" class="url fn confluence-userlink" href="    /confluence/display/~hlship ">Howard M. Lewis Ship</a> posted on Apr 20, 2011</div>
+                </span><div class="page-metadata not-personal">    <a shape="rect" class="url fn confluence-userlink" href="    /confluence/display/~hlship ">Howard M. Lewis Ship</a> posted on Apr 20, 2011</div>
             
         </div>
     
     <div class="wiki-content">
-        The new blog Java Magic has some detailed postings about Tapestry's Aspect Oriented Programming features. This is a blog to  track if you are interested in some of the more advanced capabilities of Tapestry.
+        The new blog Java Magic http://tawus.wordpress.com/ has some detailed postings about Tapestry's Aspect Oriented Programming features. This is a blog to  track if you are interested in some of the more advanced capabilities of Tapestry.
     </div>
     
         

Modified: websites/production/tapestry/content/object-providers.html
==============================================================================
--- websites/production/tapestry/content/object-providers.html (original)
+++ websites/production/tapestry/content/object-providers.html Sat Jun 27 21:21:02 2015
@@ -27,16 +27,6 @@
   </title>
   <link type="text/css" rel="stylesheet" href="/resources/space.css">
 
-    <link href='/resources/highlighter/styles/shCoreCXF.css' rel='stylesheet' type='text/css' />
-  <link href='/resources/highlighter/styles/shThemeCXF.css' rel='stylesheet' type='text/css' />
-  <script src='/resources/highlighter/scripts/shCore.js' type='text/javascript'></script>
-  <script src='/resources/highlighter/scripts/shBrushJava.js' type='text/javascript'></script>
-  <script src='/resources/highlighter/scripts/shBrushXml.js' type='text/javascript'></script>
-  <script src='/resources/highlighter/scripts/shBrushPlain.js' type='text/javascript'></script>
-  <script type="text/javascript">
-  SyntaxHighlighter.defaults['toolbar'] = false;
-  SyntaxHighlighter.all();
-  </script>
 
   <link href="/styles/style.css" rel="stylesheet" type="text/css"/>
 
@@ -55,7 +45,7 @@
   <input type="submit" value="Search">
 </form>
 
-</div><div class="emblem" style="float:left"><p><a shape="rect" href="index.html"><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"></a></p></div><div class="title" style="float:left; margin: 0 0 0 3em"><h1 id="SmallBanner-PageTitle">Object Providers</h1></div></div>
+</div><div class="emblem" style="float:left"><p><a shape="rect" 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">Object Providers</h1></div></div>
 <div class="clearer"></div>
 </div>
 
@@ -96,7 +86,7 @@ Usually, the @Inject annotation is suppl
 <p>The Value annotation allows a literal value to be injected. When combined with <a shape="rect" href="symbols.html">symbols</a>, they represent a way for parts of the overall service network to be spot-configured. For example:</p>
 
 <div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
+<script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[
   public MyService build(@Value(&quot;${max-seconds}&quot;) long maxSeconds)
   {
     return new MyServiceImpl(maxSeconds);
@@ -112,7 +102,7 @@ Usually, the @Inject annotation is suppl
 <p>This is closely related to the @Value annotation approach, except that the annotation directly specifies a symbol name.</p>
 
 <div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
+<script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[
   public MyService build(@Symbol(&quot;max-seconds&quot;) long maxSeconds)
   {
     return new MyServiceImpl(maxSeconds);
@@ -138,7 +128,7 @@ Usually, the @Inject annotation is suppl
 <p>Example:</p>
 
 <div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
+<script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[
   public void contributeMasterObjectProvider(OrderedConfiguration&lt;ObjectProvider&gt; configuration)
   {
     configuration.add(&quot;MyObject&quot;, new MyObjectProvider());

Modified: websites/production/tapestry/content/operation-tracker.html
==============================================================================
--- websites/production/tapestry/content/operation-tracker.html (original)
+++ websites/production/tapestry/content/operation-tracker.html Sat Jun 27 21:21:02 2015
@@ -45,7 +45,7 @@
   <input type="submit" value="Search">
 </form>
 
-</div><div class="emblem" style="float:left"><p><a shape="rect" href="index.html"><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"></a></p></div><div class="title" style="float:left; margin: 0 0 0 3em"><h1 id="SmallBanner-PageTitle">Operation Tracker</h1></div></div>
+</div><div class="emblem" style="float:left"><p><a shape="rect" 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">Operation Tracker</h1></div></div>
 <div class="clearer"></div>
 </div>
 

Modified: websites/production/tapestry/content/ordering-by-constraints.html
==============================================================================
--- websites/production/tapestry/content/ordering-by-constraints.html (original)
+++ websites/production/tapestry/content/ordering-by-constraints.html Sat Jun 27 21:21:02 2015
@@ -27,16 +27,6 @@
   </title>
   <link type="text/css" rel="stylesheet" href="/resources/space.css">
 
-    <link href='/resources/highlighter/styles/shCoreCXF.css' rel='stylesheet' type='text/css' />
-  <link href='/resources/highlighter/styles/shThemeCXF.css' rel='stylesheet' type='text/css' />
-  <script src='/resources/highlighter/scripts/shCore.js' type='text/javascript'></script>
-  <script src='/resources/highlighter/scripts/shBrushJava.js' type='text/javascript'></script>
-  <script src='/resources/highlighter/scripts/shBrushXml.js' type='text/javascript'></script>
-  <script src='/resources/highlighter/scripts/shBrushPlain.js' type='text/javascript'></script>
-  <script type="text/javascript">
-  SyntaxHighlighter.defaults['toolbar'] = false;
-  SyntaxHighlighter.all();
-  </script>
 
   <link href="/styles/style.css" rel="stylesheet" type="text/css"/>
 
@@ -55,7 +45,7 @@
   <input type="submit" value="Search">
 </form>
 
-</div><div class="emblem" style="float:left"><p><a shape="rect" href="index.html"><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"></a></p></div><div class="title" style="float:left; margin: 0 0 0 3em"><h1 id="SmallBanner-PageTitle">Ordering by Constraints</h1></div></div>
+</div><div class="emblem" style="float:left"><p><a shape="rect" 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">Ordering by Constraints</h1></div></div>
 <div class="clearer"></div>
 </div>
 

Modified: websites/production/tapestry/content/overriding-exception-reporting.html
==============================================================================
--- websites/production/tapestry/content/overriding-exception-reporting.html (original)
+++ websites/production/tapestry/content/overriding-exception-reporting.html Sat Jun 27 21:21:02 2015
@@ -27,16 +27,6 @@
   </title>
   <link type="text/css" rel="stylesheet" href="/resources/space.css">
 
-    <link href='/resources/highlighter/styles/shCoreCXF.css' rel='stylesheet' type='text/css' />
-  <link href='/resources/highlighter/styles/shThemeCXF.css' rel='stylesheet' type='text/css' />
-  <script src='/resources/highlighter/scripts/shCore.js' type='text/javascript'></script>
-  <script src='/resources/highlighter/scripts/shBrushJava.js' type='text/javascript'></script>
-  <script src='/resources/highlighter/scripts/shBrushXml.js' type='text/javascript'></script>
-  <script src='/resources/highlighter/scripts/shBrushPlain.js' type='text/javascript'></script>
-  <script type="text/javascript">
-  SyntaxHighlighter.defaults['toolbar'] = false;
-  SyntaxHighlighter.all();
-  </script>
 
   <link href="/styles/style.css" rel="stylesheet" type="text/css"/>
 
@@ -55,7 +45,7 @@
   <input type="submit" value="Search">
 </form>
 
-</div><div class="emblem" style="float:left"><p><a shape="rect" href="index.html"><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"></a></p></div><div class="title" style="float:left; margin: 0 0 0 3em"><h1 id="SmallBanner-PageTitle">Overriding Exception Reporting</h1></div></div>
+</div><div class="emblem" style="float:left"><p><a shape="rect" 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">Overriding Exception Reporting</h1></div></div>
 <div class="clearer"></div>
 </div>
 
@@ -76,43 +66,14 @@ table.ScrollbarTable td.ScrollbarNextNam
 table.ScrollbarTable td.ScrollbarNextIcon {text-align: center;width: 16px;border: none;}
 
 /*]]>*/</style><div class="Scrollbar"><table class="ScrollbarTable"><tr><td colspan="1" rowspan="1" class="ScrollbarPrevIcon"><a shape="rect" href="default-parameter.html"><img align="middle" border="0" src="https://cwiki.apache.org/confluence/images/icons/back_16.gif" width="16" height="16"></a></td><td colspan="1" rowspan="1" class="ScrollbarPrevName" width="33%"><a shape="rect" href="default-parameter.html">Default Parameter</a>&#160;</td><td colspan="1" rowspan="1" class="ScrollbarParent" width="33%"><sup><a shape="rect" href="cookbook.html"><img align="middle" border="0" src="https://cwiki.apache.org/confluence/images/icons/up_16.gif" width="8" height="8"></a></sup><a shape="rect" href="cookbook.html">Cookbook</a></td><td colspan="1" rowspan="1" class="ScrollbarNextName" width="33%">&#160;<a shape="rect" href="error-page-recipe.html">Error Page Recipe</a></td><td colspan="1" rowspan="1" class="ScrollbarNextIcon"><a shape="rect" href="error-page-recipe.html"><img align="middle" 
 border="0" src="https://cwiki.apache.org/confluence/images/icons/forwd_16.gif" width="16" height="16"></a></td></tr></table></div><h1 id="OverridingExceptionReporting-OverridingExceptionReporting">Overriding Exception Reporting</h1><div class="navmenu" style="float:right; background:#eee; margin:3px; padding:3px">
-<h3>Related Articles</h3>
-<ul class="content-by-label"><li>
-            <div>
-                    <span class="icon icon-page" title="Page">Page:</span>            </div>
-
-            <div class="details">
-                            <a shape="rect" href="specific-errors-faq.html">Specific Errors FAQ</a>
-                    
-                
-                            </div>
-        </li><li>
-            <div>
-                    <span class="icon icon-page" title="Page">Page:</span>            </div>
-
-            <div class="details">
-                            <a shape="rect" href="overriding-exception-reporting.html">Overriding Exception Reporting</a>
-                    
-                
-                            </div>
-        </li><li>
-            <div>
-                    <span class="icon icon-page" title="Page">Page:</span>            </div>
-
-            <div class="details">
-                            <a shape="rect" href="error-page-recipe.html">Error Page Recipe</a>
-                    
-                
-                            </div>
-        </li></ul>
-</div><p>One of Tapestry's best features is its comprehensive exception reporting. The level of detail is impressive and useful.</p><p>Of course, one of the first questions anyone asks is "How do I turn it off?" This exception reporting is very helpful for developers but its easy to see it as terrifying for potential users. Not that you'd have have runtime exceptions in production, of course, but even so ...</p><h2 id="OverridingExceptionReporting-Version1:ReplacingtheExceptionReportPage">Version 1: Replacing the Exception Report Page</h2><p>Let's start with a page that fires an exception from an event handler method.</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeHeader panelHeader pdl" style="border-bottom-width: 1px;"><b>ActionFail.tml</b></div><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[ &lt;html xmlns:t=&quot;http://tapestry.apache.org/schema/tapestry_5_4.xsd&quot; t:type=&quot;layout&quot; title=&quot;Action Fail&quot;&gt;
+<div class="error"><span class="error">Error formatting macro: contentbylabel: com.atlassian.confluence.api.service.exceptions.BadRequestException: Could not parse cql : null</span> </div></div><p>One of Tapestry's best features is its comprehensive exception reporting. The level of detail is impressive and useful.</p><p>Of course, one of the first questions anyone asks is "How do I turn it off?" This exception reporting is very helpful for developers but its easy to see it as terrifying for potential users. Not that you'd have have runtime exceptions in production, of course, but even so ...</p><h2 id="OverridingExceptionReporting-Version1:ReplacingtheExceptionReportPage">Version 1: Replacing the Exception Report Page</h2><p>Let's start with a page that fires an exception from an event handler method.</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeHeader panelHeader pdl" style="border-bottom-width: 1px;"><b>ActionFail.tml</b></div><div class="codeContent 
 panelContent pdl">
+<script class="brush: xml; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[ &lt;html xmlns:t=&quot;http://tapestry.apache.org/schema/tapestry_5_4.xsd&quot; t:type=&quot;layout&quot; title=&quot;Action Fail&quot;&gt;
         &lt;p&gt;
             &lt;t:actionlink t:id=&quot;fail&quot; class=&quot;btn btn-large btn-warning&quot;&gt;Click for Exception&lt;/t:actionlink&gt;
         &lt;/p&gt;
 &lt;/html&gt;]]></script>
 </div></div><div class="code panel pdl" style="border-width: 1px;"><div class="codeHeader panelHeader pdl" style="border-bottom-width: 1px;"><b>Index.java</b></div><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[package com.example.newapp.pages;
+<script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[package com.example.newapp.pages;
 
 public class ActionFail {
     void onActionFromFail() {
@@ -120,8 +81,8 @@ public class ActionFail {
     }
 }
 ]]></script>
-</div></div><p>With production mode disabled, clicking the link displays the default exception report page:</p><p><img class="confluence-embedded-image confluence-content-image-border image-center" width="500" src="overriding-exception-reporting.data/actionfail_-_top.png" data-image-src="/confluence/download/attachments/20645557/actionfail_-_top.png?version=1&amp;modificationDate=1428096039285&amp;api=v2"></p><p><img class="confluence-embedded-image confluence-content-image-border image-center" width="500" src="overriding-exception-reporting.data/Application_Exception.png" data-image-src="/confluence/download/attachments/20645557/Application_Exception.png?version=1&amp;modificationDate=1428096098319&amp;api=v2"></p><p>&#160;</p><p>The easy way to override the exception report is to provide an ExceptionReport page that overrides the one provided with the framework.</p><p>This is as easy as providing a page named "ExceptionReport". It must implement the <a shape="rect" class="external
 -link" href="http://tapestry.apache.org/tapestry5/apidocs/org/apache/tapestry5/services/ExceptionReporter.html">ExceptionReporter</a> interface.</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeHeader panelHeader pdl" style="border-bottom-width: 1px;"><b>ExceptionReport.tml</b></div><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[&lt;html t:type=&quot;layout&quot; title=&quot;Exception&quot;
+</div></div><p>With production mode disabled, clicking the link displays the default exception report page:</p><p><span class="confluence-embedded-file-wrapper image-center-wrapper confluence-embedded-manual-size"><img class="confluence-embedded-image confluence-content-image-border image-center" width="500" src="overriding-exception-reporting.data/actionfail_-_top.png" data-image-src="/confluence/download/attachments/20645557/actionfail_-_top.png?version=1&amp;modificationDate=1428096039000&amp;api=v2" data-unresolved-comment-count="0" data-linked-resource-id="55476331" data-linked-resource-version="1" data-linked-resource-type="attachment" data-linked-resource-default-alias="actionfail_-_top.png" data-base-url="https://cwiki.apache.org/confluence" data-linked-resource-content-type="image/png" data-linked-resource-container-id="20645557" data-linked-resource-container-version="24"></span></p><p><span class="confluence-embedded-file-wrapper image-center-wrapper confluence-embedded-m
 anual-size"><img class="confluence-embedded-image confluence-content-image-border image-center" width="500" src="overriding-exception-reporting.data/Application_Exception.png" data-image-src="/confluence/download/attachments/20645557/Application_Exception.png?version=1&amp;modificationDate=1428096098000&amp;api=v2" data-unresolved-comment-count="0" data-linked-resource-id="55476332" data-linked-resource-version="1" data-linked-resource-type="attachment" data-linked-resource-default-alias="Application_Exception.png" data-base-url="https://cwiki.apache.org/confluence" data-linked-resource-content-type="image/png" data-linked-resource-container-id="20645557" data-linked-resource-container-version="24"></span></p><p>&#160;</p><p>The easy way to override the exception report is to provide an ExceptionReport page that overrides the one provided with the framework.</p><p>This is as easy as providing a page named "ExceptionReport". It must implement the <a shape="rect" class="external-link"
  href="http://tapestry.apache.org/tapestry5/apidocs/org/apache/tapestry5/services/ExceptionReporter.html">ExceptionReporter</a> interface.</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeHeader panelHeader pdl" style="border-bottom-width: 1px;"><b>ExceptionReport.tml</b></div><div class="codeContent panelContent pdl">
+<script class="brush: xml; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[&lt;html t:type=&quot;layout&quot; title=&quot;Exception&quot;
       xmlns:t=&quot;http://tapestry.apache.org/schema/tapestry_5_4.xsd&quot;&gt;
 
 
@@ -140,7 +101,7 @@ public class ActionFail {
 &lt;/html&gt;
 ]]></script>
 </div></div><div class="code panel pdl" style="border-width: 1px;"><div class="codeHeader panelHeader pdl" style="border-bottom-width: 1px;"><b>ExceptionReport.java</b></div><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[package com.example.newapp.pages;
+<script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[package com.example.newapp.pages;
 
 import org.apache.tapestry5.annotations.Property;
 import org.apache.tapestry5.services.ExceptionReporter;
@@ -159,8 +120,8 @@ public class ExceptionReport implements
     }
 }
 ]]></script>
-</div></div><p>The end result is a customized exception report page.</p><p><img class="confluence-embedded-image confluence-content-image-border image-center" width="500" src="overriding-exception-reporting.data/customer_exception_report_-_open_1.png" data-image-src="/confluence/download/attachments/20645557/customer_exception_report_-_open_1.png?version=1&amp;modificationDate=1428096581764&amp;api=v2"></p><h2 id="OverridingExceptionReporting-Version2:OverridingtheRequestExceptionHandler">Version 2: Overriding the RequestExceptionHandler</h2><p>The previous example will display a link back to the Index page of the application. Another alternative is to display the error &lt;on&gt; the Index page. This requires a different approach: overriding the service responsible for reporting request exceptions.</p><p>The service <a shape="rect" class="external-link" href="http://tapestry.apache.org/tapestry5/apidocs/org/apache/tapestry5/services/RequestExceptionHandler.html">RequestExceptionHan
 dler</a> is responsible for this.</p><p>By replacing the default implementation of this service with our own implementation, we can take control over exactly what happens when a request exception occurs.</p><p>We'll do this in two steps. First, we'll extend the Index page to serve as an ExceptionReporter. Second, we'll override the default RequestExceptionHandler to use the Index page instead of the ExceptionReport page. Of course, this is just one approach.</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeHeader panelHeader pdl" style="border-bottom-width: 1px;"><b>Index.tml (partial)</b></div><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[ &lt;t:if test=&quot;message&quot;&gt;
+</div></div><p>The end result is a customized exception report page.</p><p><span class="confluence-embedded-file-wrapper image-center-wrapper confluence-embedded-manual-size"><img class="confluence-embedded-image confluence-content-image-border image-center" width="500" src="overriding-exception-reporting.data/customer_exception_report_-_open_1.png" data-image-src="/confluence/download/attachments/20645557/customer_exception_report_-_open_1.png?version=1&amp;modificationDate=1428096581000&amp;api=v2" data-unresolved-comment-count="0" data-linked-resource-id="55476333" data-linked-resource-version="1" data-linked-resource-type="attachment" data-linked-resource-default-alias="customer_exception_report_-_open_1.png" data-base-url="https://cwiki.apache.org/confluence" data-linked-resource-content-type="image/png" data-linked-resource-container-id="20645557" data-linked-resource-container-version="24"></span></p><h2 id="OverridingExceptionReporting-Version2:OverridingtheRequestExceptionH
 andler">Version 2: Overriding the RequestExceptionHandler</h2><p>The previous example will display a link back to the Index page of the application. Another alternative is to display the error &lt;on&gt; the Index page. This requires a different approach: overriding the service responsible for reporting request exceptions.</p><p>The service <a shape="rect" class="external-link" href="http://tapestry.apache.org/tapestry5/apidocs/org/apache/tapestry5/services/RequestExceptionHandler.html">RequestExceptionHandler</a> is responsible for this.</p><p>By replacing the default implementation of this service with our own implementation, we can take control over exactly what happens when a request exception occurs.</p><p>We'll do this in two steps. First, we'll extend the Index page to serve as an ExceptionReporter. Second, we'll override the default RequestExceptionHandler to use the Index page instead of the ExceptionReport page. Of course, this is just one approach.</p><div class="code pan
 el pdl" style="border-width: 1px;"><div class="codeHeader panelHeader pdl" style="border-bottom-width: 1px;"><b>Index.tml (partial)</b></div><div class="codeContent panelContent pdl">
+<script class="brush: xml; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[ &lt;t:if test=&quot;message&quot;&gt;
     &lt;div class=&quot;panel panel-danger&quot;&gt;
         &lt;div class=&quot;panel-heading&quot;&gt;An exception has occurred.&lt;/div&gt;
         &lt;div class=&quot;panel-body&quot;&gt;
@@ -169,7 +130,7 @@ public class ExceptionReport implements
     &lt;/div&gt;
  &lt;/t:if&gt;]]></script>
 </div></div><div class="code panel pdl" style="border-width: 1px;"><div class="codeHeader panelHeader pdl" style="border-bottom-width: 1px;"><b>Index.java</b></div><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[public class Index implements ExceptionReporter
+<script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[public class Index implements ExceptionReporter
 {
 	@Property
 	private String message;
@@ -186,7 +147,7 @@ public class ExceptionReport implements
   ...
 }]]></script>
 </div></div><p>The above defines a new property, message, on the Index page. The @Persist annotation indicates that values assigned to the field will persist from one request to another. The use of FLASH for the persistence strategy indicates that the value will be used until the next time the page renders, then the value will be discarded.</p><p>The message property is set from the thrown runtime exception.</p><p>The remaining changes take place inside AppModule.</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">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[    public RequestExceptionHandler buildAppRequestExceptionHandler(
+<script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[    public RequestExceptionHandler buildAppRequestExceptionHandler(
             final Logger logger,
             final ResponseRenderer renderer,
             final ComponentSource componentSource)
@@ -215,8 +176,8 @@ public class ExceptionReport implements
         configuration.add(RequestExceptionHandler.class, handler);
     }
 ]]></script>
-</div></div><p>First we define the new service using a service builder method. This is an alternative to the <code>bind()</code> method; we define the service, its interface type (the return type of the method) and the service id (the part that follows "build" is the method name) and provide the implementation inline. A service builder method must return the service implementation, here implemented as an inner class.</p><p>The Logger resource that is passed into the builder method is the Logger appropriate for the service. ResponseRenderer and ComponentSource are two services defined by Tapestry.</p><p>With this in place, there are now two different services that implement the RequestExceptionHandler interface: the default one built into Tapestry (whose service id is "RequestExceptionHandler") and the new one defined in this module, "AppRequestExceptionHandler"). Without a little more work, Tapestry will be unable to determine which one to use when an exception does occur.</p><p>Tap
 estry has a pipeline for resolving injected dependencies; the ServiceOverride service is one part of that pipeline. Contributions to it are used to override an existing service, when the injection is exclusively by type.</p><p>Here we inject the AppRequestExceptionHandler service and contribute it as the override for type RequestExceptionHandler. The @Local annotation is used to select the RequestHandler service defined by this module, AppModule. Once contributed into ServiceOverride, it becomes the default service injected throughout the Registry.</p><p>This finally brings us to the point where we can see the result:</p><p><img class="confluence-embedded-image confluence-content-image-border image-center" height="375" width="500" src="overriding-exception-reporting.data/index_as_excepton_report.png" data-image-src="/confluence/download/attachments/20645557/index_as_excepton_report.png?version=1&amp;modificationDate=1428096947818&amp;api=v2"></p><h2 id="OverridingExceptionReporting-
 Version3:DecoratingtheRequestExceptionHandler">Version 3: Decorating the RequestExceptionHandler</h2><p>A third option is available: we don't define a <em>new</em> service, but instead <em>decorate</em> the existing RequestExceptionHandler service. This approach means we don't have to make a contribution to the ServiceOverride service.</p><p>Service decoration is a powerful facility of Tapestry that is generally used to "wrap" an existing service with an interceptor that provides new functionality such as logging, security, transaction management or other cross-cutting concerns. The interceptor is an object that implements the same interface as the service being decorated, and usually delegates method invocations to it.</p><p>However, there's no requirement that an interceptor for a service actually invoke methods on the service; here we contribute a new implementation that <em>replaces</em> the original:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeHead
 er panelHeader pdl" style="border-bottom-width: 1px;"><b>AppModule.java (partial)</b></div><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[    public RequestExceptionHandler decorateRequestExceptionHandler(
+</div></div><p>First we define the new service using a service builder method. This is an alternative to the <code>bind()</code> method; we define the service, its interface type (the return type of the method) and the service id (the part that follows "build" is the method name) and provide the implementation inline. A service builder method must return the service implementation, here implemented as an inner class.</p><p>The Logger resource that is passed into the builder method is the Logger appropriate for the service. ResponseRenderer and ComponentSource are two services defined by Tapestry.</p><p>With this in place, there are now two different services that implement the RequestExceptionHandler interface: the default one built into Tapestry (whose service id is "RequestExceptionHandler") and the new one defined in this module, "AppRequestExceptionHandler"). Without a little more work, Tapestry will be unable to determine which one to use when an exception does occur.</p><p>Tap
 estry has a pipeline for resolving injected dependencies; the ServiceOverride service is one part of that pipeline. Contributions to it are used to override an existing service, when the injection is exclusively by type.</p><p>Here we inject the AppRequestExceptionHandler service and contribute it as the override for type RequestExceptionHandler. The @Local annotation is used to select the RequestHandler service defined by this module, AppModule. Once contributed into ServiceOverride, it becomes the default service injected throughout the Registry.</p><p>This finally brings us to the point where we can see the result:</p><p><span class="confluence-embedded-file-wrapper image-center-wrapper confluence-embedded-manual-size"><img class="confluence-embedded-image confluence-content-image-border image-center" height="375" width="500" src="overriding-exception-reporting.data/index_as_excepton_report.png" data-image-src="/confluence/download/attachments/20645557/index_as_excepton_report.pn
 g?version=1&amp;modificationDate=1428096947000&amp;api=v2" data-unresolved-comment-count="0" data-linked-resource-id="55476334" data-linked-resource-version="1" data-linked-resource-type="attachment" data-linked-resource-default-alias="index_as_excepton_report.png" data-base-url="https://cwiki.apache.org/confluence" data-linked-resource-content-type="image/png" data-linked-resource-container-id="20645557" data-linked-resource-container-version="24"></span></p><h2 id="OverridingExceptionReporting-Version3:DecoratingtheRequestExceptionHandler">Version 3: Decorating the RequestExceptionHandler</h2><p>A third option is available: we don't define a <em>new</em> service, but instead <em>decorate</em> the existing RequestExceptionHandler service. This approach means we don't have to make a contribution to the ServiceOverride service.</p><p>Service decoration is a powerful facility of Tapestry that is generally used to "wrap" an existing service with an interceptor that provides new functio
 nality such as logging, security, transaction management or other cross-cutting concerns. The interceptor is an object that implements the same interface as the service being decorated, and usually delegates method invocations to it.</p><p>However, there's no requirement that an interceptor for a service actually invoke methods on the service; here we contribute a new implementation that <em>replaces</em> the original:</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">
+<script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[    public RequestExceptionHandler decorateRequestExceptionHandler(
             final Logger logger,
             final ResponseRenderer renderer,
             final ComponentSource componentSource,

Modified: websites/production/tapestry/content/page-and-component-classes-faq.html
==============================================================================
--- websites/production/tapestry/content/page-and-component-classes-faq.html (original)
+++ websites/production/tapestry/content/page-and-component-classes-faq.html Sat Jun 27 21:21:02 2015
@@ -27,16 +27,6 @@
   </title>
   <link type="text/css" rel="stylesheet" href="/resources/space.css">
 
-    <link href='/resources/highlighter/styles/shCoreCXF.css' rel='stylesheet' type='text/css' />
-  <link href='/resources/highlighter/styles/shThemeCXF.css' rel='stylesheet' type='text/css' />
-  <script src='/resources/highlighter/scripts/shCore.js' type='text/javascript'></script>
-  <script src='/resources/highlighter/scripts/shBrushJava.js' type='text/javascript'></script>
-  <script src='/resources/highlighter/scripts/shBrushXml.js' type='text/javascript'></script>
-  <script src='/resources/highlighter/scripts/shBrushPlain.js' type='text/javascript'></script>
-  <script type="text/javascript">
-  SyntaxHighlighter.defaults['toolbar'] = false;
-  SyntaxHighlighter.all();
-  </script>
 
   <link href="/styles/style.css" rel="stylesheet" type="text/css"/>
 
@@ -55,7 +45,7 @@
   <input type="submit" value="Search">
 </form>
 
-</div><div class="emblem" style="float:left"><p><a shape="rect" href="index.html"><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"></a></p></div><div class="title" style="float:left; margin: 0 0 0 3em"><h1 id="SmallBanner-PageTitle">Page And Component Classes FAQ</h1></div></div>
+</div><div class="emblem" style="float:left"><p><a shape="rect" 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">Page And Component Classes FAQ</h1></div></div>
 <div class="clearer"></div>
 </div>
 
@@ -75,26 +65,14 @@ table.ScrollbarTable td.ScrollbarParent
 table.ScrollbarTable td.ScrollbarNextName {text-align: right;border: none;}
 table.ScrollbarTable td.ScrollbarNextIcon {text-align: center;width: 16px;border: none;}
 
-/*]]>*/</style><div class="Scrollbar"><table class="ScrollbarTable"><tr><td colspan="1" rowspan="1" class="ScrollbarPrevIcon"><a shape="rect" href="templating-and-markup-faq.html"><img align="middle" border="0" src="https://cwiki.apache.org/confluence/images/icons/back_16.gif" width="16" height="16"></a></td><td colspan="1" rowspan="1" class="ScrollbarPrevName" width="33%"><a shape="rect" href="templating-and-markup-faq.html">Templating and Markup FAQ</a>&#160;</td><td colspan="1" rowspan="1" class="ScrollbarParent" width="33%"><sup><a shape="rect" href="frequently-asked-questions.html"><img align="middle" border="0" src="https://cwiki.apache.org/confluence/images/icons/up_16.gif" width="8" height="8"></a></sup><a shape="rect" href="frequently-asked-questions.html">Frequently Asked Questions</a></td><td colspan="1" rowspan="1" class="ScrollbarNextName" width="33%">&#160;<a shape="rect" href="forms-and-form-components-faq.html">Forms and Form Components FAQ</a></td><td colspan="1" ro
 wspan="1" class="ScrollbarNextIcon"><a shape="rect" href="forms-and-form-components-faq.html"><img align="middle" border="0" src="https://cwiki.apache.org/confluence/images/icons/forwd_16.gif" width="16" height="16"></a></td></tr></table></div><h2 id="PageAndComponentClassesFAQ-PageAndComponentClasses">Page And Component Classes</h2><p>Main article: <a shape="rect" href="component-classes.html">Component Classes</a></p><h3 id="PageAndComponentClassesFAQ-What'sthedifferencebetweenapageandacomponent?">What's the difference between a page and a component?</h3><p>There's very little difference between the two. Pages classes must be in the <em>root-package</em>.<code>pages</code> package; components must be in the <em>root-package</em>.<code>components</code>. Pages may provide event handlers for certain page-specific events (such as activate and passivate). Components may have parameters.</p><p>Other than that, they are more equal than they are different. They may have templates or may 
 render themselves in code (pages usually have a template, components are more likely to render only in code).</p><p>The major difference is that Tapestry page templates may be stored in the web context directory, as if they were static files (they can't be accessed from the client however; a specific rule prevents access to files with the <code>.tml</code> extension).</p>    <div class="aui-message problem shadowed information-macro">
-                            <span class="aui-icon icon-problem">Icon</span>
-                <div class="message-content">
-                            <p>It is possible that this feature may be removed in a later release. It is preferred that page templates be stored on the classpath, like component templates.</p>
-                    </div>
-    </div>
-<h3 id="PageAndComponentClassesFAQ-HowdoIstoremypageclassesinadifferentpackage?">How do I store my page classes in a different package?</h3><p>Tapestry is very rigid here; you can't. Page classes must go in <em>root-package</em>.<code>pages</code>, component classes in <em>root-package</em>.<code>components</code>, etc.</p><p>You are allowed to create sub-packages, to help organize your code better and more logically. For example, you might have <em>root-package</em>.<code>pages.account.ViewAccount</code>, which would have the page name "account/viewaccount". (<span style="line-height: 1.4285715;">Tapestry would also create an alias "account/view", by stripping off the redundant "account" suffix. Either name is equally valid in your code, and Tapestry will use the shorter name, "account/view" in URLs.)</span></p><p>In addition, it is possible to define additional root packages for the application:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent pane
 lContent pdl">
-<script class="theme: Default; brush: java; gutter: true" type="syntaxhighlighter"><![CDATA[public static void contributeComponentClassResolver(Configuration&lt;LibraryMapping&gt; configuration) {
+/*]]>*/</style><div class="Scrollbar"><table class="ScrollbarTable"><tr><td colspan="1" rowspan="1" class="ScrollbarPrevIcon"><a shape="rect" href="templating-and-markup-faq.html"><img align="middle" border="0" src="https://cwiki.apache.org/confluence/images/icons/back_16.gif" width="16" height="16"></a></td><td colspan="1" rowspan="1" class="ScrollbarPrevName" width="33%"><a shape="rect" href="templating-and-markup-faq.html">Templating and Markup FAQ</a>&#160;</td><td colspan="1" rowspan="1" class="ScrollbarParent" width="33%"><sup><a shape="rect" href="frequently-asked-questions.html"><img align="middle" border="0" src="https://cwiki.apache.org/confluence/images/icons/up_16.gif" width="8" height="8"></a></sup><a shape="rect" href="frequently-asked-questions.html">Frequently Asked Questions</a></td><td colspan="1" rowspan="1" class="ScrollbarNextName" width="33%">&#160;<a shape="rect" href="forms-and-form-components-faq.html">Forms and Form Components FAQ</a></td><td colspan="1" ro
 wspan="1" class="ScrollbarNextIcon"><a shape="rect" href="forms-and-form-components-faq.html"><img align="middle" border="0" src="https://cwiki.apache.org/confluence/images/icons/forwd_16.gif" width="16" height="16"></a></td></tr></table></div><h2 id="PageAndComponentClassesFAQ-PageAndComponentClasses">Page And Component Classes</h2><p>Main article: <a shape="rect" href="component-classes.html">Component Classes</a></p><h3 id="PageAndComponentClassesFAQ-What'sthedifferencebetweenapageandacomponent?">What's the difference between a page and a component?</h3><p>There's very little difference between the two. Pages classes must be in the <em>root-package</em>.<code>pages</code> package; components must be in the <em>root-package</em>.<code>components</code>. Pages may provide event handlers for certain page-specific events (such as activate and passivate). Components may have parameters.</p><p>Other than that, they are more equal than they are different. They may have templates or may 
 render themselves in code (pages usually have a template, components are more likely to render only in code).</p><p>The major difference is that Tapestry page templates may be stored in the web context directory, as if they were static files (they can't be accessed from the client however; a specific rule prevents access to files with the <code>.tml</code> extension).</p><div class="confluence-information-macro confluence-information-macro-warning"><span class="aui-icon aui-icon-small aui-iconfont-error confluence-information-macro-icon"></span><div class="confluence-information-macro-body"><p>It is possible that this feature may be removed in a later release. It is preferred that page templates be stored on the classpath, like component templates.</p></div></div><h3 id="PageAndComponentClassesFAQ-HowdoIstoremypageclassesinadifferentpackage?">How do I store my page classes in a different package?</h3><p>Tapestry is very rigid here; you can't. Page classes must go in <em>root-package
 </em>.<code>pages</code>, component classes in <em>root-package</em>.<code>components</code>, etc.</p><p>You are allowed to create sub-packages, to help organize your code better and more logically. For example, you might have <em>root-package</em>.<code>pages.account.ViewAccount</code>, which would have the page name "account/viewaccount". (<span style="line-height: 1.4285715;">Tapestry would also create an alias "account/view", by stripping off the redundant "account" suffix. Either name is equally valid in your code, and Tapestry will use the shorter name, "account/view" in URLs.)</span></p><p>In addition, it is possible to define additional root packages for the application:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="brush: java; gutter: true; theme: Default" type="syntaxhighlighter"><![CDATA[public static void contributeComponentClassResolver(Configuration&lt;LibraryMapping&gt; configuration) {
        configuration.add(new LibraryMapping(&quot;&quot;, &quot;com.example.app.tasks&quot;));
        configuration.add(new LibraryMapping(&quot;&quot;, &quot;com.example.app.chat&quot;));
 }
 ]]></script>
-</div></div><p>LibraryMappings are used to resolve a library prefix to one or more package names. The empty string represents the application itself; the above example adds two additional root packages; you might see additional pages under <code>com.example.app.tasks.pages</code>, for example.</p>    <div class="aui-message problem shadowed information-macro">
-                            <span class="aui-icon icon-problem">Icon</span>
-                <div class="message-content">
-                            <p>Tapestry doesn't check for name collisions, and the order the packages are searched for pages and components is not defined. In general, if you can get by with a single root package for your application, that is better.</p>
-                    </div>
-    </div>
-<h3 id="PageAndComponentClassesFAQ-Whydomyinstancevariableshavetobeprivate?">Why do my instance variables have to be private?</h3><p><em>In Tapestry 5.3.1 and earlier all instance variables must be private. Starting in version 5.3.2 instance variables can also be protected or package private (that is, not public), or they can even be public if <code>final</code> or annotated with the deprecated @Retain.</em></p><p>Tapestry does a large amount of transformation to your simple POJO classes as it loads them into memory. In many cases, it must locate every read or write of an instance variable and change its behavior; for example, reading a field that is a component parameter will cause a property of the containing page or component to be read.</p><p>Restricting the scope of fields allows Tapestry to do the necessary processing one class at a time, as needed, at runtime. More complex Aspect Orient Programming systems such as AspectJ can perform similar transformations (and much more com
 plex ones), but they require a dedicated build step (or the introduction of a JVM agent).</p><h3 id="PageAndComponentClassesFAQ-Whydon'tmyinformalparametersshowupintherenderedmarkup?">Why don't my informal parameters show up in the rendered markup?</h3><p>Getting informal parameters to work is in two steps. First, you must make a call to the <code>ComponentResources.renderInformalParameters()</code> method, but just as importantly, you must tell Tapestry that you want the component to support informal parameters, using the <code>SupportsInformalParameters</code> annotation. Here's a hypothetical component that displays an image based on the value of a <code>Image</code> object (presumably, a database entity):</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: true" type="syntaxhighlighter"><![CDATA[@SupportsInformalParameters
+</div></div><p>LibraryMappings are used to resolve a library prefix to one or more package names. The empty string represents the application itself; the above example adds two additional root packages; you might see additional pages under <code>com.example.app.tasks.pages</code>, for example.</p><div class="confluence-information-macro confluence-information-macro-warning"><span class="aui-icon aui-icon-small aui-iconfont-error confluence-information-macro-icon"></span><div class="confluence-information-macro-body"><p>Tapestry doesn't check for name collisions, and the order the packages are searched for pages and components is not defined. In general, if you can get by with a single root package for your application, that is better.</p></div></div><h3 id="PageAndComponentClassesFAQ-Whydomyinstancevariableshavetobeprivate?">Why do my instance variables have to be private?</h3><p><em>In Tapestry 5.3.1 and earlier all instance variables must be private. Starting in version 5.3.2 inst
 ance variables can also be protected or package private (that is, not public), or they can even be public if <code>final</code> or annotated with the deprecated @Retain.</em></p><p>Tapestry does a large amount of transformation to your simple POJO classes as it loads them into memory. In many cases, it must locate every read or write of an instance variable and change its behavior; for example, reading a field that is a component parameter will cause a property of the containing page or component to be read.</p><p>Restricting the scope of fields allows Tapestry to do the necessary processing one class at a time, as needed, at runtime. More complex Aspect Orient Programming systems such as AspectJ can perform similar transformations (and much more complex ones), but they require a dedicated build step (or the introduction of a JVM agent).</p><h3 id="PageAndComponentClassesFAQ-Whydon'tmyinformalparametersshowupintherenderedmarkup?">Why don't my informal parameters show up in the rende
 red markup?</h3><p>Getting informal parameters to work is in two steps. First, you must make a call to the <code>ComponentResources.renderInformalParameters()</code> method, but just as importantly, you must tell Tapestry that you want the component to support informal parameters, using the <code>SupportsInformalParameters</code> annotation. Here's a hypothetical component that displays an image based on the value of a <code>Image</code> object (presumably, a database entity):</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="brush: java; gutter: true; theme: Default" type="syntaxhighlighter"><![CDATA[@SupportsInformalParameters
 public class DBImage
 {
   @Parameter(required=true)
@@ -120,30 +98,24 @@ public class DBImage
 
 
 
-<span class="gliffy-container" id="gliffy-container-23527573-1808" data-fullwidth="750" data-ceoid="23335008" data-edit="${diagramEditLink.getLinkUrl()}" data-full="/confluence/plugins/gliffy/viewer.action?inline=false&amp;attachmentId=23527573&amp;attachmentVersion=4&amp;lastPage=%2Fpages%2Fviewpage.action%3FpageId%3D23335008" data-filename="Class Loaders">
+<span class="gliffy-container" id="gliffy-container-23527573-8966" data-fullwidth="750" data-ceoid="23335008" data-edit="${diagramEditLink.getLinkUrl()}" data-full="/confluence/plugins/gliffy/viewer.action?inline=false&amp;pageId=23335008&amp;attachmentId=23527573&amp;name=Class%20Loaders&amp;lastPage=%2Fpages%2Fviewpage.action%3FpageId%3D23335008" data-pageid="23335008" data-filename="Class Loaders">
 
-    <map id="gliffy-map-23527573-134" name="gliffy-map-23527573-134"></map>
+    <map id="gliffy-map-23527573-501" name="gliffy-map-23527573-501"></map>
 
-    <img class="gliffy-image" id="gliffy-image-23527573-1808" width="750" height="425" data-full-width="750" data-full-height="425" src="https://cwiki.apache.org/confluence/download/attachments/23335008/Class%20Loaders.png?version=4&amp;modificationDate=1283534469000&amp;api=v2" alt="Class Loaders" usemap="#gliffy-map-23527573-134">
+    <img class="gliffy-image" id="gliffy-image-23527573-8966" width="750" height="425" data-full-width="750" data-full-height="425" src="https://cwiki.apache.org/confluence/download/attachments/23335008/Class%20Loaders.png?version=4&amp;modificationDate=1283534469000&amp;api=v2" alt="Class Loaders" usemap="#gliffy-map-23527573-501">
 
-    <map class="gliffy-dynamic" id="gliffy-dynamic-map-23527573-1808" name="gliffy-dynamic-map-23527573-1808"></map>
+    <map class="gliffy-dynamic" id="gliffy-dynamic-map-23527573-8966" name="gliffy-dynamic-map-23527573-8966"></map>
 </span>
 
 
 </p><p>In a Tapestry application, most application classes are loaded from the middle class loader. Additional class loaders are used<br clear="none"> to support live service reloading, and live component reloading (along with component class transformation).</p><p>When a page or component is passed as a parameter to a service, a failure occurs (how it is reported varies in different JDK releases) because of the class mismatch.</p><p>The solution is to define an interface with the methods that the service will invoke on the page or component instance. The service will expect an object implementing the interface (and doesn't care what class loader loaded the implementing class).</p><p>Just be sure to put the interface class in a non-controlled package, such as your application's <em>root-package</em> (and <strong>not</strong> <em>root-package</em>.<code>pages</code>).</p><h3 id="PageAndComponentClassesFAQ-Whichisbetter,usingmagicmethodnames(i.e.,beginRender())orannotations(i.e.BeginR
 ender)?">Which is better, using magic method names (i.e., <code>beginRender()</code>) or annotations (i.e. <code>BeginRender</code>)?</h3><p>There is no single best way; this is where your taste may vary. Historically, the annotations came first, and the method naming conventions came later.</p><p>The advantage of using the method naming conventions is that the method names are more concise, which fewer characters to type, and fewer classes to import.</p><p>The main disadvantage of the method naming conventions is that the method names are not meaningful. <code>onSuccessFromLoginForm()</code> is a less meaningful name than <code>storeUserCredentialsAndReturnToProductsPage()</code>, for example.</p><p>The second disadvantage is you are more susceptible to off-by-a-character errors. For example, <code>onSucessFromLoginForm()</code> will <em>never</em> be called because the event name is misspelled; this would not happen using the annotation approach:</p><div class="code panel pdl" sty
 le="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: true" type="syntaxhighlighter"><![CDATA[  @OnEvent(value=EventConstants.SUCCESS, component=&quot;loginForm&quot;)
+<script class="brush: java; gutter: true; theme: Default" type="syntaxhighlighter"><![CDATA[  @OnEvent(value=EventConstants.SUCCESS, component=&quot;loginForm&quot;)
   Object storeUserCredentialsAndReturnToProductsPage()
   {
     . . .
   }
 ]]></script>
-</div></div><p>The compiler will catch a misspelling of the constant <code>SUCCESS</code>. Likewise, local constants can be defined for key components, such as "loginForm".</p>    <div class="aui-message hint shadowed information-macro">
-                            <span class="aui-icon icon-hint">Icon</span>
-                <div class="message-content">
-                            <p>Ultimately, it's developer choice. HLS prefers the method naming conventions in nearly all cases, especially prototypes and demos, but can see that in some projects and some teams, an annotation-only approach is best.</p>
-                    </div>
-    </div>
-<h3 id="PageAndComponentClassesFAQ-WhydoIhavetoinjectapage?Whycan'tIjustcreateoneusingnew?">Why do I have to inject a page? Why can't I just create one using new?</h3><p>Tapestry tranforms your class at runtime. It tends to build a large constructor for the class instance. Further, an instance of the class is useless by itself, it must be wired together with its template and its sub-components.</p><p>On top of that, Tapestry keeps just once instance of each page in memory (since 5.2). It reworks the bytecode of the components so that a single instance can be shared across multiple request handling threads.</p><style type="text/css">/*<![CDATA[*/
+</div></div><p>The compiler will catch a misspelling of the constant <code>SUCCESS</code>. Likewise, local constants can be defined for key components, such as "loginForm".</p><div class="confluence-information-macro confluence-information-macro-information"><span class="aui-icon aui-icon-small aui-iconfont-info confluence-information-macro-icon"></span><div class="confluence-information-macro-body"><p>Ultimately, it's developer choice. HLS prefers the method naming conventions in nearly all cases, especially prototypes and demos, but can see that in some projects and some teams, an annotation-only approach is best.</p></div></div><h3 id="PageAndComponentClassesFAQ-WhydoIhavetoinjectapage?Whycan'tIjustcreateoneusingnew?">Why do I have to inject a page? Why can't I just create one using new?</h3><p>Tapestry tranforms your class at runtime. It tends to build a large constructor for the class instance. Further, an instance of the class is useless by itself, it must be wired together wi
 th its template and its sub-components.</p><p>On top of that, Tapestry keeps just once instance of each page in memory (since 5.2). It reworks the bytecode of the components so that a single instance can be shared across multiple request handling threads.</p><style type="text/css">/*<![CDATA[*/
 table.ScrollbarTable  {border: none;padding: 3px;width: 100%;padding: 3px;margin: 0px;background-color: #f0f0f0}
 table.ScrollbarTable td.ScrollbarPrevIcon {text-align: center;width: 16px;border: none;}
 table.ScrollbarTable td.ScrollbarPrevName {text-align: left;border: none;}
@@ -151,7 +123,7 @@ table.ScrollbarTable td.ScrollbarParent
 table.ScrollbarTable td.ScrollbarNextName {text-align: right;border: none;}
 table.ScrollbarTable td.ScrollbarNextIcon {text-align: center;width: 16px;border: none;}
 
-/*]]>*/</style><div class="Scrollbar"><table class="ScrollbarTable"><tr><td colspan="1" rowspan="1" class="ScrollbarPrevIcon"><a shape="rect" href="templating-and-markup-faq.html"><img align="middle" border="0" src="https://cwiki.apache.org/confluence/images/icons/back_16.gif" width="16" height="16"></a></td><td colspan="1" rowspan="1" class="ScrollbarPrevName" width="33%"><a shape="rect" href="templating-and-markup-faq.html">Templating and Markup FAQ</a>&#160;</td><td colspan="1" rowspan="1" class="ScrollbarParent" width="33%"><sup><a shape="rect" href="frequently-asked-questions.html"><img align="middle" border="0" src="https://cwiki.apache.org/confluence/images/icons/up_16.gif" width="8" height="8"></a></sup><a shape="rect" href="frequently-asked-questions.html">Frequently Asked Questions</a></td><td colspan="1" rowspan="1" class="ScrollbarNextName" width="33%">&#160;<a shape="rect" href="forms-and-form-components-faq.html">Forms and Form Components FAQ</a></td><td colspan="1" ro
 wspan="1" class="ScrollbarNextIcon"><a shape="rect" href="forms-and-form-components-faq.html"><img align="middle" border="0" src="https://cwiki.apache.org/confluence/images/icons/forwd_16.gif" width="16" height="16"></a></td></tr></table></div><p>____</p><p>&#160;</p><p>&#160;</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>&#160;</p><p>&#160;</p></div>
+/*]]>*/</style><div class="Scrollbar"><table class="ScrollbarTable"><tr><td colspan="1" rowspan="1" class="ScrollbarPrevIcon"><a shape="rect" href="templating-and-markup-faq.html"><img align="middle" border="0" src="https://cwiki.apache.org/confluence/images/icons/back_16.gif" width="16" height="16"></a></td><td colspan="1" rowspan="1" class="ScrollbarPrevName" width="33%"><a shape="rect" href="templating-and-markup-faq.html">Templating and Markup FAQ</a>&#160;</td><td colspan="1" rowspan="1" class="ScrollbarParent" width="33%"><sup><a shape="rect" href="frequently-asked-questions.html"><img align="middle" border="0" src="https://cwiki.apache.org/confluence/images/icons/up_16.gif" width="8" height="8"></a></sup><a shape="rect" href="frequently-asked-questions.html">Frequently Asked Questions</a></td><td colspan="1" rowspan="1" class="ScrollbarNextName" width="33%">&#160;<a shape="rect" href="forms-and-form-components-faq.html">Forms and Form Components FAQ</a></td><td colspan="1" ro
 wspan="1" class="ScrollbarNextIcon"><a shape="rect" href="forms-and-form-components-faq.html"><img align="middle" border="0" src="https://cwiki.apache.org/confluence/images/icons/forwd_16.gif" width="16" height="16"></a></td></tr></table></div><p>____</p><p>&#160;</p><p>&#160;</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>&#160;</p><p>&#160;</p></div>
 </div>
 
 <div class="clearer"></div>

Modified: websites/production/tapestry/content/page-and-component-classes.html
==============================================================================
--- websites/production/tapestry/content/page-and-component-classes.html (original)
+++ websites/production/tapestry/content/page-and-component-classes.html Sat Jun 27 21:21:02 2015
@@ -45,7 +45,7 @@
   <input type="submit" value="Search">
 </form>
 
-</div><div class="emblem" style="float:left"><p><a shape="rect" href="index.html"><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"></a></p></div><div class="title" style="float:left; margin: 0 0 0 3em"><h1 id="SmallBanner-PageTitle">Page And Component Classes</h1></div></div>
+</div><div class="emblem" style="float:left"><p><a shape="rect" 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">Page And Component Classes</h1></div></div>
 <div class="clearer"></div>
 </div>