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 2017/09/16 02:22:41 UTC

svn commit: r1018228 [32/41] - in /websites/production/tapestry/content: ./ cache/

Modified: websites/production/tapestry/content/release-notes-54.html
==============================================================================
--- websites/production/tapestry/content/release-notes-54.html (original)
+++ websites/production/tapestry/content/release-notes-54.html Sat Sep 16 02:22:40 2017
@@ -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>
-      SyntaxHighlighter.defaults['toolbar'] = false;
-      SyntaxHighlighter.all();
-    </script>
   
   <link href="/styles/style.css" rel="stylesheet" type="text/css"/>
 
@@ -77,529 +67,1027 @@
       </div>
 
       <div id="content">
-                <div id="ConfluenceContent"><p>This is the consolidated list of changes between Tapestry versions 5.3 and 5.4. To upgrade to 5.4, most users who are not using deprecated features will be able to just update the dependency version in their Maven POM file or Gradle build script (or <a  href="download.html">download</a> the new JAR files) and the new version will just work, although the introduction of Bootstrap CSS will require some styling adjustments for most applications not already using Bootstrap. Please read carefully below before upgrading, and also review the <a  href="how-to-upgrade.html">How to Upgrade</a> instructions.</p><h2 id="ReleaseNotes5.4-IncompatibleAPIs">Incompatible APIs</h2><h3 id="ReleaseNotes5.4-JavaScriptSupport">JavaScriptSupport</h3><p>Some existing methods of JavaScriptSupport were changed from returning void, to returning the JavaScriptSupport instance, to allow for chaining of calls. This interface is consumed by end-user code, but not gen
 erally implemented by end-user code.</p><h2 id="ReleaseNotes5.4-BreakingFeatures">Breaking Features</h2><h3 id="ReleaseNotes5.4-ClassFactoryRemoved">ClassFactory Removed</h3><p>Tapestry's use of the <a  class="external-link" href="http://www.csg.is.titech.ac.jp/~chiba/javassist/" rel="nofollow">Javassist</a> bytecode library has been completely removed, along with many related services, such as <a  class="external-link" href="http://tapestry.apache.org/5.3/apidocs/org/apache/tapestry5/ioc/services/ClassFactory.html">ClassFactory</a>, that were deprecated in 5.3. Use <a  class="external-link" href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/ioc/services/PlasticProxyFactory.html">PlasticProxyFactory</a> instead. Most users will not be affected by this unless they relied on Tapestry's dependency on Javassist.</p><h3 id="ReleaseNotes5.4-ClientBehaviorSupportFunctionalityRemoved">ClientBehaviorSupport Functionality Removed</h3><p>This service collected details about 
 zone usage, including the client-side behavior associated with <code>FormFragment</code>s. This interface is only kept for binary compatibility in Tapestry 5.4; the implementation no longer does anything but throw exceptions and will be removed in 5.5 or later.</p><h3 id="ReleaseNotes5.4-FormInjectorRemoved">FormInjector Removed</h3><p>The FormInjector component was removed; it was intended for use only inside the AjaxFormLoop component (which was rewritten in 5.4 and no longer uses FormInjector). FormInjector was not widely used elsewhere, if it was used at all.</p><h3 id="ReleaseNotes5.4-MarkupWriterFactoryAPIChanged">MarkupWriterFactory API Changed</h3><p>The <a  class="external-link" href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/services/MarkupWriterFactory.html">MarkupWriterFactory</a> interface has 3 new methods, added to support the HTML5 rules for element endings. If you have any classes that <em>implement</em> MarkupWriterFactory (which is rare), the
 y'll need to be modified to implement the new methods. As noted in the <a  class="external-link" href="http://tapestry.apache.org/5.4/apidocs/org/apache/tapestry5/services/ClientBehaviorSupport.html">Javadocs</a>, use JavaScriptSupport directly instead.</p><h3 id="ReleaseNotes5.4-InjectedScriptsatBottom">Injected Scripts at Bottom</h3><p>In prior versions of Tapestry, JavaScript libraries injected into the page (via the @<a  class="external-link" href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/annotations/Import.html">Import</a> annotation, or via <a  class="external-link" href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/services/javascript/JavaScriptSupport.html">JavaScriptSupport</a>), were injected into the &lt;head&gt; element of the HTML page, either at the end of the element, or before any existing &lt;script&gt; element.</p><p>With this release, the Tapestry integrates with <a  class="external-link" href="http://requirejs.org/" rel="
 nofollow">RequireJS</a> to dynamically load libraries. This may affect a small number of JavaScript libraries, such as <a  class="external-link" href="http://www.google.com/analytics/" rel="nofollow">Google Analytics</a> that need to be placed at the top of the page; in those cases, the library should be added to the template of your application's main layout component, instead of relying on @Import and JavaScriptSupport.</p><h3 id="ReleaseNotes5.4-NoRedirectOnFormValidationErrors">No Redirect On Form Validation Errors</h3><p>In prior releases of Tapestry, when a client-side form was submitted and there were server-side validation errors, Tapestry would perform a redirect-after-post to re-render the page; this meant that the <a  class="external-link" href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/ValidationTracker.html">ValidationTracker</a> object that stores validation errors would, itself, need to persist to the new render request, causing a server-side ses
 sion to be created. Starting in 5.4, the default behavior for server-side validation exceptions is to re-render the page content immediately, within the same request; this obviates the need to use a persistent field to store the tracker.</p><h2 id="ReleaseNotes5.4-NewFeatures">New Features</h2><h3 id="ReleaseNotes5.4-Componentfieldvisibility">Component field visibility</h3><p>In prior versions of Tapestry, all instance fields of components had to be visibility private; starting with versions 5.3.2 and 5.4, this has been relaxed. Component fields may be protected, or package private (that is, no visibility modifier). Fields that are final, or annotated with @<a  class="external-link" href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/annotations/Retain.html">Retain</a> may even be public. In any case, this makes it easier for pages to work with other pages in the same package, and for subclasses to more easily access the fields (including parameter fields, or injec
 tions) provided by base classes. This feature should be used with care, as it can lead to designs that are more difficult to maintain.</p><h3 id="ReleaseNotes5.4-JavaScriptModules">JavaScript Modules</h3><p>Prior releases of Tapestry primarily organized client-side logic in terms of JavaScript libraries. These libraries can be declaratively imported into the page (either during a full-page render, or during an Ajax partial page update). In addition, libraries can be combined together into <em>stacks</em>, which (in a production application) are combined into a single virtual asset.</p><p>The library approach is <a  href="javascript-rewrite-in-54.html">fundamentally limited in a number of ways</a>, including namespace pollution and dealing with dependencies between libraries. Tapestry 5.4 introduces a parallel mechanism, based on <a  class="external-link" href="http://requirejs.org" rel="nofollow">RequireJS</a> and the <a  class="external-link" href="https://github.com/amdjs/amdjs-ap
 i/wiki/AMD" rel="nofollow">Asynchronous Module Definition</a> as a way to speed up initial page load and organize client-side JavaScript in a more expressive and maintainable way.</p><h3 id="ReleaseNotes5.4-Client-sideAPIforinvokingserver-sideevents">Client-side API for invoking server-side events</h3><p>Tapestry 5.4.2 adds an API which makes it easy for server-side events to be invoked from JavaScript. In the server-side, you first need to annotate the event handler methods you want exposed with the new&#160;<code>@PublishEvent</code> annotation. Then, in JS, all you need to do is to call the&#160;<code>t5/core/ajax</code>&#160;function with the server-side event name/type in the <code>url</code> parameter and&#160;with an&#160;<code>options</code> parameter containing an&#160;<code>element</code> property, be it null or specifying an DOM element to be used as the starting point for finding the event information. More details in the&#160;<a  class="external-link" href="http://tapes
 try.apache.org/ajax-and-zones.html">Ajax and Zones page</a>.</p><h2>        Sub-task
