Modified: 
websites/production/tapestry/content/supported-environments-and-versions.html
==============================================================================
--- 
websites/production/tapestry/content/supported-environments-and-versions.html 
(original)
+++ 
websites/production/tapestry/content/supported-environments-and-versions.html 
Sun Feb 25 23:20:05 2018
@@ -67,7 +67,7 @@
       </div>
 
       <div id="content">
-                <div id="ConfluenceContent"><p>Tapestry is compatible with a 
pretty wide range of app servers, Java versions, and open source libraries. Not 
all combinations are known to work, however.</p><p>Note: blanks in the support 
matrix tables below do NOT indicate incompatibility. They are just 
documentation gaps.</p><p>If you know of any other known compatibilities or 
incompatibilities, please add a comment at the bottom of this page, or on 
the&#160;<a  href="supported-environments-and-versions.html">Tapestry Users 
mailing list</a> mailing list.</p><h2 
id="SupportedEnvironmentsandVersions-Java&amp;ServletAPIVersions">Java &amp; 
Servlet API Versions</h2><div class="table-wrap"><table 
class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" 
class="confluenceTh">Tapestry Version &#8594;</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.5</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.4</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.3.8</th><th colspan
 ="1" rowspan="1" class="confluenceTh">5.3.0 - 5.3.7</th><th colspan="1" 
rowspan="1" class="confluenceTh">5.2</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.1</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.0.10</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.0.8</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.0</th><th colspan="1" rowspan="1" 
class="confluenceTh">4.1</th></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd">Java JRE</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.8<sup>1</sup></td><td colspan="1" rowspan="1" 
class="confluenceTd">1.7, 1.8<sup>1</sup></td><td colspan="1" rowspan="1" 
class="confluenceTd">1.6 - 1.8<sup>1,2</sup></td><td colspan="1" rowspan="1" 
class="confluenceTd">1.6, 1.7</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.5, 1.6</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.5, 1.6</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.5, 1.6</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.5, 1
 .6</td><td colspan="1" rowspan="1" class="confluenceTd">1.5, 1.6</td><td 
colspan="1" rowspan="1" class="confluenceTd">1.4-1.6</td></tr><tr><td 
colspan="1" rowspan="1" class="confluenceTd">Servlet API</td><td colspan="1" 
rowspan="1" class="confluenceTd">3.0+</td><td colspan="1" rowspan="1" 
class="confluenceTd">2.5+</td><td colspan="1" rowspan="1" 
class="confluenceTd">2.5+</td><td colspan="1" rowspan="1" 
class="confluenceTd">2.5+</td><td colspan="1" rowspan="1" 
class="confluenceTd">2.4+<sup>3</sup></td><td colspan="1" rowspan="1" 
class="confluenceTd">2.4+<sup>3</sup></td><td colspan="1" rowspan="1" 
class="confluenceTd">2.4+<sup>3</sup></td><td colspan="1" rowspan="1" 
class="confluenceTd">2.4+<sup>3</sup></td><td colspan="1" rowspan="1" 
class="confluenceTd">2.4+<sup>3</sup></td><td colspan="1" rowspan="1" 
class="confluenceTd">2.2-2.3</td></tr></tbody></table></div><p 
class="confluence-link"><sup class="confluence-link">1</sup> Tapestry does not 
yet work with Java 1.9. See&#160;<a  clas
 s="external-link" href="https://issues.apache.org/jira/browse/TAP5-2588";><span 
class="confluence-link">TAP5-2588</span></a>.</p><p><sup>2</sup> For using 
Tapestry 5.3.8 with Java 1.8 see <a  href="release-notes-538.html">Release 
Notes 5.3.8</a></p><p><sup>3</sup> Servlet API 2.5 requires JDK 1.5+</p><h2 
id="SupportedEnvironmentsandVersions-AppServers">App Servers</h2><div 
class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" 
rowspan="1" class="confluenceTh">Tapestry Version &#8594;</th><th colspan="1" 
rowspan="1" class="confluenceTh">5.5</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.4</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.3.8</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.3.0 - 5.3.7</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.2</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.1</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.0.10</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.0.8</th><th colspa
 n="1" rowspan="1" class="confluenceTh">5.0</th><th colspan="1" rowspan="1" 
class="confluenceTh">4.1</th></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd">Apache Tomcat</td><td colspan="1" rowspan="1" 
class="confluenceTd">6+</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">6+</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd">Jetty</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;9</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;7-9</td><td colspan="1" rowspan="1" class
 ="confluenceTd">&#160;6-9</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;6-8</td><td colspan="1" rowspan="1" 
