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 2014/01/18 22:21:01 UTC

svn commit: r894660 [2/2] - in /websites/production/tapestry/content: ./ cache/

Modified: websites/production/tapestry/content/release-notes-52.html
==============================================================================
--- websites/production/tapestry/content/release-notes-52.html (original)
+++ websites/production/tapestry/content/release-notes-52.html Sat Jan 18 21:21:01 2014
@@ -29,6 +29,8 @@
   <link href='http://cxf.apache.org/resources/highlighter/styles/shThemeCXF.css' rel='stylesheet' type='text/css' />
   <script src='http://cxf.apache.org/resources/highlighter/scripts/shCore.js' type='text/javascript'></script>
   <script src='http://cxf.apache.org/resources/highlighter/scripts/shBrushJava.js' type='text/javascript'></script>
+  <script src='http://cxf.apache.org/resources/highlighter/scripts/shBrushXml.js' type='text/javascript'></script>
+  <script src='http://cxf.apache.org/resources/highlighter/scripts/shBrushJScript.js' type='text/javascript'></script>
   <script type="text/javascript">
   SyntaxHighlighter.defaults['toolbar'] = false;
   SyntaxHighlighter.all();
@@ -77,54 +79,22 @@ 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="release-notes-51.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="release-notes-51.html">Release Notes 5.1</a>&#160;</td><td colspan="1" rowspan="1" class="ScrollbarParent" width="33%"><sup><a shape="rect" href="release-notes.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="release-notes.html">Release Notes</a></td><td colspan="1" rowspan="1" class="ScrollbarNextName" width="33%">&#160;<a shape="rect" href="release-notes-53.html">Release Notes 5.3</a></td><td colspan="1" rowspan="1" class="ScrollbarNextIcon"><a shape="rect" href="release-notes-53.html"><img alig
 n="middle" border="0" src="https://cwiki.apache.org/confluence/images/icons/forwd_16.gif" width="16" height="16"></a></td></tr></table></div>
+/*]]>*/</style><div class="Scrollbar"><table class="ScrollbarTable"><tr><td colspan="1" rowspan="1" class="ScrollbarPrevIcon"><a shape="rect" href="release-notes-51.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="release-notes-51.html">Release Notes 5.1</a>&#160;</td><td colspan="1" rowspan="1" class="ScrollbarParent" width="33%"><sup><a shape="rect" href="release-notes.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="release-notes.html">Release Notes</a></td><td colspan="1" rowspan="1" class="ScrollbarNextName" width="33%">&#160;<a shape="rect" href="release-notes-53.html">Release Notes 5.3</a></td><td colspan="1" rowspan="1" class="ScrollbarNextIcon"><a shape="rect" href="release-notes-53.html"><img alig
 n="middle" border="0" src="https://cwiki.apache.org/confluence/images/icons/forwd_16.gif" width="16" height="16"></a></td></tr></table></div><p>This is the consolidated list of changes between Tapestry versions 5.1 and 5.2. To upgrade from 5.1 to 5.2, most users will be able to just update the Maven dependency in their POM file (or <a shape="rect" href="download.html">download</a> the new JAR file) and the new version will just work. However, please read carefully below before upgrading, and also review the <a shape="rect" href="how-to-upgrade.html">How to Upgrade</a> instructions.</p><p><strong>Contents</strong></p><p><style type="text/css">/*<![CDATA[*/
+div.rbtoc1390080051288 {padding: 0px;}
+div.rbtoc1390080051288 ul {list-style: disc;margin-left: 0px;}
+div.rbtoc1390080051288 li {margin-left: 0px;padding-left: 0px;}
 