-</h2>
-<ul><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2445">TAP5-2445</a>] -         Reduce usage of PerthreadMap in AbstractConditional
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2446">TAP5-2446</a>] -         Use ObjectCreator instead of PerThreadValue when appropriate
-</li></ul>
+                <div id="ConfluenceContent"><p><plain-text-body>{scrollbar}</plain-text-body>This is the consolidated list of changes between Tapestry versions 5.3 and 5.4. To upgrade to 5.4, most users who are not using deprecated features will be able to just update the dependency version in their Maven POM file or Gradle build script (or <a  href="download.html">download</a> the new JAR files) and the new version will just work, although the introduction of Bootstrap CSS will require some styling adjustments for most applications not already using Bootstrap. Please read carefully below before upgrading, and also review the <a  href="how-to-upgrade.html">How to Upgrade</a> instructions.</p><h2 id="ReleaseNotes5.4-IncompatibleAPIs">Incompatible APIs</h2><h3 id="ReleaseNotes5.4-JavaScriptSupport">JavaScriptSupport</h3><p>Some existing methods of JavaScriptSupport were changed from returning void, to returning the JavaScriptSupport instance, to allow for chaining of calls. This inter
 face is consumed by end-user code, but not generally implemented by end-user code.</p><h2 id="ReleaseNotes5.4-BreakingFeatures">Breaking Features</h2><h3 id="ReleaseNotes5.4-ClassFactoryRemoved">ClassFactory Removed</h3><p>Tapestry's use of the <a  class="external-link" href="http://www.csg.is.titech.ac.jp/~chiba/javassist/" rel="nofollow">Javassist</a> bytecode library has been completely removed, along with many related services, such as <a  class="external-link" href="http://tapestry.apache.org/5.3/apidocs/org/apache/tapestry5/ioc/services/ClassFactory.html">ClassFactory</a>, that were deprecated in 5.3. Use <a  class="external-link" href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/ioc/services/PlasticProxyFactory.html">PlasticProxyFactory</a> instead. Most users will not be affected by this unless they relied on Tapestry's dependency on Javassist.</p><h3 id="ReleaseNotes5.4-ClientBehaviorSupportFunctionalityRemoved">ClientBehaviorSupport Functionality Remove
 d</h3><p>This service collected details about zone usage, including the client-side behavior associated with <code>FormFragment</code>s. This interface is only kept for binary compatibility in Tapestry 5.4; the implementation no longer does anything but throw exceptions and will be removed in 5.5 or later.</p><h3 id="ReleaseNotes5.4-FormInjectorRemoved">FormInjector Removed</h3><p>The FormInjector component was removed; it was intended for use only inside the AjaxFormLoop component (which was rewritten in 5.4 and no longer uses FormInjector). FormInjector was not widely used elsewhere, if it was used at all.</p><h3 id="ReleaseNotes5.4-MarkupWriterFactoryAPIChanged">MarkupWriterFactory API Changed</h3><p>The <a  class="external-link" href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/services/MarkupWriterFactory.html">MarkupWriterFactory</a> interface has 3 new methods, added to support the HTML5 rules for element endings. If you have any classes that <em>implement
 </em> MarkupWriterFactory (which is rare), they'll need to be modified to implement the new methods. As noted in the <a  class="external-link" href="http://tapestry.apache.org/5.4/apidocs/org/apache/tapestry5/services/ClientBehaviorSupport.html">Javadocs</a>, use JavaScriptSupport directly instead.</p><h3 id="ReleaseNotes5.4-InjectedScriptsatBottom">Injected Scripts at Bottom</h3><p>In prior versions of Tapestry, JavaScript libraries injected into the page (via the @<a  class="external-link" href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/annotations/Import.html">Import</a> annotation, or via <a  class="external-link" href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/services/javascript/JavaScriptSupport.html">JavaScriptSupport</a>), were injected into the &lt;head&gt; element of the HTML page, either at the end of the element, or before any existing &lt;script&gt; element.</p><p>With this release, the Tapestry integrates with <a  class="ext
 ernal-link" href="http://requirejs.org/" rel="nofollow">RequireJS</a> to dynamically load libraries. This may affect a small number of JavaScript libraries, such as <a  class="external-link" href="http://www.google.com/analytics/" rel="nofollow">Google Analytics</a> that need to be placed at the top of the page; in those cases, the library should be added to the template of your application's main layout component, instead of relying on @Import and JavaScriptSupport.</p><h3 id="ReleaseNotes5.4-NoRedirectOnFormValidationErrors">No Redirect On Form Validation Errors</h3><p>In prior releases of Tapestry, when a client-side form was submitted and there were server-side validation errors, Tapestry would perform a redirect-after-post to re-render the page; this meant that the <a  class="external-link" href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/ValidationTracker.html">ValidationTracker</a> object that stores validation errors would, itself, need to persist to the
  new render request, causing a server-side session to be created. Starting in 5.4, the default behavior for server-side validation exceptions is to re-render the page content immediately, within the same request; this obviates the need to use a persistent field to store the tracker.</p><h2 id="ReleaseNotes5.4-NewFeatures">New Features</h2><h3 id="ReleaseNotes5.4-Componentfieldvisibility">Component field visibility</h3><p>In prior versions of Tapestry, all instance fields of components had to be visibility private; starting with versions 5.3.2 and 5.4, this has been relaxed. Component fields may be protected, or package private (that is, no visibility modifier). Fields that are final, or annotated with @<a  class="external-link" href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/annotations/Retain.html">Retain</a> may even be public. In any case, this makes it easier for pages to work with other pages in the same package, and for subclasses to more easily access th
 e fields (including parameter fields, or injections) provided by base classes. This feature should be used with care, as it can lead to designs that are more difficult to maintain.</p><h3 id="ReleaseNotes5.4-JavaScriptModules">JavaScript Modules</h3><p>Prior releases of Tapestry primarily organized client-side logic in terms of JavaScript libraries. These libraries can be declaratively imported into the page (either during a full-page render, or during an Ajax partial page update). In addition, libraries can be combined together into <em>stacks</em>, which (in a production application) are combined into a single virtual asset.</p><p>The library approach is <a  href="javascript-rewrite-in-54.html">fundamentally limited in a number of ways</a>, including namespace pollution and dealing with dependencies between libraries. Tapestry 5.4 introduces a parallel mechanism, based on <a  class="external-link" href="http://requirejs.org" rel="nofollow">RequireJS</a> and the <a  class="external
 -link" href="https://github.com/amdjs/amdjs-api/wiki/AMD" rel="nofollow">Asynchronous Module Definition</a> as a way to speed up initial page load and organize client-side JavaScript in a more expressive and maintainable way.</p><h3 id="ReleaseNotes5.4-Client-sideAPIforinvokingserver-sideevents">Client-side API for invoking server-side events</h3><p>Tapestry 5.4.2 adds an API which makes it easy for server-side events to be invoked from JavaScript. In the server-side, you first need to annotate the event handler methods you want exposed with the new&#160;<code>@PublishEvent</code> annotation. Then, in JS, all you need to do is to call the&#160;<code>t5/core/ajax</code>&#160;function with the server-side event name/type in the <code>url</code> parameter and&#160;with an&#160;<code>options</code> parameter containing an&#160;<code>element</code> property, be it null or specifying an DOM element to be used as the starting point for finding the event information. More details in the&#16
 0;<a  class="external-link" href="http://tapestry.apache.org/ajax-and-zones.html">Ajax and Zones page</a>.<parameter ac:name="atlassian-macro-output-type">INLINE</parameter><plain-text-body>&lt;h2&gt;        Sub-task