class="confluenceTd">6-8</td><td colspan="1" rowspan="1" 
class="confluenceTd">6-8</td><td colspan="1" rowspan="1" 
class="confluenceTd">6-8</td><td colspan="1" rowspan="1" 
class="confluenceTd">6-8</td><td colspan="1" rowspan="1" 
class="confluenceTd">6-8</td><td colspan="1" rowspan="1" 
class="confluenceTd">6-7</td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd">Glassfish</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">2.1</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="
 1" rowspan="1" class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd">Apache TomEE</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd">JBoss EAP</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">4.2.3</td><td colspan="1" rowspan=
 "1" class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">4+</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd">Wildfly/JBoss AS</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" class="confluenceT
 d">&#160;</td><td colspan="1" rowspan="1" class="confluenceTd">&#160;</td><td 
colspan="1" rowspan="1" class="confluenceTd">&#160;</td></tr><tr><td 
colspan="1" rowspan="1" class="confluenceTd">Heroku</td><td colspan="1" 
rowspan="1" class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd">Google App Engine</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160
 ;</td><td colspan="1" rowspan="1" class="confluenceTd">&#160;</td><td 
colspan="1" rowspan="1" class="confluenceTd">&#160;</td><td colspan="1" 
rowspan="1" class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">+</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd">Amazon AWS</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan
 ="1" class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td></tr></tbody></table></div><h2 
id="SupportedEnvironmentsandVersions-Libraries">Libraries</h2><p>These are the 
library versions known to work (and, in some cases, bundled with Tapestry). 
Unless otherwise noted, adjacent versions will often work fine as well.</p><div 
class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" 
rowspan="1" class="confluenceTh">Tapestry Version &#8594;</th><th colspan="1" 
rowspan="1" class="confluenceTh">5.5</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.4.1</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.4</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.3.8</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.3.7</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.3.3-5.3.6</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.3.2</th><th colspan="1" rows
 pan="1" class="confluenceTh">5.3 - 5.3.1</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.2.1</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.2</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.1</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.0.16</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.0.10</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.0.8</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.0</th><th colspan="1" rowspan="1" 
class="confluenceTh">4.1</th></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd">Hibernate</td><td colspan="1" rowspan="1" 
class="confluenceTd">5.1.0.Final</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">?-4.3.6</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" class="confluenceTd"
 >&#160;</td><td colspan="1" rowspan="1" class="confluenceTd">&#160;</td><td 
 >colspan="1" rowspan="1" class="confluenceTd">3.5.4-3.6.0</td><td colspan="1" 
 >rowspan="1" class="confluenceTd">-3.6.0</td><td colspan="1" rowspan="1" 
 >class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
 >class="confluenceTd">3.3.0+</td><td colspan="1" rowspan="1" 
 >class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
 >class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
 >class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
 >class="confluenceTd">&#160;</td></tr><tr><td colspan="1" rowspan="1" 
 >class="confluenceTd">JPA</td><td colspan="1" rowspan="1" 
 >class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
 >class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
 >class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
 >class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
 >class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
 >class="confluenceTd">&#160;</td><td colspan="1
 " rowspan="1" class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd">Spring</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" class="conflue
 nceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">3.1.0</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd">jQuery.js</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.12.1</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td cols
 pan="1" rowspan="1" class="confluenceTd">&#160;</td><td colspan="1" 
rowspan="1" class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd">Prototype.js</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.7.1</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" cla
 ss="confluenceTd">1.7</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.7</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.7</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.7</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.6.1</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.6.1</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.6.0.3</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.6.0.3</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.6.0.2</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.6</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.6</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd">Scriptaculous</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.9</td><td colspan=
 "1" rowspan="1" class="confluenceTd">1.9</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.9</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.9</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.9</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.8.2</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.8.2</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.8.2</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.8.0</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd">Bootstrap CSS</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">3.3.6</td><td colspan="1" rowspan="1" 
class="confluenceTd">3.0.2</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#
 160;</td><td colspan="1" rowspan="1" class="confluenceTd">&#160;</td><td 
colspan="1" rowspan="1" class="confluenceTd">&#160;</td><td colspan="1" 
rowspan="1" class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd">Moment.js</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">2.12.0</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" 
 rowspan="1" class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd">Less4J</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" class="confluenc
 eTd">1.2.1-1.9</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd">Underscore.js</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><t
 d colspan="1" rowspan="1" class="confluenceTd">&#160;</td><td colspan="1" 