-<p>This is the consolidated list of changes between Tapestry versions 5.1 and 5.2.  To upgrade from 5.1 to 5.2, most users will be able to just update the Maven dependency in their POM file (or <a shape="rect" href="download.html">download</a> the new JAR file) and the new version will just work.  However, please read carefully below before upgrading, and also review the <a shape="rect" href="how-to-upgrade.html">How to Upgrade</a> instructions.</p>
-
-<p><strong>Contents</strong></p>
-<style type="text/css">/*<![CDATA[*/
-div.rbtoc1387423359451 {padding: 0px;}
-div.rbtoc1387423359451 ul {list-style: disc;margin-left: 0px;}
-div.rbtoc1387423359451 li {margin-left: 0px;padding-left: 0px;}
-
-/*]]>*/</style><div class="toc-macro rbtoc1387423359451">
+/*]]>*/</style></p><div class="toc-macro rbtoc1390080051288">
 <ul class="toc-indentation"><li><a shape="rect" href="#ReleaseNotes5.2-BreakingChanges">Breaking Changes</a></li><li><a shape="rect" href="#ReleaseNotes5.2-ReleaseNotes:Tapestry5.2.6">Release Notes: Tapestry 5.2.6</a></li><li><a shape="rect" href="#ReleaseNotes5.2-ReleaseNotes:Tapestry5.2.5">Release Notes: Tapestry 5.2.5</a></li><li><a shape="rect" href="#ReleaseNotes5.2-ReleaseNotes:Tapestry5.2.4">Release Notes: Tapestry 5.2.4</a></li><li><a shape="rect" href="#ReleaseNotes5.2-ReleaseNotes:Tapestry5.2.3">Release Notes: Tapestry 5.2.3</a></li><li><a shape="rect" href="#ReleaseNotes5.2-ReleaseNotes:Tapestry5.2.2">Release Notes: Tapestry 5.2.2</a></li><li><a shape="rect" href="#ReleaseNotes5.2-ReleaseNotes:Tapestry5.2.1">Release Notes: Tapestry 5.2.1</a></li><li><a shape="rect" href="#ReleaseNotes5.2-ReleaseNotes:Tapestry5.2.0">Release Notes: Tapestry 5.2.0</a></li></ul>
-</div>
-
-<h2 id="ReleaseNotes5.2-BreakingChanges">Breaking Changes</h2>
-
-<p>The following changes have been made in Tapestry 5.2 that are likely to result in unexpected behavior if your application relies on the changed functionality.  Please review this list carefully before upgrading from 5.1 to 5.2. Also check the <a shape="rect" class="external-link" href="http://tapestry.apache.org/current/apidocs/deprecated-list.html">Deprecated API List</a> for non-breaking changes.</p>
-
-<ul><li>Page classes with instance variables that are not thread safe must be created in a method rather than declared as an instance variable. For example, creating an instance variable <code>private final DateFormat format = DateFormat.getDateInstance(DateFormat.MEDIUM, locale);</code> in a page and using it will cause problems because DateFormat is not thread safe. Instead, you must create the DateFormat in a method. See <a shape="rect" href="#ReleaseNotes5.2-Tap5.2.0">Release Notes: Tapestry 5.2.0</a> (below) for details.</li><li><a shape="rect" class="external-link" href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/Link.html#toAbsoluteURI%28%29">Link.toAbsoluteURI()</a> now returns the absolute URL, which includes the scheme, hostname and possibly port (e.g., "http://example.com:8080/myapp/viewproduct/4"), rather than a relative URL (e.g., "/myapp/viewproduct/4"). See <a shape="rect" href="#ReleaseNotes5.2-Tap5.2.2">Release Notes: Tapestry 5.2.2</a> (below) 
 for details.</li><li>The <a shape="rect" class="external-link" href="http://tapestry.apache.org/tapestry5.2-dev/tapestry-core/ref/org/apache/tapestry5/corelib/components/Label.html">Label</a> component no longer outputs an id:</li></ul>