+&lt;/h2&gt;
+&lt;ul&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-2445'&gt;TAP5-2445&lt;/a&gt;] -         Reduce usage of PerthreadMap in AbstractConditional
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-2446'&gt;TAP5-2446&lt;/a&gt;] -         Use ObjectCreator instead of PerThreadValue when appropriate
+&lt;/li&gt;
+&lt;/ul&gt;
                             
-<h2>        Bugs Fixed
-</h2>
-<ul><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-311">TAP5-311</a>] -         NPE in BeanDisplay if used in a form with a default model
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-736">TAP5-736</a>] -         TextField validate parameter allows Null, but throws NPE
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-773">TAP5-773</a>] -         Select component should have parameter to allow option labels to be rendered w/o HTML entity escaping
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-800">TAP5-800</a>] -         Server side error during provideCompletions event for Autocompleter mixin is not reported on the client side properly
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-805">TAP5-805</a>] -         DateField does not allow disabling of client-side validation, side-effects
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-860">TAP5-860</a>] -         JavaScript errors when adding validations to checkboxes
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-901">TAP5-901</a>] -         Generics return wrong type when subclassing page
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-983">TAP5-983</a>] -         CLONE -NPE in BeanDisplay if used in a form with a default model
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-986">TAP5-986</a>] -         A request can fail with an NPE in some cases, when a Tapestry page is acting as the servlet container error page
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1010">TAP5-1010</a>] -         Fix Finnish validation message translation - corrected file attached
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1066">TAP5-1066</a>] -         Client-Id and Links in Grid not correct when putting a Grid inside a Loop
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1193">TAP5-1193</a>] -         tapestry.js prevents using the back/forward browser cache
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1200">TAP5-1200</a>] -         Nested Ajax calls result in a call to $T(null)
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1305">TAP5-1305</a>] -         Service decorations can fail if using the conventional naming
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1480">TAP5-1480</a>] -         Couldn't create property conduits for generic interfaces
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1493">TAP5-1493</a>] -         Property expressions on properties that are covariant on a base class use the type of the base class property, not the covariant subclass
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1548">TAP5-1548</a>] -         Property expressions fails when using a supertype that implements an interface with a matching method
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1569">TAP5-1569</a>] -         Grid should implement the ClientElement interface
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1601">TAP5-1601</a>] -         Sometime a method that references a field with a conduit will not be instrumented, resulting in an NPE accessing the field itself
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1658">TAP5-1658</a>] -         Submit context does not work inside Grid
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1668">TAP5-1668</a>] -         JavaDoc for @Parameter.value() should be clearer about the empty string
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1672">TAP5-1672</a>] -         PropertyDisplay component will swallow NPEs when evaluating the property, leaving no clue about the actual NPE
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1689">TAP5-1689</a>] -         Grid pagination details should be overridable via a Grid parameter to support Grids that render in loops
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1691">TAP5-1691</a>] -         AssetPathConstructorImpl should URL-encode the application version
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1704">TAP5-1704</a>] -         Localizing the "Today" and "None" labels in the core datefield component
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1729">TAP5-1729</a>] -         Sometimes YUICompressor can fail with java.util.EmptyStackException
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1730">TAP5-1730</a>] -         Ajax Zone is improperly reloaded when a mixin submits form via JavaScript
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1734">TAP5-1734</a>] -         Race condition loading JavaScript libraries with ProgressiveDisplay
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1735">TAP5-1735</a>] -         Most packages lack package-level javadocs
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1736">TAP5-1736</a>] -         Overriding a base class abstract event handler method causes the sub-class method to be invoked twice
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1741">TAP5-1741</a>] -         Parsing template which contains Chinese (Maybe other double bytes) words throws MalformedByteSequenceException: Invalid byte 3 of 3-byte UTF-8 sequence.
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1742">TAP5-1742</a>] -         AfterRender() in Loop component should not short circuit
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1744">TAP5-1744</a>] -         Returning a StreamPageContent instance from any of a Form's events results in "Form components may not be placed inside other Form components" exception
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1752">TAP5-1752</a>] -         Component cannot receive any event in a case when transformer added event handler before OnEventWorker
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1762">TAP5-1762</a>] -         Some components do not have include a description of their parameters in their JavaDoc pages
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1765">TAP5-1765</a>] -         PerThread scope is not honored when service is created using autobuild
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1768">TAP5-1768</a>] -         @ActivationRequestParameter does not encode to be URL friendly
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1769">TAP5-1769</a>] -         Form submitted with an ajax request should not have the ValidationTracker persist values
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1770">TAP5-1770</a>] -         PageTester causes StringIndexOutOfBoundsException for any page request path with query parameter
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1773">TAP5-1773</a>] -         FormFieldFocus mixin passes control name, not client id, to JavaScriptSupport.autofocus()
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1778">TAP5-1778</a>] -         Template parsing dependent on JVM default charset
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1779">TAP5-1779</a>] -         Tapestry allows directory listing of assets via client browser
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1784">TAP5-1784</a>] -         Extra comma in tapestry-messages_de.js causes Internet Explorer to fail to work
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1785">TAP5-1785</a>] -         Exceptions while compressing JavaScript are not fully reported
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1787">TAP5-1787</a>] -         TextField should be usable with HTML5 type values (such as "number", "email", etc.)
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1788">TAP5-1788</a>] -         Service id 'environment' has already been defined by org.apache.tapestry5.services.TapestryModule with Spring 3.1
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1791">TAP5-1791</a>] -         On some JDKs, the complex regular expression used by ComponentEventLinkEncoderImpl will cause a stack overflow
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1795">TAP5-1795</a>] -         Validators exception in italian locale
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1798">TAP5-1798</a>] -         Grid and BeanDisplay should ignore properties that are actually static fields
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1802">TAP5-1802</a>] -         Component tracing check should check if there is a request
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1813">TAP5-1813</a>] -         Using StrategyBuilder service on an interface with a non-conforming method (one that does not include the selector as the initial parameter) throws an inscrutable ArrayIndexOutOfBounds exception
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1822">TAP5-1822</a>] -         LinkSecurity should be public, not internal, as it is used with the public Link interface
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1825">TAP5-1825</a>] -         Incorrect order of parameter in localization messages within ValidationMessages Italian lang
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1831">TAP5-1831</a>] -         DelegatingInjectionResources does not pass generic type information to its first delegate
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1836">TAP5-1836</a>] -         "LocalhostOnly" WhitelistAnalyzer check "0:0:0:0:0:0:0:1%0" ip address instead "0:0:0:0:0:0:0:1"
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1844">TAP5-1844</a>] -         Datefield not fires onchange event on changes
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1848">TAP5-1848</a>] -         tapestry-jpa ignores persistence provider from persistence.xml
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1854">TAP5-1854</a>] -         AjaxComponentEventRequestHandler doesn't handle the case where a response has already be returned, and may append an empty JSON Object to the response
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1860">TAP5-1860</a>] -         Access to protected component fields does not always reflect in subclasses
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1862">TAP5-1862</a>] -         DateField component: allow 'type' attribute to be specified
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1865">TAP5-1865</a>] -         Chinese valication message issue
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1868">TAP5-1868</a>] -         SRSCachingInterceptor returns compressed version of asset for all clients once it was compressed for some client
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1870">TAP5-1870</a>] -         javascript added while in the render phase of a component from an ajax request is never executed
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1873">TAP5-1873</a>] -         JavaScript execution exception is not logged
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1880">TAP5-1880</a>] -         GZip compression should be disabled if the request is over http 1.0
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1881">TAP5-1881</a>] -         TypeCoercion from Number to Boolean returns false for any number that is an even multiple of 256
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1885">TAP5-1885</a>] -         Error in PropertyAccess service
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1886">TAP5-1886</a>] -         DateField is not localized correctly
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1887">TAP5-1887</a>] -         Client-side JavaScript error if console.info/debug/... is available but not a function
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1890">TAP5-1890</a>] -         PlaceholderBlock should implement RenderCommand
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1892">TAP5-1892</a>] -         FormFragment validates non-displayed fragments (reopen)
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1903">TAP5-1903</a>] -         Client-side exception when a Zone containing a Form with an Upload component is re-rendered
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1906">TAP5-1906</a>] -         Interaction between client-side validation and submit buttons can result in a server-side error parsing JSON array
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1907">TAP5-1907</a>] -         Client exception in IE9 when partial page render introduces stylesheets
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1911">TAP5-1911</a>] -         Tree leaf is still not selectable
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1926">TAP5-1926</a>] -         PropertyDisplayBlocks Date's display block is not thread safe 
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1929">TAP5-1929</a>] -         High contention in method InternalComponentResourcesImpl.postRenderCleanup() and NamedSet.getValues()
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1931">TAP5-1931</a>] -         Alerts can not be dismissed in IE8.
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1933">TAP5-1933</a>] -         Email validation should use a different regular expression
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1934">TAP5-1934</a>] -         Kaptcha Component throws NPE after session is expired
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1935">TAP5-1935</a>] -         ContextResource uses a deprecated File.toURL
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1937">TAP5-1937</a>] -         removeCookieValue with custom path
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1938">TAP5-1938</a>] -         The ValueEncoder for JPA entity types should encode transient instances as null rather than throw an exception
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1941">TAP5-1941</a>] -         Alerts component can fail with ComponentEventException is dismiss event triggered outside of XHR request (e.g., by web crawler)
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1945">TAP5-1945</a>] -         Clojure integration breaks if tapestry-core is on the classpath
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1949">TAP5-1949</a>] -         Alerts component does not show alerts added from a component that occurs later in the template
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1950">TAP5-1950</a>] -         ResourceStreamer sends SC_NOT_MODIFIED as an error, but it should be just status
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1952">TAP5-1952</a>] -         JavaScript Compressor should log warnings as well as errors, and identify the input clearly
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1954">TAP5-1954</a>] -         ObjectLocator will return wrong service implementation delegate when using markers alone
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1956">TAP5-1956</a>] -         Tapestry.ZoneManager creates memory leaks
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1960">TAP5-1960</a>] -         @javax.annotations.Inject on a field, without @Named, does not inject service resources
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1963">TAP5-1963</a>] -         Original exception lost in CommitAfterWorker upon abort
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1964">TAP5-1964</a>] -         In production mode, placeholder timestamp needs to be limited to one-second accuracy
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1969">TAP5-1969</a>] -         Excessive warnings from YUICompressor
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1973">TAP5-1973</a>] -         In certain development cases when switching from insecure to secure, BaseURLSource will still include :443 in the URL
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1976">TAP5-1976</a>] -         XML Parser adds attributes with default values and produces invalid HTML5 markup
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1977">TAP5-1977</a>] -         Memory leak (perm gen) in component reloading
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1979">TAP5-1979</a>] -         Changing the implementation of a method after adding method advice does not work; the original implementation remains
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1981">TAP5-1981</a>] -         RadioGroup component validation error
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1983">TAP5-1983</a>] -         PerThreadManager does not cleanup on shutdown, can lead to memory leaks when application redeployed
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1984">TAP5-1984</a>] -         Adding alerts doesn't work during ajax rendering
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1985">TAP5-1985</a>] -         Clicking Alert component's "dismiss all" link scrolls to top of page
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1988">TAP5-1988</a>] -         Tapestry Security Violations
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1991">TAP5-1991</a>] -         YUICompressor should be less verbose about common warnings
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1992">TAP5-1992</a>] -         Switch YUICompressor dependency back to com.yahoo version 2.4.7
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-1995">TAP5-1995</a>] -         Tapestry5 Application can not be deployed as Tomcat7 HotDeploy Package
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2001">TAP5-2001</a>] -         Race condition while loading javascript file via ajax
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2004">TAP5-2004</a>] -         Tapestry-Ioc fails to build on Windows (ReloadTest.java)
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2008">TAP5-2008</a>] -         Serialized object data stored on the client should be HMAC signed and validated
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2009">TAP5-2009</a>] -         Downgrade bundled Prototype version back to 1.7
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2010">TAP5-2010</a>] -         Broken links in Javadoc pages
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2014">TAP5-2014</a>] -         Zone highlight leaves behind an explicit background-color which overrides css background-color
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2015">TAP5-2015</a>] -         Tomcat .war path is not decoded properly
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2017">TAP5-2017</a>] -         Triggerfragment Mixin does not work when used within a table element for IE7
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2020">TAP5-2020</a>] -         Tree label block should be rendered inside an heartbeat
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2025">TAP5-2025</a>] -         Duplicate generated ids
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2030">TAP5-2030</a>] -         @RequestParameter with Long fails with blank values even if allowBlank = true
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2034">TAP5-2034</a>] -         When the application operates with a context path, asset URLs are incorrectly formed
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2037">TAP5-2037</a>] -         ValidationTracker/Flash persistence race condition with AJAX
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2040">TAP5-2040</a>] -         TapestryAppInitializer should have access to system properties; this is a reversion in 5.4
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2041">TAP5-2041</a>] -         Links within subheadings are invisible on Javadoc pages 
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2044">TAP5-2044</a>] -         Misleading error message in logs when accessing classpath assets
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2045">TAP5-2045</a>] -         Set default CSS class for Label component to be "control-label", but allow overrides
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2047">TAP5-2047</a>] -         ElementWrapper#find jQuery implementation is broken if there is no match
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2049">TAP5-2049</a>] -         Tapestry should provide locking semantics for attributes stored in the session, to prevent multiple simultaneous requests (due to Ajax) from conflicting
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2052">TAP5-2052</a>] -         tapestry-ioc has a compile dependency on tapestry-test
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2053">TAP5-2053</a>] -         Use of 'transient' property in alert options breaks JavaScript processors
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2054">TAP5-2054</a>] -         `dom.js` implementations break when minified
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2057">TAP5-2057</a>] -         CSS URL rewriting is incomplete
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2061">TAP5-2061</a>] -         core_**.properties got wrong encoding
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2062">TAP5-2062</a>] -         Ajax alerts not rendered after a JS call to dismissOne()
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2064">TAP5-2064</a>] -         Add 'info' style to info alerts
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2068">TAP5-2068</a>] -         Use &lt;button&gt;, not &lt;a&gt;, tags for the close buttons on alerts
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2071">TAP5-2071</a>] -         Tapestry should output valid HTML5 when using the HTML5 doctype in templates
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2073">TAP5-2073</a>] -         AbstractEventContext always emits "null" regardless of what values are defined by subclass
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2078">TAP5-2078</a>] -         Disabled RadioGroup calls setter on Form Submit
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2079">TAP5-2079</a>] -         Tapestry should handle the case where the context path is (incorrectly) "/" (not the empty string)
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2081">TAP5-2081</a>] -         datefield: cannot blank out date value via text input
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2082">TAP5-2082</a>] -         When the last alert that is removed is transient, the outer container is not removed
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2083">TAP5-2083</a>] -         Failing to load asset / stylesheet with @Import annotation in subclassed component
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2084">TAP5-2084</a>] -         Form should decode its link parameters
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2087">TAP5-2087</a>] -         Checkboxes in forms always return "on" (considered as "checked" server-side)
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2089">TAP5-2089</a>] -         JavaScript errors when using Autocomplete mixin
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2092">TAP5-2092</a>] -         Tapestry-mongodb has a compile dependency on tapestry-test
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2095">TAP5-2095</a>] -         Module assets should not be sent a far-future expires header
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2096">TAP5-2096</a>] -         JBoss 4.2.3 Classpath scanning fails for nested paths
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2100">TAP5-2100</a>] -         ZoneRefresh mixin triggers refresh event with wrong context
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2101">TAP5-2101</a>] -         BeanEditor should always provide a new BeanValidationContext (JSR-303)
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2103">TAP5-2103</a>] -         ElementWrapper#text() jQuery implementation does not work
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2106">TAP5-2106</a>] -         Tapestry incorrectly rewrites CSS urls in a variety of cases
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2108">TAP5-2108</a>] -         BeanEditForm's cancel button triggers "success" event
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2109">TAP5-2109</a>] -         &lt;t:content&gt; ignores text just before the closing tag
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2110">TAP5-2110</a>] -         MinLength and MaxLength validators don't import "t5/core/validation"
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2111">TAP5-2111</a>] -         ZoneRefresh doesn't document/declare its 'refresh' event
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2119">TAP5-2119</a>] -         Depenencies excluded in Gradle build files are not excluded in the generated Maven POMs
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2120">TAP5-2120</a>] -         StringIndexOutOfBoundsException computing relative paths for certain Resources
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2121">TAP5-2121</a>] -         Broken image (for Tapestry Logo) in generated documentation page
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2122">TAP5-2122</a>] -         visible() on empty &lt;div&gt; is false; prevents valiation of Palette component
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2124">TAP5-2124</a>] -         events.zone.refresh must be triggered directly on zone element, can fail otherwise
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2125">TAP5-2125</a>] -         Ajax form submissions via jQuery may pass t:formdata as "t:formdata[]" if there are multiple values
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2126">TAP5-2126</a>] -         TAP5-2063 fix (multi-valued parameters in Link) conflicts with use of ActivationRequestParameter and PageLink.parameters parameter
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2128">TAP5-2128</a>] -         @Import leads to StringIndexOutOfBoundsException
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2130">TAP5-2130</a>] -         Services interfaces that inherit from "Runnable" cause @Startup methods being called twice
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2132">TAP5-2132</a>] -         Generation of documentation for t5/core/dom should use the split (for jQuery, for Prototype) files, not the combined source file
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2133">TAP5-2133</a>] -         DefaultRequestExceptionHandler swallows exceptions
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2135">TAP5-2135</a>] -         @Cache annotation converts thrown checked exceptions into RuntimeExceptions
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2137">TAP5-2137</a>] -         Tree component renders empty nodes as expandable, AssertionError when expanded
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2141">TAP5-2141</a>] -         Ajax form submission should ignore fields with no name
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2142">TAP5-2142</a>] -         Exceptions thrown during Ajax processing or validation force a traditional form submission
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2148">TAP5-2148</a>] -         VersionUtils should close the stream it opens
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2154">TAP5-2154</a>] -         Environment keys with empty associated stacks should not be listed as available
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2158">TAP5-2158</a>] -         Client-side validation of @Size is not working when only min or max is set
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2160">TAP5-2160</a>] -         Button type submit should be ignored in ajax form submission just like input type submit
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2163">TAP5-2163</a>] -         Adapt DateField style to Bootstrap 3
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2165">TAP5-2165</a>] -         Resource name case check breaks applications on windows
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2166">TAP5-2166</a>] -         Wrong layout of textfield with Autocomplete mixin
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2167">TAP5-2167</a>] -         Asset location warnings are actually coded as errors
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2168">TAP5-2168</a>] -         Asset Not Found messages are prompting to put assets into wrong location
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2169">TAP5-2169</a>] -         Core stack is not included by default
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2171">TAP5-2171</a>] -         LinkSubmit Broken With Client-side Validation
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2177">TAP5-2177</a>] -         The Errors component may output the same message multiple times
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2178">TAP5-2178</a>] -         Can get a servlet error 500 if a page can not be assembled due to new link back to page
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2179">TAP5-2179</a>] -         The Select component can be hacked to select a value not in the SelectModel
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2180">TAP5-2180</a>] -         SeleniumTestCase assumes that Selenium Server runs on the default port
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2182">TAP5-2182</a>] -         BeanEditor should be more flexible in the markup it generates (was BeanEditor doesn't look as good in T5.4 as in T5.3)
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2183">TAP5-2183</a>] -         5.4 Linksubmit does not generate events with Bootstrap glyphicon
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2184">TAP5-2184</a>] -         Select component fails validation due to type mismatch when using  model generated from String
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2185">TAP5-2185</a>] -         Problem with the asset checksums and relative paths based on them
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2187">TAP5-2187</a>] -         CSS relative URL rewriting isn't lenient enough
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2188">TAP5-2188</a>] -         Typo &amp; Java Script error in Upload component / JavaScript module "injected-uploader.js"
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2189">TAP5-2189</a>] -         Upload component does not override the isRequired method
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2197">TAP5-2197</a>] -         @Import without stack puts imported stylesheet before the core stack ones
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2200">TAP5-2200</a>] -         Generating XML from pages and templates is not possible anymore
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2204">TAP5-2204</a>] -         Select component fails if SelectModel doesn't exist on submit
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2206">TAP5-2206</a>] -         support parsing of JPA 2.x definitions
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2212">TAP5-2212</a>] -         If component example contains a pagelink with wrong parameter name/type
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2218">TAP5-2218</a>] -         Update bundled Bootstrap to 3.0.2
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2219">TAP5-2219</a>] -         XML-Parsing broken if system encoding is not UTF-8
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2221">TAP5-2221</a>] -         Aggregated JavaScript stacks are not passed through the JavaScript minimizer
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2223">TAP5-2223</a>] -         New "secure" flag in Select component has a bug when using option groups
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2226">TAP5-2226</a>] -         Replace kaptcha dependency with maintained version com.github.axet:kaptcha:0.0.8
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2227">TAP5-2227</a>] -         Update Less4J to version 1.2.1 for compatibility with Bootstrap 3.0.2
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2228">TAP5-2228</a>] -         Ajaxformloop.js gives a javascript error on "add row" in jquery mode
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2230">TAP5-2230</a>] -         AjaxFormLoop Add Row Broken
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2231">TAP5-2231</a>] -         Ajax form submits all possible radio values
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2232">TAP5-2232</a>] -         Element#addClassName can create an additional new 'class' attribute
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2233">TAP5-2233</a>] -         AjaxFormLoop: rowvalue missing when removeRowLink is not plain text
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2234">TAP5-2234</a>] -         Refreshing the browser in Eclipse on Windows sometimes fails with a locking exception
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2236">TAP5-2236</a>] -         It should be possible to determine when there are active Ajax requests
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2237">TAP5-2237</a>] -         t5/core/alert module - wrong default CSS class for alert
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2243">TAP5-2243</a>] -         T5.4 tapestry-core integration test app1/xmlcontent page fails
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2245">TAP5-2245</a>] -         select component: selected option is not listed in the model.
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2246">TAP5-2246</a>] -         Internet Explorer 8 JavaScript Error in pageinit.js / development mode
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2249">TAP5-2249</a>] -         Rendering an empty If component can cause a RenderQueueException
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2256">TAP5-2256</a>] -         Sorting is broken for Grid inline="true" in a loop
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2257">TAP5-2257</a>] -         Missing in tapestry-core jar two pictures: expand.png and collapse.png
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2262">TAP5-2262</a>] -         IOC bind method does not allow specification of multiple markers
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2264">TAP5-2264</a>] -         ResponseCompressionAnalyzerImpl ignores 'tapestry.supress-compression' request attribute for assets and modules
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2266">TAP5-2266</a>] -         @code JavaDoc is stripped entirely from component reference output
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2267">TAP5-2267</a>] -         Contributing ExceptionHandlerAssistant instances to RequestExceptionHandler is broken
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2268">TAP5-2268</a>] -         @Property may generate a method that conflicts with an existing one, without error, and with unpredictable results
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2269">TAP5-2269</a>] -         Client persistence strategy does not detect changes to internal state of mutable objects
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2270">TAP5-2270</a>] -         BeanDisplay exception when used inside a Form
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2271">TAP5-2271</a>] -         Glyphyicon component should support informal parameters
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2272">TAP5-2272</a>] -         IE8 Breaks in use of ownerNode in pageinit.js
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2273">TAP5-2273</a>] -         TapestryIOCJunit4ClassRunner
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2275">TAP5-2275</a>] -         Kaptcha setting invalid caching response headers
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2278">TAP5-2278</a>] -         ModuleDispatcher should send 404 response when the request includes the prefix, but not a valid module path
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2279">TAP5-2279</a>] -         Returning a link from Ajax event does not cause refresh if URL is the same
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2282">TAP5-2282</a>] -         Email validator error
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2285">TAP5-2285</a>] -         Tapestry-Hibernate hibernate-core-4.1.2 mysql bug
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2293">TAP5-2293</a>] -         Closure minimizer produces invalid output on non-UTF-8 systems
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2294">TAP5-2294</a>] -         Wrong line endings in app startup messages on Windows
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2296">TAP5-2296</a>] -         Upgrade Hibernate dependencies to current version 4.3.1.Final
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2298">TAP5-2298</a>] -         "Any" component  lacks any useful documentation
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2300">TAP5-2300</a>] -         JavaScriptSupport.addInitializerCall is not backwards compatible
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2303">TAP5-2303</a>] -         Navigation control in Layout component not rendering properly 5.4beta3 quickstart app
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2306">TAP5-2306</a>] -         Mixin parameters should be qualified (with the new 5.4 DTD)
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2307">TAP5-2307</a>] -         Client validation does not shift focus to the (first) field in error
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2308">TAP5-2308</a>] -         TriggerFragment mixin is not working if it is applied for a field in a beaneditor
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2311">TAP5-2311</a>] -         [5.4-beta-3] Fail to Reload page in a directory: / converted to $002f
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2317">TAP5-2317</a>] -         AbstractFlow.count() thows StackOverflowError for large Flows
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2324">TAP5-2324</a>] -         Tapestry may send a 304 response to a browser that has an asset who minimized/non-minimized state does not match the server's configuration
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2330">TAP5-2330</a>] -         NullPointerException when updating a Zone with no clientId
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2331">TAP5-2331</a>] -         Can't stop tapestry generating clientId for fields
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2338">TAP5-2338</a>] -         Console is always visible in IE8 when running production-mode=false
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2339">TAP5-2339</a>] -         Ajax exception frame complains about "Function expected" in IE8
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2342">TAP5-2342</a>] -         NPE on org.apache.tapestry5.json.JSONObject.printValue(JSONObject.java:950)
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2344">TAP5-2344</a>] -         text assets (including modules and stacks) should assume a utf-8 charset, and incude ;charset=utf-8 in the response content type
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2351">TAP5-2351</a>] -         Missing Bootstrap CSS Source Map
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2359">TAP5-2359</a>] -         LinkSubmit submits form twice on Internet Explorer 11/Windows 8.1
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2361">TAP5-2361</a>] -         Overriding the default Bootstrap files can make exception report or dashboard pages unreadable
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2362">TAP5-2362</a>] -         Client-side regular expression field validation should ensure that the entire value matches the pattern
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2364">TAP5-2364</a>] -         Tapestry can use prohibited operations in some environments, such as Google App Engine
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2365">TAP5-2365</a>] -         PlasticUtilsTests."Do not urlencode file paths" fails when using openjdk7
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2370">TAP5-2370</a>] -         [JavaScript][utils] startsWith method unexpected behavior.
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2377">TAP5-2377</a>] -         ComponentClassResolver should ensure that page names, component types, mixin names uniquely identify a single class
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2380">TAP5-2380</a>] -         [JavaScript][t5/core/dom] missused target on eventlink
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2385">TAP5-2385</a>] -         Grid renders a new zone div on every zone refresh.
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2388">TAP5-2388</a>] -         Impossible to show error page after component id not found
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2391">TAP5-2391</a>] -         Field-specific error not shown when AJAX used
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2392">TAP5-2392</a>] -         ExceptionReporterImpl makes use of org.apache.commons.io, even though not a compile dependency
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2396">TAP5-2396</a>] -         DefaultExceptionHandler doesn't currently recognize TapestryException
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2399">TAP5-2399</a>] -         SeleniumTestCase.waitForAjaxRequestsToComplete() not working when using Prototype
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2401">TAP5-2401</a>] -         regexp validator client side validation cannot be disabled
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2402">TAP5-2402</a>] -         autocomplete typeahead suggestions appear/disappear with keystrokes
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2406">TAP5-2406</a>] -         PeriodicExecutor service can rarely reach a deadlock when trying to run a job and modify the list of jobs
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2408">TAP5-2408</a>] -         upload component doesn't render class="form-control"
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2411">TAP5-2411</a>] -         Tapestry webapp leaks a ThreadLocal
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2417">TAP5-2417</a>] -         client-side email validator is case sensitive
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2418">TAP5-2418</a>] -         wrong german error string for email validator
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2420">TAP5-2420</a>] -         Confirm mixin has issues related to keyboard navigation
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2421">TAP5-2421</a>] -         VerifyError when adding advice to method with Error or RuntimeException in throws signature
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2424">TAP5-2424</a>] -         Application folder doesn't support "sub folders" (slash in path)
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2430">TAP5-2430</a>] -         CompressionAnalyzer should provide a reasonable exception when the content type is null
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2435">TAP5-2435</a>] -         Tapestry's internal pages should always use the packaged version of bootstrap, not any applicaton override
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2437">TAP5-2437</a>] -         NullPointerException when trying to access (read or write) Grid's currentPage
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2440">TAP5-2440</a>] -         mixin autocomplete work not correct if user input is required
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2442">TAP5-2442</a>] -         CheckList component ignores disabled parameter
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2448">TAP5-2448</a>] -         Asset.getClientURL() throws NPE if the Asset is a Folder within a SubModule JAR file
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2450">TAP5-2450</a>] -         Changes for TAP5-2445 broke AbstractConditional components
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2451">TAP5-2451</a>] -         tapestry-ioc-jcache tests aren't run by Jenkins
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2452">TAP5-2452</a>] -         Bug in CaseInsensitiveMap
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2455">TAP5-2455</a>] -         One-off and past CronSchedule jobs never get ended in PeriodicExecutor
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2459">TAP5-2459</a>] -         Setter in subinterface of getter's interface not found by tapestry
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2462">TAP5-2462</a>] -         Parent component should be able to reset a Grid regardless of its internal state
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2463">TAP5-2463</a>] -         ResponseWrapper dont work correctly in dom,js
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2466">TAP5-2466</a>] -         Include tapestry-ioc-jcache =&gt; Construction of service 'AssetObjectProvider' has failed due to recursion
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2469">TAP5-2469</a>] -         RegistryImpl#loggerForBuiltinService : "Class.toString" used as logger name
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2470">TAP5-2470</a>] -         RuntimeException when t:add property to a grid and fetching the model before grids setup render
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2471">TAP5-2471</a>] -         DefaultRequestExceptionHandler creating absolute links for xhr request
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2474">TAP5-2474</a>] -         AnnotationFormatError if service interface and implementation methods are annotated
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2475">TAP5-2475</a>] -         Form Field in Loop : on validation error all field get the same value
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2480">TAP5-2480</a>] -         FormFragment can't be used in conjunction with HTML5 support
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2482">TAP5-2482</a>] -         BeanEditForm field name regression introduced with 5.4-beta-31
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2486">TAP5-2486</a>] -         IOOperation descriptions do not show up in the operation trace
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2487">TAP5-2487</a>] -         t:extension-point declaration in tapestry_*.xsd's have never been correct
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2490">TAP5-2490</a>] -         Autocomplete and Select context values does not work when context has to pass through a value encoder
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2495">TAP5-2495</a>] -         NullPointerException in EnumSelectModel for invalid PropertyModel
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2496">TAP5-2496</a>] -         Inconsistent behavior of EnumValueEncoder 
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2503">TAP5-2503</a>] -         Confirm Mixin does not work with Prototype
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2504">TAP5-2504</a>] -         FormTests.datefield_leniency() fails with Prototype
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2508">TAP5-2508</a>] -         Page activation method not always called since t54-beta33
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2509">TAP5-2509</a>] -         Regression with radiogroup label in 5.4-beta-37
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2515">TAP5-2515</a>] -         Grid's empty parameter is not used if renderTableIfEmpty is true
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2516">TAP5-2516</a>] -         ArrayIndexOutOfBoundsException when trying to report a template parsing error
-</li><li>[<a  href="https://issues.apache.org/jira/browse/TAP5-2517">TAP5-2517</a>] -         Wrong exception reported for duplicate classpath resource
-</li></ul>
+&lt;h2&gt;        Bugs Fixed
+&lt;/h2&gt;
+&lt;ul&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-311'&gt;TAP5-311&lt;/a&gt;] -         NPE in BeanDisplay if used in a form with a default model
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-736'&gt;TAP5-736&lt;/a&gt;] -         TextField validate parameter allows Null, but throws NPE
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-773'&gt;TAP5-773&lt;/a&gt;] -         Select component should have parameter to allow option labels to be rendered w/o HTML entity escaping
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-800'&gt;TAP5-800&lt;/a&gt;] -         Server side error during provideCompletions event for Autocompleter mixin is not reported on the client side properly
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-805'&gt;TAP5-805&lt;/a&gt;] -         DateField does not allow disabling of client-side validation, side-effects
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-860'&gt;TAP5-860&lt;/a&gt;] -         JavaScript errors when adding validations to checkboxes
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-901'&gt;TAP5-901&lt;/a&gt;] -         Generics return wrong type when subclassing page
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-983'&gt;TAP5-983&lt;/a&gt;] -         CLONE -NPE in BeanDisplay if used in a form with a default model
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-986'&gt;TAP5-986&lt;/a&gt;] -         A request can fail with an NPE in some cases, when a Tapestry page is acting as the servlet container error page
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1010'&gt;TAP5-1010&lt;/a&gt;] -         Fix Finnish validation message translation - corrected file attached
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1066'&gt;TAP5-1066&lt;/a&gt;] -         Client-Id and Links in Grid not correct when putting a Grid inside a Loop
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1193'&gt;TAP5-1193&lt;/a&gt;] -         tapestry.js prevents using the back/forward browser cache
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1200'&gt;TAP5-1200&lt;/a&gt;] -         Nested Ajax calls result in a call to $T(null)
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1305'&gt;TAP5-1305&lt;/a&gt;] -         Service decorations can fail if using the conventional naming
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1480'&gt;TAP5-1480&lt;/a&gt;] -         Couldn&amp;#39;t create property conduits for generic interfaces
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1493'&gt;TAP5-1493&lt;/a&gt;] -         Property expressions on properties that are covariant on a base class use the type of the base class property, not the covariant subclass
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1548'&gt;TAP5-1548&lt;/a&gt;] -         Property expressions fails when using a supertype that implements an interface with a matching method
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1569'&gt;TAP5-1569&lt;/a&gt;] -         Grid should implement the ClientElement interface
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1601'&gt;TAP5-1601&lt;/a&gt;] -         Sometime a method that references a field with a conduit will not be instrumented, resulting in an NPE accessing the field itself
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1658'&gt;TAP5-1658&lt;/a&gt;] -         Submit context does not work inside Grid
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1668'&gt;TAP5-1668&lt;/a&gt;] -         JavaDoc for @Parameter.value() should be clearer about the empty string
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1672'&gt;TAP5-1672&lt;/a&gt;] -         PropertyDisplay component will swallow NPEs when evaluating the property, leaving no clue about the actual NPE
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1689'&gt;TAP5-1689&lt;/a&gt;] -         Grid pagination details should be overridable via a Grid parameter to support Grids that render in loops
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1691'&gt;TAP5-1691&lt;/a&gt;] -         AssetPathConstructorImpl should URL-encode the application version
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1704'&gt;TAP5-1704&lt;/a&gt;] -         Localizing the &amp;quot;Today&amp;quot; and &amp;quot;None&amp;quot; labels in the core datefield component
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1729'&gt;TAP5-1729&lt;/a&gt;] -         Sometimes YUICompressor can fail with java.util.EmptyStackException
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1730'&gt;TAP5-1730&lt;/a&gt;] -         Ajax Zone is improperly reloaded when a mixin submits form via JavaScript
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1734'&gt;TAP5-1734&lt;/a&gt;] -         Race condition loading JavaScript libraries with ProgressiveDisplay
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1735'&gt;TAP5-1735&lt;/a&gt;] -         Most packages lack package-level javadocs
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1736'&gt;TAP5-1736&lt;/a&gt;] -         Overriding a base class abstract event handler method causes the sub-class method to be invoked twice
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1741'&gt;TAP5-1741&lt;/a&gt;] -         Parsing template which contains Chinese (Maybe other double bytes) words throws MalformedByteSequenceException: Invalid byte 3 of 3-byte UTF-8 sequence.
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1742'&gt;TAP5-1742&lt;/a&gt;] -         AfterRender() in Loop component should not short circuit
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1744'&gt;TAP5-1744&lt;/a&gt;] -         Returning a StreamPageContent instance from any of a Form&amp;#39;s events results in &amp;quot;Form components may not be placed inside other Form components&amp;quot; exception
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1752'&gt;TAP5-1752&lt;/a&gt;] -         Component cannot receive any event in a case when transformer added event handler before OnEventWorker
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1762'&gt;TAP5-1762&lt;/a&gt;] -         Some components do not have include a description of their parameters in their JavaDoc pages
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1765'&gt;TAP5-1765&lt;/a&gt;] -         PerThread scope is not honored when service is created using autobuild
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1768'&gt;TAP5-1768&lt;/a&gt;] -         @ActivationRequestParameter does not encode to be URL friendly
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1769'&gt;TAP5-1769&lt;/a&gt;] -         Form submitted with an ajax request should not have the ValidationTracker persist values
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1770'&gt;TAP5-1770&lt;/a&gt;] -         PageTester causes StringIndexOutOfBoundsException for any page request path with query parameter
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1773'&gt;TAP5-1773&lt;/a&gt;] -         FormFieldFocus mixin passes control name, not client id, to JavaScriptSupport.autofocus()
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1778'&gt;TAP5-1778&lt;/a&gt;] -         Template parsing dependent on JVM default charset
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1779'&gt;TAP5-1779&lt;/a&gt;] -         Tapestry allows directory listing of assets via client browser
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1784'&gt;TAP5-1784&lt;/a&gt;] -         Extra comma in tapestry-messages_de.js causes Internet Explorer to fail to work
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1785'&gt;TAP5-1785&lt;/a&gt;] -         Exceptions while compressing JavaScript are not fully reported
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1787'&gt;TAP5-1787&lt;/a&gt;] -         TextField should be usable with HTML5 type values (such as &amp;quot;number&amp;quot;, &amp;quot;email&amp;quot;, etc.)
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1788'&gt;TAP5-1788&lt;/a&gt;] -         Service id &amp;#39;environment&amp;#39; has already been defined by org.apache.tapestry5.services.TapestryModule with Spring 3.1
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1791'&gt;TAP5-1791&lt;/a&gt;] -         On some JDKs, the complex regular expression used by ComponentEventLinkEncoderImpl will cause a stack overflow
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1795'&gt;TAP5-1795&lt;/a&gt;] -         Validators exception in italian locale
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1798'&gt;TAP5-1798&lt;/a&gt;] -         Grid and BeanDisplay should ignore properties that are actually static fields
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1802'&gt;TAP5-1802&lt;/a&gt;] -         Component tracing check should check if there is a request
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1813'&gt;TAP5-1813&lt;/a&gt;] -         Using StrategyBuilder service on an interface with a non-conforming method (one that does not include the selector as the initial parameter) throws an inscrutable ArrayIndexOutOfBounds exception
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1822'&gt;TAP5-1822&lt;/a&gt;] -         LinkSecurity should be public, not internal, as it is used with the public Link interface
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1825'&gt;TAP5-1825&lt;/a&gt;] -         Incorrect order of parameter in localization messages within ValidationMessages Italian lang
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1831'&gt;TAP5-1831&lt;/a&gt;] -         DelegatingInjectionResources does not pass generic type information to its first delegate
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1836'&gt;TAP5-1836&lt;/a&gt;] -         &amp;quot;LocalhostOnly&amp;quot; WhitelistAnalyzer check &amp;quot;0:0:0:0:0:0:0:1%0&amp;quot; ip address instead &amp;quot;0:0:0:0:0:0:0:1&amp;quot;
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1844'&gt;TAP5-1844&lt;/a&gt;] -         Datefield not fires onchange event on changes
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1848'&gt;TAP5-1848&lt;/a&gt;] -         tapestry-jpa ignores persistence provider from persistence.xml
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1854'&gt;TAP5-1854&lt;/a&gt;] -         AjaxComponentEventRequestHandler doesn&amp;#39;t handle the case where a response has already be returned, and may append an empty JSON Object to the response
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1860'&gt;TAP5-1860&lt;/a&gt;] -         Access to protected component fields does not always reflect in subclasses
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1862'&gt;TAP5-1862&lt;/a&gt;] -         DateField component: allow &amp;#39;type&amp;#39; attribute to be specified
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1865'&gt;TAP5-1865&lt;/a&gt;] -         Chinese valication message issue
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1868'&gt;TAP5-1868&lt;/a&gt;] -         SRSCachingInterceptor returns compressed version of asset for all clients once it was compressed for some client
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1870'&gt;TAP5-1870&lt;/a&gt;] -         javascript added while in the render phase of a component from an ajax request is never executed
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1873'&gt;TAP5-1873&lt;/a&gt;] -         JavaScript execution exception is not logged
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1880'&gt;TAP5-1880&lt;/a&gt;] -         GZip compression should be disabled if the request is over http 1.0
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1881'&gt;TAP5-1881&lt;/a&gt;] -         TypeCoercion from Number to Boolean returns false for any number that is an even multiple of 256
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1885'&gt;TAP5-1885&lt;/a&gt;] -         Error in PropertyAccess service
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1886'&gt;TAP5-1886&lt;/a&gt;] -         DateField is not localized correctly
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1887'&gt;TAP5-1887&lt;/a&gt;] -         Client-side JavaScript error if console.info/debug/... is available but not a function
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1890'&gt;TAP5-1890&lt;/a&gt;] -         PlaceholderBlock should implement RenderCommand
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1892'&gt;TAP5-1892&lt;/a&gt;] -         FormFragment validates non-displayed fragments (reopen)
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1903'&gt;TAP5-1903&lt;/a&gt;] -         Client-side exception when a Zone containing a Form with an Upload component is re-rendered
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1906'&gt;TAP5-1906&lt;/a&gt;] -         Interaction between client-side validation and submit buttons can result in a server-side error parsing JSON array
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1907'&gt;TAP5-1907&lt;/a&gt;] -         Client exception in IE9 when partial page render introduces stylesheets
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1911'&gt;TAP5-1911&lt;/a&gt;] -         Tree leaf is still not selectable
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1926'&gt;TAP5-1926&lt;/a&gt;] -         PropertyDisplayBlocks Date&amp;#39;s display block is not thread safe 
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1929'&gt;TAP5-1929&lt;/a&gt;] -         High contention in method InternalComponentResourcesImpl.postRenderCleanup() and NamedSet.getValues()
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1931'&gt;TAP5-1931&lt;/a&gt;] -         Alerts can not be dismissed in IE8.
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1933'&gt;TAP5-1933&lt;/a&gt;] -         Email validation should use a different regular expression
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1934'&gt;TAP5-1934&lt;/a&gt;] -         Kaptcha Component throws NPE after session is expired
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1935'&gt;TAP5-1935&lt;/a&gt;] -         ContextResource uses a deprecated File.toURL
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1937'&gt;TAP5-1937&lt;/a&gt;] -         removeCookieValue with custom path
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1938'&gt;TAP5-1938&lt;/a&gt;] -         The ValueEncoder for JPA entity types should encode transient instances as null rather than throw an exception
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1941'&gt;TAP5-1941&lt;/a&gt;] -         Alerts component can fail with ComponentEventException is dismiss event triggered outside of XHR request (e.g., by web crawler)
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1945'&gt;TAP5-1945&lt;/a&gt;] -         Clojure integration breaks if tapestry-core is on the classpath
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1949'&gt;TAP5-1949&lt;/a&gt;] -         Alerts component does not show alerts added from a component that occurs later in the template
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1950'&gt;TAP5-1950&lt;/a&gt;] -         ResourceStreamer sends SC_NOT_MODIFIED as an error, but it should be just status
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1952'&gt;TAP5-1952&lt;/a&gt;] -         JavaScript Compressor should log warnings as well as errors, and identify the input clearly
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1954'&gt;TAP5-1954&lt;/a&gt;] -         ObjectLocator will return wrong service implementation delegate when using markers alone
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1956'&gt;TAP5-1956&lt;/a&gt;] -         Tapestry.ZoneManager creates memory leaks
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1960'&gt;TAP5-1960&lt;/a&gt;] -         @javax.annotations.Inject on a field, without @Named, does not inject service resources
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1963'&gt;TAP5-1963&lt;/a&gt;] -         Original exception lost in CommitAfterWorker upon abort
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1964'&gt;TAP5-1964&lt;/a&gt;] -         In production mode, placeholder timestamp needs to be limited to one-second accuracy
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1969'&gt;TAP5-1969&lt;/a&gt;] -         Excessive warnings from YUICompressor
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1973'&gt;TAP5-1973&lt;/a&gt;] -         In certain development cases when switching from insecure to secure, BaseURLSource will still include :443 in the URL
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1976'&gt;TAP5-1976&lt;/a&gt;] -         XML Parser adds attributes with default values and produces invalid HTML5 markup
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1977'&gt;TAP5-1977&lt;/a&gt;] -         Memory leak (perm gen) in component reloading
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1979'&gt;TAP5-1979&lt;/a&gt;] -         Changing the implementation of a method after adding method advice does not work; the original implementation remains
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1981'&gt;TAP5-1981&lt;/a&gt;] -         RadioGroup component validation error
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1983'&gt;TAP5-1983&lt;/a&gt;] -         PerThreadManager does not cleanup on shutdown, can lead to memory leaks when application redeployed
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1984'&gt;TAP5-1984&lt;/a&gt;] -         Adding alerts doesn&amp;#39;t work during ajax rendering
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1985'&gt;TAP5-1985&lt;/a&gt;] -         Clicking Alert component&amp;#39;s &amp;quot;dismiss all&amp;quot; link scrolls to top of page
+&lt;/li&gt;
+&lt;li&gt;[&lt;a href='https://issues.apache.org/jira/browse/TAP5-1988'&gt;TAP5-1988&lt;/a&gt;] -         Tapestry Security Violations
+&lt;/li&gt;

[... 1007 lines stripped ...]