rowspan="1" class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.3.3</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.1.7</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.1.7</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td></tr></tbody></table></div></div>
+                <div id="ConfluenceContent"><p>Tapestry is compatible with a 
pretty wide range of app servers, Java versions, and open source libraries. Not 
all combinations are known to work, however.</p><p>Note: blanks in the support 
matrix tables below do NOT indicate incompatibility. They are just 
documentation gaps.</p><p>If you know of any other known compatibilities or 
incompatibilities, please add a comment at the bottom of this page, or on 
the&#160;<a  href="supported-environments-and-versions.html">Tapestry Users 
mailing list</a> mailing list.</p><h2 
id="SupportedEnvironmentsandVersions-Java&amp;ServletAPIVersions">Java &amp; 
Servlet API Versions</h2><div class="table-wrap"><table 
class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" 
class="confluenceTh">Tapestry Version &#8594;</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.5</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.4</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.3.8</th><th colspan
 ="1" rowspan="1" class="confluenceTh">5.3.0 - 5.3.7</th><th colspan="1" 
rowspan="1" class="confluenceTh">5.2</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.1</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.0.10</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.0.8</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.0</th><th colspan="1" rowspan="1" 
class="confluenceTh">4.1</th></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd">Java JRE</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.8<sup>1</sup></td><td colspan="1" rowspan="1" 
class="confluenceTd">1.7, 1.8<sup>1</sup></td><td colspan="1" rowspan="1" 
class="confluenceTd">1.6 - 1.8<sup>1,2</sup></td><td colspan="1" rowspan="1" 
class="confluenceTd">1.6, 1.7</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.5, 1.6</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.5, 1.6</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.5, 1.6</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.5, 1
 .6</td><td colspan="1" rowspan="1" class="confluenceTd">1.5, 1.6</td><td 
colspan="1" rowspan="1" class="confluenceTd">1.4-1.6</td></tr><tr><td 
colspan="1" rowspan="1" class="confluenceTd">Servlet API</td><td colspan="1" 
rowspan="1" class="confluenceTd">3.0+</td><td colspan="1" rowspan="1" 
class="confluenceTd">2.5+</td><td colspan="1" rowspan="1" 
class="confluenceTd">2.5+</td><td colspan="1" rowspan="1" 
class="confluenceTd">2.5+</td><td colspan="1" rowspan="1" 
class="confluenceTd">2.4+<sup>3</sup></td><td colspan="1" rowspan="1" 
class="confluenceTd">2.4+<sup>3</sup></td><td colspan="1" rowspan="1" 
class="confluenceTd">2.4+<sup>3</sup></td><td colspan="1" rowspan="1" 
class="confluenceTd">2.4+<sup>3</sup></td><td colspan="1" rowspan="1" 
class="confluenceTd">2.4+<sup>3</sup></td><td colspan="1" rowspan="1" 
class="confluenceTd">2.2-2.3</td></tr></tbody></table></div><p 
class="confluence-link"><sup class="confluence-link">1</sup> Tapestry does not 
yet work with Java 1.9. See&#160;<a  clas
 s="external-link" href="https://issues.apache.org/jira/browse/TAP5-2588";><span 
class="confluence-link">TAP5-2588</span></a>.</p><p><sup>2</sup> For using 
Tapestry 5.3.8 with Java 1.8 see <a  href="release-notes-538.html">Release 
Notes 5.3.8</a></p><p><sup>3</sup> Servlet API 2.5 requires JDK 1.5+</p><h2 
id="SupportedEnvironmentsandVersions-AppServers">App Servers</h2><div 
class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" 
rowspan="1" class="confluenceTh">Tapestry Version &#8594;</th><th colspan="1" 
rowspan="1" class="confluenceTh">5.5</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.4</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.3.8</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.3.0 - 5.3.7</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.2</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.1</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.0.10</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.0.8</th><th colspa
 n="1" rowspan="1" class="confluenceTh">5.0</th><th colspan="1" rowspan="1" 
class="confluenceTh">4.1</th></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd">Apache Tomcat</td><td colspan="1" rowspan="1" 
class="confluenceTd">6+</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">6+</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd">Jetty</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;9</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;7-9</td><td colspan="1" rowspan="1" class
 ="confluenceTd">&#160;6-9</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;6-8</td><td colspan="1" rowspan="1" 