-
-
-
-<p>Previously valid code in 5.1.0.5:</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[&lt;t:form&gt;&lt;t:label for=&quot;search&quot;/&gt;&lt;t:textfield t:id=&quot;search&quot; size=&quot;50&quot;/&gt;&lt;/t:form&gt;]]></script>
-</div></div>
-
-<p>Combined with JavaScript that references the id:</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[jQuery(&#39;#search-label&#39;).text(&#39;This is the search label&#39;);   ]]></script>
-</div></div>
-
-<p>New JavaScript code for 5.2:</p>
+</div><h2 id="ReleaseNotes5.2-BreakingChanges">Breaking Changes</h2><p>The following changes have been made in Tapestry 5.2 that are likely to result in unexpected behavior if your application relies on the changed functionality. Please review this list carefully before upgrading from 5.1 to 5.2. Also check the <a shape="rect" class="external-link" href="http://tapestry.apache.org/current/apidocs/deprecated-list.html">Deprecated API List</a> for non-breaking changes.</p><ul><li>Page classes with instance variables that are not thread safe must be created in a method rather than declared as an instance variable. For example, creating an instance variable <code>private final DateFormat format = DateFormat.getDateInstance(DateFormat.MEDIUM, locale);</code> in a page and using it will cause problems because DateFormat is not thread safe. Instead, you must create the DateFormat in a method. See <a shape="rect" href="#ReleaseNotes5.2-Tap5.2.0">Release Notes: Tapestry 5.2.0</a> (below) for
  details.</li><li><a shape="rect" class="external-link" href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/Link.html#toAbsoluteURI%28%29">Link.toAbsoluteURI()</a> now returns the absolute URL, which includes the scheme, hostname and possibly port (e.g., "http://example.com:8080/myapp/viewproduct/4"), rather than a relative URL (e.g., "/myapp/viewproduct/4"). See <a shape="rect" href="#ReleaseNotes5.2-Tap5.2.2">Release Notes: Tapestry 5.2.2</a> (below) for details.</li><li>The <a shape="rect" class="external-link" href="http://tapestry.apache.org/tapestry5.2-dev/tapestry-core/ref/org/apache/tapestry5/corelib/components/Label.html">Label</a> component no longer outputs an id:</li></ul><p>Previously valid code in 5.1.0.5:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[&lt;t:form&gt;&lt;t:label for=&quot;search&quot;/&gt;&lt;t:textfield t:id=&quot;search&quot; size=&quot;50&quot;/&gt;&lt;/t:form&gt;]]></script>
+</div></div><p>Combined with JavaScript that references the id:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="theme: Default; brush: js; gutter: false" type="syntaxhighlighter"><![CDATA[jQuery(&#39;#search-label&#39;).text(&#39;This is the search label&#39;);   ]]></script>
+</div></div><p>New JavaScript code for 5.2:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="theme: Default; brush: js; gutter: false" type="syntaxhighlighter"><![CDATA[jQuery(&#39;label[for=search]&#39;).text(&#39;This is the search label&#39;);]]></script>
+</div></div><ul><li>ContributeTranslatorSource compatibility is broken. Service 'TranslatorSource' is now configured using a MappedConfiguration, not a Configuration. See issue <a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/TAP5-1395">TAP5-1395</a></li><li>Code that uses Form.getDefaultTracker().getHasErrors()) fails if it assumes that getDefaultTracker() is not null when validation is successful. See issue <a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/TAP5-1401">TAPS-1401</a>.</li><li>Virtual folders, used to define root packages for component libraries, may no longer contain slashes.</li><li>The path prefix of a LibraryMapping may no longer contain the slash character.</li></ul><h2 id="ReleaseNotes5.2-ReleaseNotes:Tapestry5.2.6">Release Notes: Tapestry 5.2.6</h2><p>Tapestry 5.2.6 is a maintenance release.
 
-   <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[jQuery(&#39;label[for=search]&#39;).text(&#39;This is the search label&#39;);]]></script>
-</div></div>
-
-<ul><li>ContributeTranslatorSource compatibility is broken.  Service 'TranslatorSource' is now configured using a MappedConfiguration, not a Configuration. See issue <a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/TAP5-1395">TAP5-1395</a></li><li>Code that uses Form.getDefaultTracker().getHasErrors())  fails if it assumes that getDefaultTracker() is not null when validation is successful.  See issue <a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/TAP5-1401">TAPS-1401</a>.</li><li>Virtual folders, used to define root packages for component libraries, may no longer contain slashes.</li><li>The path prefix of a LibraryMapping may no longer contain the slash character.</li></ul>
-
-
-
-<h2 id="ReleaseNotes5.2-ReleaseNotes:Tapestry5.2.6">Release Notes: Tapestry 5.2.6</h2>
-Tapestry 5.2.6 is a maintenance release.
-
-<p></p><p>
+</p><p></p><p>
                 
 </p><h3>        Bugs Fixed
 </h3>
@@ -140,42 +110,29 @@ Tapestry 5.2.6 is a maintenance release.
 </li><li>[<a shape="rect" href="https://issues.apache.org/jira/browse/TAP5-1539">TAP5-1539</a>] -         Optimize document scans used by Tapestry.FieldEventManager to not locate the label or icon until actually needed
 </li></ul>
                                             
-<p></p>
+<p></p><h2 id="ReleaseNotes5.2-ReleaseNotes:Tapestry5.2.5">Release Notes: Tapestry 5.2.5</h2><p>Version 5.2.5 is a maintenance release for 5.2.4.
 
-<h2 id="ReleaseNotes5.2-ReleaseNotes:Tapestry5.2.5">Release Notes: Tapestry 5.2.5</h2>
-Version 5.2.5 is a maintenance release for 5.2.4.
-
-<h3 id="ReleaseNotes5.2-BugsFixed">Bugs Fixed</h3>
+</p><h3 id="ReleaseNotes5.2-BugsFixed">Bugs Fixed</h3>
 
 <ul><li><a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/TAP5-1372">TAP5-1372</a> - BaseURLSource uses getLocalPort() rather than getServerPort()</li></ul>
 
 
 <h3 id="ReleaseNotes5.2-ImprovementsMade">Improvements Made</h3>
 
-<ul><li><a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/TAP5-1040">TAP5-1040</a> - Allow HTML5 doctype to be printed</li><li><a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/TAP5-1208">TAP5-1208</a> - In development mode, Tapestry should "shadow" field &amp; parameter values to instance variables, to assist with debugging</li><li><a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/TAP5-1346">TAP5-1346</a> - Fix broken links on new Web Site</li></ul>
-
-<h2 id="ReleaseNotes5.2-ReleaseNotes:Tapestry5.2.4">Release Notes: Tapestry 5.2.4</h2>
-Version 5.2.4 replaces version <a shape="rect" href="release-notes-523.html">5.2.3</a>, which had an incorrect version number in the quickstart archetype.
+<ul><li><a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/TAP5-1040">TAP5-1040</a> - Allow HTML5 doctype to be printed</li><li><a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/TAP5-1208">TAP5-1208</a> - In development mode, Tapestry should "shadow" field &amp; parameter values to instance variables, to assist with debugging</li><li><a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/TAP5-1346">TAP5-1346</a> - Fix broken links on new Web Site</li></ul><h2 id="ReleaseNotes5.2-ReleaseNotes:Tapestry5.2.4">Release Notes: Tapestry 5.2.4</h2><p>Version 5.2.4 replaces version <a shape="rect" href="release-notes-523.html">5.2.3</a>, which had an incorrect version number in the quickstart archetype.
 
-<h3 id="ReleaseNotes5.2-ImprovementsMade.1">Improvements Made</h3>
+</p><h3 id="ReleaseNotes5.2-ImprovementsMade.1">Improvements Made</h3>
 
-<ul><li><a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/TAP5-1349">TAP5-1394</a> &#8211; The method parameter annotations are missing from Tapestry IoC proxies</li></ul>
-
-<h2 id="ReleaseNotes5.2-ReleaseNotes:Tapestry5.2.3">Release Notes: Tapestry 5.2.3</h2>
-<h3 id="ReleaseNotes5.2-BugsFixed.1">Bugs Fixed</h3>
+<ul><li><a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/TAP5-1349">TAP5-1394</a> &#8211; The method parameter annotations are missing from Tapestry IoC proxies</li></ul><h2 id="ReleaseNotes5.2-ReleaseNotes:Tapestry5.2.3">Release Notes: Tapestry 5.2.3</h2><p></p><h3 id="ReleaseNotes5.2-BugsFixed.1">Bugs Fixed</h3>
 
 <ul><li><a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/TAP5-1204">TAP5-1204</a> &#8211; tapestry-core JAR includes some compiled Groovy test scripts</li><li><a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/TAP5-1326">TAP5-1326</a> &#8211; Bug in ConcurrentBarrierTest</li><li><a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/TAP5-1327">TAP5-1327</a> &#8211; Tapestry IOC depends on SLF4J 1.5.6 which is not compatible with Hibernate 3.6 (which depends on 1.6.1)</li><li><a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/TAP5-1328">TAP5-1328</a> &#8211; Tapestry.ajaxRequest() fails when just parameters are provided, but not an onSuccess handler function</li><li><a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/TAP5-1330">TAP5-1330</a> &#8211; Position of Injected Stylesheets changed from 5.1 to 5.2</li><li><a shape="rect" class
 ="external-link" href="https://issues.apache.org/jira/browse/TAP5-1332">TAP5-1332</a> &#8211; In a multi-zone update, if the referenced Zone can not be found on the client, Tapestry stops updating Zones with no error</li><li><a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/TAP5-1334">TAP5-1334</a> &#8211; Id attribute of the @Decorate annotation should be optional</li><li><a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/TAP5-1345">TAP5-1345</a> &#8211; A supported locale name is only recognized in lower case</li></ul>
 
 
 <h3 id="ReleaseNotes5.2-ImprovementsMade.2">Improvements Made</h3>
 
-<ul><li><a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/TAP5-929">TAP5-929</a> &#8211; Implement sendRedirect() for TestableResponseImpl</li><li><a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/TAP5-1333">TAP5-1333</a> &#8211; Zone should implement an interface, BodyElement, that extends ClientElement and provides the body property</li><li><a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/TAP5-1341">TAP5-1341</a> &#8211; Improve page testing facilities</li><li><a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/TAP5-1342">TAP5-1342</a> &#8211; Provide convenient methods for Element and Document to find elements</li></ul>
-
-<p><span class="confluence-anchor-link" id="ReleaseNotes5.2-Tap5.2.2"></span></p>
-<h2 id="ReleaseNotes5.2-ReleaseNotes:Tapestry5.2.2">Release Notes: Tapestry 5.2.2</h2>
-It is now possible to generate an absolute URL from a Link object; an absolute URL includes the URL scheme, host, port number (if necessary) followed by the complete path.  This is useful in a number of situations, such as when generating a URL that may be e-mailed to an end user.
+<ul><li><a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/TAP5-929">TAP5-929</a> &#8211; Implement sendRedirect() for TestableResponseImpl</li><li><a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/TAP5-1333">TAP5-1333</a> &#8211; Zone should implement an interface, BodyElement, that extends ClientElement and provides the body property</li><li><a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/TAP5-1341">TAP5-1341</a> &#8211; Improve page testing facilities</li><li><a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/TAP5-1342">TAP5-1342</a> &#8211; Provide convenient methods for Element and Document to find elements</li></ul><p><span class="confluence-anchor-link" id="ReleaseNotes5.2-Tap5.2.2"></span></p><h2 id="ReleaseNotes5.2-ReleaseNotes:Tapestry5.2.2">Release Notes: Tapestry 5.2.2</h2><p>It is now possible to generate an absolute URL from a Link object; an 
 absolute URL includes the URL scheme, host, port number (if necessary) followed by the complete path.  This is useful in a number of situations, such as when generating a URL that may be e-mailed to an end user.
 
-<p>The semantics of the <code>Link.toAbsoluteURL()</code> method has changed; in prior releases it returned a complete URL (i.e., starting with a leading slash), and the method was typically used when generating an Ajax callback URL.  Starting in 5.2.2 this generates an absolute URL (as described above). In most cases, you should change code that invoked <code>toAbsoluteURL()</code> with a call to <code>toURL()</code> instead; because Tapestry no longer 'optimizes' URLs, this will work for Ajax cases as well.</p>
+</p><p>The semantics of the <code>Link.toAbsoluteURL()</code> method has changed; in prior releases it returned a complete URL (i.e., starting with a leading slash), and the method was typically used when generating an Ajax callback URL.  Starting in 5.2.2 this generates an absolute URL (as described above). In most cases, you should change code that invoked <code>toAbsoluteURL()</code> with a call to <code>toURL()</code> instead; because Tapestry no longer 'optimizes' URLs, this will work for Ajax cases as well.</p>
 
 <p>Deployed Tapestry applications often run behind a firewall, the available Request information about incoming hostname and port is often not accurate (it represents the private request from the firewall server to the application server, whereas the client uses a public request to the firewall server). When using absolute URLs, you will likely want to override the BaseURLSource service to provide accurate values that reflect your application's deployment.</p>
 
@@ -197,12 +154,9 @@ It is now possible to generate an absolu
 <h3 id="ReleaseNotes5.2-TasksCompleted">Tasks Completed</h3>
 
 <ul><li><a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/TAP5-1317">TAP5-1317</a> &#8211; Upgrade Hibernate dependency to latest, Hibernate 3.6.0.Final</li></ul>
+<h2 id="ReleaseNotes5.2-ReleaseNotes:Tapestry5.2.1">Release Notes: Tapestry 5.2.1</h2><p>Prior releases of Tapestry attempted to "optimize" URLs, by creating relative URLs where appropriate. Unfortunately, that caused its own problems with Ajax requests, since the base URL for an Ajax request is not the same as the base URL for the enclosing page.  In any case, this feature has been removed, all URLs are now complete URLs (they start with a leading slash, and include the context path and the additional path that describes the page, page activation context, etc.).
 
-
-<h2 id="ReleaseNotes5.2-ReleaseNotes:Tapestry5.2.1">Release Notes: Tapestry 5.2.1</h2>
-Prior releases of Tapestry attempted to "optimize" URLs, by creating relative URLs where appropriate. Unfortunately, that caused its own problems with Ajax requests, since the base URL for an Ajax request is not the same as the base URL for the enclosing page.  In any case, this feature has been removed, all URLs are now complete URLs (they start with a leading slash, and include the context path and the additional path that describes the page, page activation context, etc.).
-
-<p>As part of this change, the <em>internal</em> RequestPathOptimizer service has been removed.</p>
+</p><p>As part of this change, the <em>internal</em> RequestPathOptimizer service has been removed.</p>
 
 <h3 id="ReleaseNotes5.2-BugsFixed.3">Bugs Fixed</h3>
 
@@ -222,13 +176,9 @@ Prior releases of Tapestry attempted to 
 <h3 id="ReleaseNotes5.2-TasksCompleted.1">Tasks Completed</h3>
 
 <ul><li><a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/TAP5-1240">TAP5-1240</a> &#8211; Upgrade Hibernate dependencies to 3.5.4-Final</li><li><a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/TAP5-1267">TAP5-1267</a> &#8211; Remove the code that "optimizes" generated URLs as it is not always possible to know what the base URL is</li><li><a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/TAP5-1270">TAP5-1270</a> &#8211; Upgrade EasyMock dependency to version 3.0</li></ul>
+<p><span class="confluence-anchor-link" id="ReleaseNotes5.2-Tap5.2.0"></span></p><h2 id="ReleaseNotes5.2-ReleaseNotes:Tapestry5.2.0">Release Notes: Tapestry 5.2.0</h2><p>Tapestry 5.2.0 represents nearly a year of work past the prior stable release, 5.1.0.5.  For the most part, the upgrade is quite straight forward, but please read the notes below carefully.
 
-
-<p><span class="confluence-anchor-link" id="ReleaseNotes5.2-Tap5.2.0"></span></p>
-<h2 id="ReleaseNotes5.2-ReleaseNotes:Tapestry5.2.0">Release Notes: Tapestry 5.2.0</h2>
-Tapestry 5.2.0 represents nearly a year of work past the prior stable release, 5.1.0.5.  For the most part, the upgrade is quite straight forward, but please read the notes below carefully.
-
-<h3 id="ReleaseNotes5.2-LiveServiceReloading">Live Service Reloading</h3>
+</p><h3 id="ReleaseNotes5.2-LiveServiceReloading">Live Service Reloading</h3>
 
 <p>Tapestry 5.2.0 extends Tapestry's concept of live reloading of Java code into the service layer. In most cases, service implementations of your application will now live reload, seamlessly. See the <a shape="rect" href="frequently-asked-questions.html">FAQ</a> for some additional notes about live reloading.</p>
 
@@ -330,8 +280,6 @@ built-in translators. This will break ex
 <h3 id="ReleaseNotes5.2-TasksCompleted.2">Tasks Completed</h3>
 
 <ul><li><a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/TAP5-11">TAP5-11</a> &#8211; CookiesImplTest does specify a domain cookie with a domain not prefixed with a . (dot)</li><li><a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/TAP5-556">TAP5-556</a> &#8211; Fix TranslatorSourceImplTest</li><li><a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/TAP5-756">TAP5-756</a> &#8211; Add ioko-tapestry-commons to the related projects list</li><li><a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/TAP5-819">TAP5-819</a> &#8211; remove ide-specific files from all sub-modules and add them to svn:ignore</li><li><a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/TAP5-969">TAP5-969</a> &#8211; Method AbstractField.createDefaultParameterBinding() should be deprecated</li><li><a shape="rect" class="external-link" href="https://issues.apache.o
 rg/jira/browse/TAP5-976">TAP5-976</a> &#8211; Upgrade Spring dependencies to version 3.0.0.RELEASE</li><li><a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/TAP5-1081">TAP5-1081</a> &#8211; Remove formos references from 5.2.0 archetype</li><li><a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/TAP5-1087">TAP5-1087</a> &#8211; Upgrade TestNG dependencies to version 5.12.1</li><li><a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/TAP5-1134">TAP5-1134</a> &#8211; Upgrade Hibernate dependencies to 3.5.2</li><li><a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/TAP5-1195">TAP5-1195</a> &#8211; Rename annotations @QueryParameter and @QueryParameterMapped (both introduced in 5.2.0) to more mnemonic names</li></ul>
-
-
 <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;}

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 Sat Jan 18 21:21:01 2014
@@ -69,129 +69,13 @@ 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="limitations.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="limitations.html">Limitations</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="hibernate-support-faq.html">Hibernate Support FAQ</a></td><td colspan="1" rowspan="1" class="ScrollbarNextIcon"><a shape="rect" href="
 hibernate-support-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="SpecificErrorsFAQ-SpecificErrors">Specific Errors</h2>
-
-<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="aui-message warning shadowed information-macro">
+/*]]>*/</style><div class="Scrollbar"><table class="ScrollbarTable"><tr><td colspan="1" rowspan="1" class="ScrollbarPrevIcon"><a shape="rect" href="limitations.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="limitations.html">Limitations</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="hibernate-support-faq.html">Hibernate Support FAQ</a></td><td colspan="1" rowspan="1" class="ScrollbarNextIcon"><a shape="rect" href="
 hibernate-support-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="SpecificErrorsFAQ-SpecificErrors">Specific Errors</h2><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>co
 mponents</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="aui-message warning shadowed information-macro">
                             <span class="aui-icon icon-warning">Icon</span>
                 <div class="message-content">
-                            
-<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>
+                            <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 want 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><img class="confluence-embedded-image confluence-thumbnail" src="specific-errors-faq.thumbs/eclipse-permgen.png" data-image-src="/confluence/download/attachments/23334931/eclipse-permgen.png?version=1&amp;modificationDate=1293463219000&amp;api=v2"></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</p><p>&lt;style type='text/css'&gt;
-.FootnoteMarker, .FootnoteNum a {
-  background: transparent url(/confluence/download/resources/com.adaptavist.confluence.footnoteMacros:footnote/gfx/footnote.png) no-repeat top right;
-  padding: 1px 2px 0px 1px;
-  border-left: 1px solid #8898B8;
-  border-bottom: 1px solid #6B7C9B;
-  margin: 1px;
-  text-decoration: none;
-}
-.FootnoteNum a {
-  margin-top: 2px;
-  margin-right: 0px;
-}
-.FootnoteNum {
-  font-size: x-small;
-  text-align: right;
-  padding-bottom: 4px;
-}
-.footnote-th1 {
-  text-align: right;
-}
-.Footnote {
-  padding-left: 7px;
-  margin-bottom: 4px;
-  border: 1px none #DDDDDD;
-  writingMode: tb-rl;
-}
-.accessibility {
-     display: none;
-     visibility: hidden;
-}
-@media aural,braille,embossed {
-        .FootnoteMarker, .FootnoteNum a {
-         border: 1px solid #000000;
-         background: #ffffff none;
-    }
-    .accessibility {
-         display: run-in;
-         visibility: visible;
-    }
-}
-&lt;/style&gt;
-&lt;script type='text/javascript' language='JavaScript'&gt;
-//&lt;!--\n
-var effectInProgress = {};
-var despamEffect = function (id,effectType,duration) {
-  if ((effectInProgress[id]) || (typeof(Effect)=="undefined") || (typeof(Effect[effectType])=="undefined")) return;
-  new Effect[effectType](id);
-  effectInProgress[id]=true;
-  setTimeout('effectInProgress[\"'+id+'\"]=false;',duration*1000);
-};
-var oldFootnoteId = '';
-var footnoteHighlight = function(id,pulsateNum) {
-  if (oldFootnoteId!='') document.getElementById('Footnote'+oldFootnoteId).style['borderStyle'] = 'none';
-  oldFootnoteId = id;
-  document.getElementById('Footnote'+id).style['borderStyle'] = 'solid';
-  despamEffect('Footnote'+id,'Highlight',1)
-  if (pulsateNum) despamEffect('FootnoteNum'+id,'Pulsate',3)
-}
-var footnoteMarkerHighlight = function(id) {
-  if (oldFootnoteId!='') document.getElementById('Footnote'+oldFootnoteId).style['borderStyle'] = 'none';
-  oldFootnoteId = '';
-  despamEffect('FootnoteMarker'+id,'Pulsate',3)
-}
-//--&gt;
-&lt;/script&gt;
-
-<sup id="FootnoteMarker1">
-    <a shape="rect" class="FootnoteMarker" name="FootnoteMarker1" href="#Footnote1" onclick="footnoteHighlight(&quot;1&quot;,true);" alt="Footnote: Click here to display the footnote" title="Footnote: Click here to display the footnote">
-            1
-    </a>
-</sup>
-</p>  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 <em>first</em> loaded.<p></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>
-
-<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><tr name="Footnote1"><td colspan="1" rowspan="1" valign="top" class="FootnoteNum" headings="footnote-th1">
-        <a shape="rect" id="FootnoteNum1" href="#FootnoteMarker1" onclick="footnoteMarkerHighlight(&quot;1&quot;);" onmouseover="footnoteHighlight(&quot;1&quot;,false);" alt="Footnote: Click to return to reference in text" title="Footnote: Click to return to reference in text">
-            1
-        </a>
-      </td><td colspan="1" rowspan="1" valign="top" class="Footnote" id="Footnote1" width="100%" headings="footnote-th2">
-          The perfect is the enemy of the good.
-      </td></tr></tbody></table></p><p></p>
-<style type="text/css">/*<![CDATA[*/
+<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 e
 ither 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 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 configurat
 ion:</p><p><img class="confluence-embedded-image confluence-thumbnail" src="specific-errors-faq.thumbs/eclipse-permgen.png" data-image-src="/confluence/download/attachments/23334931/eclipse-permgen.png?version=1&amp;modificationDate=1293463219000&amp;api=v2"></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><s
 pan 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><p>&#160;</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;}