class="confluenceTd">6-8</td><td colspan="1" rowspan="1" 
class="confluenceTd">6-8</td><td colspan="1" rowspan="1" 
class="confluenceTd">6-8</td><td colspan="1" rowspan="1" 
class="confluenceTd">6-8</td><td colspan="1" rowspan="1" 
class="confluenceTd">6-8</td><td colspan="1" rowspan="1" 
class="confluenceTd">6-7</td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd">Glassfish</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">2.1</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="
 1" rowspan="1" class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd">Apache TomEE</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd">JBoss EAP</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">4.2.3</td><td colspan="1" rowspan=
 "1" class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">4+</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd">Wildfly/JBoss AS</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" class="confluenceT
 d">&#160;</td><td colspan="1" rowspan="1" class="confluenceTd">&#160;</td><td 
colspan="1" rowspan="1" class="confluenceTd">&#160;</td></tr><tr><td 
colspan="1" rowspan="1" class="confluenceTd">Heroku</td><td colspan="1" 
rowspan="1" class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd">Google App Engine</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160
 ;</td><td colspan="1" rowspan="1" class="confluenceTd">&#160;</td><td 
colspan="1" rowspan="1" class="confluenceTd">&#160;</td><td colspan="1" 
rowspan="1" class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">+</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd">Amazon AWS</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan
 ="1" class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td></tr></tbody></table></div><h2 
id="SupportedEnvironmentsandVersions-Libraries">Libraries</h2><p>These are the 
library versions known to work (and, in some cases, bundled with Tapestry). 
Unless otherwise noted, adjacent versions will often work fine as well.</p><div 
class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" 
rowspan="1" class="confluenceTh">Tapestry Version &#8594;</th><th colspan="1" 
rowspan="1" class="confluenceTh">5.5</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.4.1</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.4</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.3.8</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.3.7</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.3.3-5.3.6</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.3.2</th><th colspan="1" rows
 pan="1" class="confluenceTh">5.3 - 5.3.1</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.2.1</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.2</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.1</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.0.16</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.0.10</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.0.8</th><th colspan="1" rowspan="1" 
class="confluenceTh">5.0</th><th colspan="1" rowspan="1" 
class="confluenceTh">4.1</th></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd">Hibernate</td><td colspan="1" rowspan="1" 
class="confluenceTd">5.1.0.Final</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">?-4.3.6</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" class="confluenceTd"
 >&#160;</td><td colspan="1" rowspan="1" class="confluenceTd">&#160;</td><td 
 >colspan="1" rowspan="1" class="confluenceTd">3.5.4-3.6.0</td><td colspan="1" 
 >rowspan="1" class="confluenceTd">-3.6.0</td><td colspan="1" rowspan="1" 
 >class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
 >class="confluenceTd">3.3.0+</td><td colspan="1" rowspan="1" 
 >class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
 >class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
 >class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
 >class="confluenceTd">&#160;</td></tr><tr><td colspan="1" rowspan="1" 
 >class="confluenceTd">JPA</td><td colspan="1" rowspan="1" 
 >class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
 >class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
 >class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
 >class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
 >class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
 >class="confluenceTd">&#160;</td><td colspan="1
 " rowspan="1" class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd">Spring</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" class="conflue
 nceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">3.1.0</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd">jQuery.js</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.12.1</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td cols
 pan="1" rowspan="1" class="confluenceTd">&#160;</td><td colspan="1" 
rowspan="1" class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd">Prototype.js</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.7.1</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" cla
 ss="confluenceTd">1.7</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.7</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.7</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.7</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.6.1</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.6.1</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.6.0.3</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.6.0.3</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.6.0.2</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.6</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.6</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd">Scriptaculous</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.9</td><td colspan=
 "1" rowspan="1" class="confluenceTd">1.9</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.9</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.9</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.9</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.8.2</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.8.2</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.8.2</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.8.0</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd">Bootstrap CSS</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">3.3.6</td><td colspan="1" rowspan="1" 
class="confluenceTd">3.0.2</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#
 160;</td><td colspan="1" rowspan="1" class="confluenceTd">&#160;</td><td 
colspan="1" rowspan="1" class="confluenceTd">&#160;</td><td colspan="1" 
rowspan="1" class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd">Moment.js</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">2.12.0</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" 
 rowspan="1" class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd">Less4J</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" class="confluenc
 eTd">1.2.1-1.9</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd">Underscore.js</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><t
 d colspan="1" rowspan="1" class="confluenceTd">&#160;</td><td colspan="1" 
rowspan="1" class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.3.3</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.1.7</td><td colspan="1" rowspan="1" 
class="confluenceTd">1.1.7</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td></tr></tbody></table></div><p></p></div>
       </div>
 
       <div class="clearer"></div>

Modified: websites/production/tapestry/content/switching-cases.html
==============================================================================
--- websites/production/tapestry/content/switching-cases.html (original)
+++ websites/production/tapestry/content/switching-cases.html Sun Feb 25 
23:20:05 2018
@@ -32,7 +32,6 @@
     <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();
@@ -77,9 +76,12 @@
       </div>
 
       <div id="content">
-                <div id="ConfluenceContent"><p>&#160;</p><h1 
id="SwitchingCases-SwitchingCases">Switching Cases</h1><p>With Tapestry's 
<code>If</code> component you can only test one condition at a time. In order 
to distinguish multiple cases, you'd have to write complex nested if/else 
constructs in your page template and have a checker method for each test inside 
your page class.</p><div class="navmenu" style="float:right; background:#eee; 
margin:3px; padding:0 1em">
-<p>    <strong>JumpStart Demo:</strong><br clear="none">
-    <a  class="external-link" 
href="http://jumpstart.doublenegative.com.au/jumpstart/examples/lang/ifnotnegateswitchelseunless";
 rel="nofollow">If, Not, Negate, Switch, Else, Unless</a></p></div>In cases 
where you have to distinguish multiple cases, the <code>Delegate</code> 
component comes in. It delegates rendering to some other component, for example 
a <code>Block</code>. For each case you have, you basically wrap the content 
inside a <code>Block</code> that doesn't get rendered by default. You then 
place a Delegate component on your page and point it to a method inside your 
page class that will decide which of your Blocks should be rendered.<p>Imagine 
for example a use case, where you want to distinguish between 4 cases and you 
have an int property called <code>whichCase</code> that should be tested 
against. Your page template would look as follows:</p><div class="code panel 
pdl" style="border-width: 1px;"><div class="codeHeader panelHeader pdl" 
style="border-bottom-width: 1px;">
 <b>SwitchMe.tml</b></div><div class="codeContent panelContent pdl">
+                <div id="ConfluenceContent"><p>&#160;</p><h1 
id="SwitchingCases-SwitchingCases">Switching Cases</h1><p>With Tapestry's 
<code>If</code> component you can only test one condition at a time. In order 
to distinguish multiple cases, you'd have to write complex nested if/else 
constructs in your page template and have a checker method for each test inside 
your page class.</p><p>&#160;</p><div style="width: 20em; float:right"><div 
class="panel" style="border-color: #eee;border-width: 1px;"><div 
class="panelHeader" style="border-bottom-width: 1px;border-bottom-color: 
#eee;background-color: #eee;"><b>JumpStart Demo</b></div><div 
class="panelContent">
+<p>&#160;<a  class="external-link" 
href="http://jumpstart.doublenegative.com.au/jumpstart/examples/lang/ifnotnegateswitchelseunless";
 rel="nofollow">If, Not, Negate, Switch, Else, Unless</a></p>
+</div></div></div>
+
+
+<p>In cases where you have to distinguish multiple cases, the 
<code>Delegate</code> component comes in. It delegates rendering to some other 
component, for example a <code>Block</code>. For each case you have, you 
basically wrap the content inside a <code>Block</code> that doesn't get 
rendered by default. You then place a Delegate component on your page and point 
it to a method inside your page class that will decide which of your Blocks 
should be rendered.</p><p>Imagine for example a use case, where you want to 
distinguish between 4 cases and you have an int property called 
<code>whichCase</code> that should be tested against. Your page template would 
look as follows:</p><div class="code panel pdl" style="border-width: 1px;"><div 
class="codeHeader panelHeader pdl" style="border-bottom-width: 
1px;"><b>SwitchMe.tml</b></div><div class="codeContent panelContent pdl">
 <pre class="brush: xml; gutter: false; theme: Default" 
style="font-size:12px;">&lt;html 
xmlns:t="http://tapestry.apache.org/schema/tapestry_5_4.xsd"&gt;
     &lt;body&gt;
         &lt;h1&gt;Switch&lt;/h1&gt;


Reply via email to