Modified: websites/production/tapestry/content/ioc-cookbook-override.html ============================================================================== --- websites/production/tapestry/content/ioc-cookbook-override.html (original) +++ websites/production/tapestry/content/ioc-cookbook-override.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache
Modified: websites/production/tapestry/content/ioc-cookbook-overriding-ioc-services.html ============================================================================== --- websites/production/tapestry/content/ioc-cookbook-overriding-ioc-services.html (original) +++ websites/production/tapestry/content/ioc-cookbook-overriding-ioc-services.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/ioc-cookbook-patterns.html ============================================================================== --- websites/production/tapestry/content/ioc-cookbook-patterns.html (original) +++ websites/production/tapestry/content/ioc-cookbook-patterns.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/ioc-cookbook-service-configurations.html ============================================================================== --- websites/production/tapestry/content/ioc-cookbook-service-configurations.html (original) +++ websites/production/tapestry/content/ioc-cookbook-service-configurations.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/ioc-cookbook.html ============================================================================== --- websites/production/tapestry/content/ioc-cookbook.html (original) +++ websites/production/tapestry/content/ioc-cookbook.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/ioc-decorator.html ============================================================================== --- websites/production/tapestry/content/ioc-decorator.html (original) +++ websites/production/tapestry/content/ioc-decorator.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/ioc-injection.html ============================================================================== --- websites/production/tapestry/content/ioc-injection.html (original) +++ websites/production/tapestry/content/ioc-injection.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/ioc-logging.html ============================================================================== --- websites/production/tapestry/content/ioc-logging.html (original) +++ websites/production/tapestry/content/ioc-logging.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/ioc-module.html ============================================================================== --- websites/production/tapestry/content/ioc-module.html (original) +++ websites/production/tapestry/content/ioc-module.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/ioc-order.html ============================================================================== --- websites/production/tapestry/content/ioc-order.html (original) +++ websites/production/tapestry/content/ioc-order.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/ioc-overview.html ============================================================================== --- websites/production/tapestry/content/ioc-overview.html (original) +++ websites/production/tapestry/content/ioc-overview.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/ioc-parallel.html ============================================================================== --- websites/production/tapestry/content/ioc-parallel.html (original) +++ websites/production/tapestry/content/ioc-parallel.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/ioc-pipeline.html ============================================================================== --- websites/production/tapestry/content/ioc-pipeline.html (original) +++ websites/production/tapestry/content/ioc-pipeline.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/ioc-provider.html ============================================================================== --- websites/production/tapestry/content/ioc-provider.html (original) +++ websites/production/tapestry/content/ioc-provider.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/ioc-run.html ============================================================================== --- websites/production/tapestry/content/ioc-run.html (original) +++ websites/production/tapestry/content/ioc-run.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/ioc-serialization.html ============================================================================== --- websites/production/tapestry/content/ioc-serialization.html (original) +++ websites/production/tapestry/content/ioc-serialization.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/ioc-shadow.html ============================================================================== --- websites/production/tapestry/content/ioc-shadow.html (original) +++ websites/production/tapestry/content/ioc-shadow.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/ioc-startup.html ============================================================================== --- websites/production/tapestry/content/ioc-startup.html (original) +++ websites/production/tapestry/content/ioc-startup.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/ioc-strategy.html ============================================================================== --- websites/production/tapestry/content/ioc-strategy.html (original) +++ websites/production/tapestry/content/ioc-strategy.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/ioc-symbols.html ============================================================================== --- websites/production/tapestry/content/ioc-symbols.html (original) +++ websites/production/tapestry/content/ioc-symbols.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/ioc.html ============================================================================== --- websites/production/tapestry/content/ioc.html (original) +++ websites/production/tapestry/content/ioc.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/javascript-faq.html ============================================================================== --- websites/production/tapestry/content/javascript-faq.html (original) +++ websites/production/tapestry/content/javascript-faq.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache @@ -144,11 +144,11 @@ <!-- /// Content Start --> <div id="content"> <div id="ConfluenceContent"><h1 id="JavaScriptFAQ-JavaScript">JavaScript</h1><p>Main articles: <a href="client-side-javascript.html">Client-Side JavaScript</a>, <a href="legacy-javascript.html">Legacy JavaScript</a></p><h2 id="JavaScriptFAQ-Contents">Contents</h2><p><style type="text/css">/*<![CDATA[*/ -div.rbtoc1712222147280 {padding: 0px;} -div.rbtoc1712222147280 ul {margin-left: 0px;} -div.rbtoc1712222147280 li {margin-left: 0px;padding-left: 0px;} +div.rbtoc1712225747508 {padding: 0px;} +div.rbtoc1712225747508 ul {margin-left: 0px;} +div.rbtoc1712225747508 li {margin-left: 0px;padding-left: 0px;} -/*]]>*/</style></p><div class="toc-macro rbtoc1712222147280"> +/*]]>*/</style></p><div class="toc-macro rbtoc1712225747508"> <ul class="toc-indentation"><li><a href="#JavaScriptFAQ-WhydoIgeta"Tapestryisundefined"erroronformsubmit?(5.3andearlier)">Why do I get a "Tapestry is undefined" error on form submit? (5.3 and earlier)</a></li><li><a href="#JavaScriptFAQ-What'sthedifferencebetweentheT5objectandtheTapestryobjectinthebrowser?(5.3andearlier)">What's the difference between the T5 object and the Tapestry object in the browser? (5.3 and earlier)</a></li></ul> </div><h2 id="JavaScriptFAQ-WhydoIgeta"Tapestryisundefined"erroronformsubmit?(5.3andearlier)">Why do I get a "Tapestry is undefined" error on form submit? (5.3 and earlier)</h2><p>This client-side error is clear but can be awkward to solve. It means your browser has not been able to load the tapestry.js file properly. The question is, why? It can be due to multiple reasons, some of them below:</p><ul><li>First, check if 'tapestry.js' is present in the head part of your resulting HTML page.</li><li><p>If you have set the <a href="configuration.html">tapestry.combine-scripts</a> configuration symbol to true, Tapestry generates one single URL to retrieve all the JS files. Sometimes, this can produce long URLs that browsers are unable to retrieve. Try setting the symbol to false.</p><div class="confluence-information-macro confluence-information-macro-note"><span class="aui-icon aui-icon-small aui-iconfont-warning confluence-information-macro-icon"></span><div class="confluenc e-information-macro-body"><p>This only applies to Tapestry 5.1.</p></div></div></li><li>If you have included jQuery in conjunction with Tapestry's prototype, that will cause a conflict with the '$' selector used by both. In this case, you should put jQuery on top of the stack and turn on the <a class="external-link" href="http://api.jquery.com/jQuery.noConflict/" rel="nofollow">jQuery.noConflict</a> mode.</li><li>Also, if you have included a custom or third-party JS library on top of the stack that causes the JavaScript parsing to fail, then check the JavaScript syntax in that library.</li><li>If you have used a tool to minimize your JavaScript libraries, this can lead to JavaScript syntax errors, so check if it works with all the JavaScript files unpacked.</li></ul><h2 id="JavaScriptFAQ-What'sthedifferencebetweentheT5objectandtheTapestryobjectinthebrowser?(5.3andearlier)">What's the difference between the <code>T5</code> object and the <code>Tapestry</code> object in the browser? ( 5.3 and earlier)</h2><p>Both of these objects are <em>namespaces</em>: containers of functions, constants, and nested namespaces.</p><p>The <code>T5</code> object is a replacement for the <code>Tapestry</code> object, starting in release 5.3. Increasingly, functions defined by the <code>Tapestry</code> object are being replaced with similar or equivalent functions in the <code>T5</code> object.</p><p>This is part of an overall goal, spanning at least two releases of Tapestry, to make Tapestry JavaScript framework agnostic; which is to say, not depend specifically on Prototype or jQuery. Much of the code in the <code>Tapestry</code> object is specifically linked to Prototype and Scriptaculous.</p><p>The <code>T5</code> object represents a stable, documented, set of APIs that are preferred when building components for maximum portability between underlying JavaScript frameworks. In other words, when building component libraries, coding to the <code>T5</code> object ensures that your c omponent will be useful regardless of whether the final application is built using Prototype, jQuery or something else.</p></div> </div> Modified: websites/production/tapestry/content/javascript-modules.html ============================================================================== --- websites/production/tapestry/content/javascript-modules.html (original) +++ websites/production/tapestry/content/javascript-modules.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/javascript-rewrite-in-54.html ============================================================================== --- websites/production/tapestry/content/javascript-rewrite-in-54.html (original) +++ websites/production/tapestry/content/javascript-rewrite-in-54.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache @@ -144,11 +144,11 @@ <!-- /// Content Start --> <div id="content"> <div id="ConfluenceContent"><div class="confluence-information-macro confluence-information-macro-information"><span class="aui-icon aui-icon-small aui-iconfont-info confluence-information-macro-icon"></span><div class="confluence-information-macro-body"><p>This is a historical document in which Tapestry's Howard Lewis Ship describes the motivations and plan for significantly changing Tapestry's client-side functionality starting in Tapestry 5.4. This plan closely matches the actual results delivered in Tapestry 5.4, but this document is mostly kept for historical reference.</p></div></div><h2 id="JavaScriptRewritein5.4-Contents">Contents</h2><p><style type="text/css">/*<![CDATA[*/ -div.rbtoc1712221961050 {padding: 0px;} -div.rbtoc1712221961050 ul {margin-left: 0px;} -div.rbtoc1712221961050 li {margin-left: 0px;padding-left: 0px;} +div.rbtoc1712225561806 {padding: 0px;} +div.rbtoc1712225561806 ul {margin-left: 0px;} +div.rbtoc1712225561806 li {margin-left: 0px;padding-left: 0px;} -/*]]>*/</style></p><div class="toc-macro rbtoc1712221961050"> +/*]]>*/</style></p><div class="toc-macro rbtoc1712225561806"> <ul class="toc-indentation"><li><a href="#JavaScriptRewritein5.4-TapestryandJavaScript">Tapestry and JavaScript</a></li><li><a href="#JavaScriptRewritein5.4-TapestryJavaScriptLimitations(through5.3)">Tapestry JavaScript Limitations (through 5.3)</a> <ul class="toc-indentation"><li><a href="#JavaScriptRewritein5.4-DependenceonPrototype/Scriptaculous">Dependence on Prototype/Scriptaculous</a></li><li><a href="#JavaScriptRewritein5.4-LackofDocumentation">Lack of Documentation</a></li><li><a href="#JavaScriptRewritein5.4-LackofModuleStructure">Lack of Module Structure</a></li><li><a href="#JavaScriptRewritein5.4-ComplexInitialization">Complex Initialization</a></li></ul> </li><li><a href="#JavaScriptRewritein5.4-JavaScriptImprovementsfor5.4">JavaScript Improvements for 5.4</a> Modified: websites/production/tapestry/content/javascript.html ============================================================================== --- websites/production/tapestry/content/javascript.html (original) +++ websites/production/tapestry/content/javascript.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/jmx-module.html ============================================================================== --- websites/production/tapestry/content/jmx-module.html (original) +++ websites/production/tapestry/content/jmx-module.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/json.html ============================================================================== --- websites/production/tapestry/content/json.html (original) +++ websites/production/tapestry/content/json.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/key-features-v2.html ============================================================================== --- websites/production/tapestry/content/key-features-v2.html (original) +++ websites/production/tapestry/content/key-features-v2.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/key-features.html ============================================================================== --- websites/production/tapestry/content/key-features.html (original) +++ websites/production/tapestry/content/key-features.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/layout-component.html ============================================================================== --- websites/production/tapestry/content/layout-component.html (original) +++ websites/production/tapestry/content/layout-component.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/legacy-javascript.html ============================================================================== --- websites/production/tapestry/content/legacy-javascript.html (original) +++ websites/production/tapestry/content/legacy-javascript.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/limitations.html ============================================================================== --- websites/production/tapestry/content/limitations.html (original) +++ websites/production/tapestry/content/limitations.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache @@ -144,11 +144,11 @@ <!-- /// Content Start --> <div id="content"> <div id="ConfluenceContent"><h1 id="Limitations-Limitations">Limitations</h1><h2 id="Limitations-Contents">Contents</h2><p><style type="text/css">/*<![CDATA[*/ -div.rbtoc1712222004743 {padding: 0px;} -div.rbtoc1712222004743 ul {margin-left: 0px;} -div.rbtoc1712222004743 li {margin-left: 0px;padding-left: 0px;} +div.rbtoc1712225605261 {padding: 0px;} +div.rbtoc1712225605261 ul {margin-left: 0px;} +div.rbtoc1712225605261 li {margin-left: 0px;padding-left: 0px;} -/*]]>*/</style></p><div class="toc-macro rbtoc1712222004743"> +/*]]>*/</style></p><div class="toc-macro rbtoc1712225605261"> <ul class="toc-indentation"><li><a href="#Limitations-HowdoIaddnewcomponentstoanexistingpagedynamically?">How do I add new components to an existing page dynamically?</a></li><li><a href="#Limitations-Whydoesn'tmyserviceimplementationreloadwhenIchangeit?">Why doesn't my service implementation reload when I change it?</a></li><li><a href="#Limitations-HowdoIrunmultipleTapestryapplicationsinthesamewebapplication?">How do I run multiple Tapestry applications in the same web application?</a></li></ul> </div><h2 id="Limitations-HowdoIaddnewcomponentstoanexistingpagedynamically?">How do I add new components to an existing page dynamically?</h2><p>The short answer here is: <strong>you don't</strong>. The long answer here is <strong>you don't have to, to get the behavior you desire</strong>.</p><p>One of Tapestry basic values is high scalability: this is expressed in a number of ways, reflecting scalability concerns within a single server, and within a cluster of servers.</p><p>Although you code Tapestry pages and components as if they were ordinary POJOs (<span>Plain Old Java Objects -- Tapestry does not require you to extend any base classes or implement any special interfaces)</span><span>, as deployed by Tapestry they are closer to a traditional servlet: a single instance of each page services requests from multiple threads. Behind the scenes, Tapestry transforms you code, rewriting it on the fly.</span></p><p>What this means is that <em>any</em> incoming request must be handled by a <em>single page instance</em>. Therefore, Tapestry enforces the concept of <strong>static structure, dynamic behavior</strong>.</p><p>Tapestry provides quite a number of ways to vary what content is rendered, well beyond simple conditionals and loops. It is possible to "drag in" components from other pages when rendering a page (other FAQs will expand on this concept). The point is, that although a Tapestry page's structure is very rigid, the order in which the components of the page render does not have to be top to bottom.</p><h2 id="Limitations-Whydoesn'tmyserviceimplementationreloadwhenIchangeit?">Why doesn't my service implementation reload when I change it?</h2><p>Main article: <a href="service-implementation-reloading.html">Service Implementation Reloading</a></p><p>Live service reloading has some limitations:</p><ul><li>The service must define a service interface.</li><li>The service implementation must be on the file system (not inside a JAR).</li><li>The implementatio n must be instantiated by Tapestry, not inside code (even code inside a module class).</li><li>The service must use the default <a href="limitations.html">scope</a> (reloading of perthread scopes is not supported).</li></ul><p>Consider the following example module:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl"> <pre><code class="language-java">public static void bind(ServiceBinder binder) Modified: websites/production/tapestry/content/link-components-faq.html ============================================================================== --- websites/production/tapestry/content/link-components-faq.html (original) +++ websites/production/tapestry/content/link-components-faq.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache @@ -144,11 +144,11 @@ <!-- /// Content Start --> <div id="content"> <div id="ConfluenceContent"><h1 id="LinkComponentsFAQ-LinkComponents">Link Components</h1><p>Main Articles: <a href="page-navigation.html">Page Navigation</a>, <a href="component-parameters.html">Component Parameters</a></p><h2 id="LinkComponentsFAQ-Contents">Contents</h2><p><style type="text/css">/*<![CDATA[*/ -div.rbtoc1712221969382 {padding: 0px;} -div.rbtoc1712221969382 ul {margin-left: 0px;} -div.rbtoc1712221969382 li {margin-left: 0px;padding-left: 0px;} +div.rbtoc1712225570128 {padding: 0px;} +div.rbtoc1712225570128 ul {margin-left: 0px;} +div.rbtoc1712225570128 li {margin-left: 0px;padding-left: 0px;} -/*]]>*/</style></p><div class="toc-macro rbtoc1712221969382"> +/*]]>*/</style></p><div class="toc-macro rbtoc1712225570128"> <ul class="toc-indentation"><li><a href="#LinkComponentsFAQ-HowdoIaddqueryparameterstoaPageLinkorActionLink?">How do I add query parameters to a PageLink or ActionLink?</a></li><li><a href="#LinkComponentsFAQ-HowdoIcreateaLinkbacktothecurrentpagefromacomponent?">How do I create a Link back to the current page from a component?</a></li></ul> </div><h2 id="LinkComponentsFAQ-HowdoIaddqueryparameterstoaPageLinkorActionLink?">How do I add query parameters to a PageLink or ActionLink?</h2><p>These components do not have parameters to allow you to specify query parameters for the link; they both allow you to specify a <em>context</em> (one or more values to encode into the request path).</p><p>However, you can accomplish the same thing with a little code and markup. For example, to create a link to another page and pass a query parameter, you can replace your PageLink component with a standard <code><a></code> tag:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl"> <pre><code class="language-xml"><a href="${profilePageLink}">Display Profile (w/ full details)</a> Modified: websites/production/tapestry/content/loading-the-project-into-eclipse.html ============================================================================== --- websites/production/tapestry/content/loading-the-project-into-eclipse.html (original) +++ websites/production/tapestry/content/loading-the-project-into-eclipse.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/localization.html ============================================================================== --- websites/production/tapestry/content/localization.html (original) +++ websites/production/tapestry/content/localization.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/logging-in-tapestry.html ============================================================================== --- websites/production/tapestry/content/logging-in-tapestry.html (original) +++ websites/production/tapestry/content/logging-in-tapestry.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/logging.html ============================================================================== --- websites/production/tapestry/content/logging.html (original) +++ websites/production/tapestry/content/logging.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/mailing-lists.html ============================================================================== --- websites/production/tapestry/content/mailing-lists.html (original) +++ websites/production/tapestry/content/mailing-lists.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/maven-support-faq.html ============================================================================== --- websites/production/tapestry/content/maven-support-faq.html (original) +++ websites/production/tapestry/content/maven-support-faq.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache @@ -144,11 +144,11 @@ <!-- /// Content Start --> <div id="content"> <div id="ConfluenceContent"><h1 id="MavenSupportFAQ-MavenSupport">Maven Support</h1><h2 id="MavenSupportFAQ-Contents">Contents</h2><p><style type="text/css">/*<![CDATA[*/ -div.rbtoc1712222115618 {padding: 0px;} -div.rbtoc1712222115618 ul {margin-left: 0px;} -div.rbtoc1712222115618 li {margin-left: 0px;padding-left: 0px;} +div.rbtoc1712225715404 {padding: 0px;} +div.rbtoc1712225715404 ul {margin-left: 0px;} +div.rbtoc1712225715404 li {margin-left: 0px;padding-left: 0px;} -/*]]>*/</style></p><div class="toc-macro rbtoc1712222115618"> +/*]]>*/</style></p><div class="toc-macro rbtoc1712225715404"> <ul class="toc-indentation"><li><a href="#MavenSupportFAQ-WhydoMavenprojectnamesandotherdetailsshowupinmypages?">Why do Maven project names and other details show up in my pages?</a></li></ul> </div><h2 id="MavenSupportFAQ-WhydoMavenprojectnamesandotherdetailsshowupinmypages?">Why do Maven project names and other details show up in my pages?</h2><p>Tapestry and maven both use the same syntax for dynamic portions of files: the <code>${...</code>} syntax. When Maven is copying resources from <code>src/main/resources</code>, and when filtering is <em>enabled</em> (which is not the default), then any expansions in <em>Tapestry templates</em> that match against Maven project properties are substituted. If you look at the deployed application you'll see that <code>${name</code>} is gone, replaced with your project's name!</p><p>The solution is to update your <code>pom.xml</code> and ignore any .tml files when copying and filtering:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeHeader panelHeader pdl" style="border-bottom-width: 1px;"><b>pom.xml (partial)</b></div><div class="codeContent panelContent pdl"> <pre><code class="language-xml"> <resource> Modified: websites/production/tapestry/content/menuleft.html ============================================================================== --- websites/production/tapestry/content/menuleft.html (original) +++ websites/production/tapestry/content/menuleft.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/meta-programming-page-content.html ============================================================================== --- websites/production/tapestry/content/meta-programming-page-content.html (original) +++ websites/production/tapestry/content/meta-programming-page-content.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/modules.html ============================================================================== --- websites/production/tapestry/content/modules.html (original) +++ websites/production/tapestry/content/modules.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/navigation.html ============================================================================== --- websites/production/tapestry/content/navigation.html (original) +++ websites/production/tapestry/content/navigation.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache @@ -184,7 +184,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/navigationv2.html ============================================================================== --- websites/production/tapestry/content/navigationv2.html (original) +++ websites/production/tapestry/content/navigationv2.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/news.html ============================================================================== --- websites/production/tapestry/content/news.html (original) +++ websites/production/tapestry/content/news.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/object-providers.html ============================================================================== --- websites/production/tapestry/content/object-providers.html (original) +++ websites/production/tapestry/content/object-providers.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/operation-tracker.html ============================================================================== --- websites/production/tapestry/content/operation-tracker.html (original) +++ websites/production/tapestry/content/operation-tracker.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/ordering-by-constraints.html ============================================================================== --- websites/production/tapestry/content/ordering-by-constraints.html (original) +++ websites/production/tapestry/content/ordering-by-constraints.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/overriding-exception-reporting.html ============================================================================== --- websites/production/tapestry/content/overriding-exception-reporting.html (original) +++ websites/production/tapestry/content/overriding-exception-reporting.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/page-and-component-classes-faq.html ============================================================================== --- websites/production/tapestry/content/page-and-component-classes-faq.html (original) +++ websites/production/tapestry/content/page-and-component-classes-faq.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache @@ -144,11 +144,11 @@ <!-- /// Content Start --> <div id="content"> <div id="ConfluenceContent"><h1 id="PageAndComponentClassesFAQ-PageAndComponentClasses">Page And Component Classes</h1><p>Main article: <a href="component-classes.html">Component Classes</a></p><h2 id="PageAndComponentClassesFAQ-Contents">Contents</h2><p><style type="text/css">/*<![CDATA[*/ -div.rbtoc1712221903360 {padding: 0px;} -div.rbtoc1712221903360 ul {margin-left: 0px;} -div.rbtoc1712221903360 li {margin-left: 0px;padding-left: 0px;} +div.rbtoc1712225504026 {padding: 0px;} +div.rbtoc1712225504026 ul {margin-left: 0px;} +div.rbtoc1712225504026 li {margin-left: 0px;padding-left: 0px;} -/*]]>*/</style></p><div class="toc-macro rbtoc1712221903360"> +/*]]>*/</style></p><div class="toc-macro rbtoc1712225504026"> <ul class="toc-indentation"><li><a href="#PageAndComponentClassesFAQ-What'sthedifferencebetweenapageandacomponent?">What's the difference between a page and a component?</a></li><li><a href="#PageAndComponentClassesFAQ-HowdoIstoremypageclassesinadifferentpackage?">How do I store my page classes in a different package?</a></li><li><a href="#PageAndComponentClassesFAQ-Whydomyinstancevariableshavetobeprivate?">Why do my instance variables have to be private?</a></li><li><a href="#PageAndComponentClassesFAQ-Whydon'tmyinformalparametersshowupintherenderedmarkup?">Why don't my informal parameters show up in the rendered markup?</a></li><li><a href="#PageAndComponentClassesFAQ-WhydoIgetjava.lang.LinkageErrorwhenIinvokepublicmethodsofmypageclasses?">Why do I get java.lang.LinkageError when I invoke public methods of my page classes?</a></li><li><a href="#PageAndComponentClassesFAQ-Whichisbetter,usingmagicmethodnames(i.e.,beginRender())orannotations(i.e.BeginRender)?">Which is better, using magic method names (i.e., beginRender()) or annotations (i.e. BeginRender)?</a></li><li><a href="#PageAndComponentClassesFAQ-WhydoIhavetoinjectapage?Whycan'tIjustcreateoneusingnew?">Why do I have to inject a page? Why can't I just create one using new?</a></li></ul> </div><h2 id="PageAndComponentClassesFAQ-What'sthedifferencebetweenapageandacomponent?">What's the difference between a page and a component?</h2><p>There's very little difference between the two. Pages classes must be in the <em>root-package</em>.<code>pages</code> package; components must be in the <em>root-package</em>.<code>components</code>. Pages may provide event handlers for certain page-specific events (such as activate and passivate). Components may have parameters.</p><p>Other than that, they are more equal than they are different. They may have templates or may render themselves in code (pages usually have a template, components are more likely to render only in code).</p><p>The major difference is that Tapestry page templates may be stored in the web context directory, as if they were static files (they can't be accessed from the client however; a specific rule prevents access to files with the <code>.tml</code> extension).</p><div class="confluence-information-macro co nfluence-information-macro-warning"><span class="aui-icon aui-icon-small aui-iconfont-error confluence-information-macro-icon"></span><div class="confluence-information-macro-body"><p>It is possible that this feature may be removed in a later release. It is preferred that page templates be stored on the classpath, like component templates.</p></div></div><h2 id="PageAndComponentClassesFAQ-HowdoIstoremypageclassesinadifferentpackage?">How do I store my page classes in a different package?</h2><p>Tapestry is very rigid here; you can't. Page classes must go in <em>root-package</em>.<code>pages</code>, component classes in <em>root-package</em>.<code>components</code>, etc.</p><p>You are allowed to create sub-packages, to help organize your code better and more logically. For example, you might have <em>root-package</em>.<code>pages.account.ViewAccount</code>, which would have the page name "account/viewaccount". (<span>Tapestry would also create an alias "account/view", by stripping of f the redundant "account" suffix. Either name is equally valid in your code, and Tapestry will use the shorter name, "account/view" in URLs.)</span></p><p>In addition, it is possible to define additional root packages for the application:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl"> <pre><code class="language-java">public static void contributeComponentClassResolver(Configuration<LibraryMapping> configuration) { @@ -183,13 +183,13 @@ public class DBImage -<span class="gliffy-container" id="gliffy-container-23527573-4049" data-fullwidth="750" data-size="L" data-ceoid="23335008" data-edit="${diagramEditLink.getLinkUrl()}" data-full="${diagramZoomLink.getLinkUrl()}" data-filename="Class Loaders"> +<span class="gliffy-container" id="gliffy-container-23527573-8248" data-fullwidth="750" data-size="L" data-ceoid="23335008" data-edit="${diagramEditLink.getLinkUrl()}" data-full="${diagramZoomLink.getLinkUrl()}" data-filename="Class Loaders"> - <map id="gliffy-map-23527573-9658" name="gliffy-map-23527573-9658"></map> + <map id="gliffy-map-23527573-6244" name="gliffy-map-23527573-6244"></map> - <img class="gliffy-image" id="gliffy-image-23527573-4049" width="750" height="425" data-full-width="750" data-full-height="425" src="https://cwiki.apache.org/confluence/download/attachments/23335008/Class%20Loaders.png?version=4&modificationDate=1283534469000&api=v2" alt="Class Loaders" usemap="#gliffy-map-23527573-9658"> + <img class="gliffy-image" id="gliffy-image-23527573-8248" width="750" height="425" data-full-width="750" data-full-height="425" src="https://cwiki.apache.org/confluence/download/attachments/23335008/Class%20Loaders.png?version=4&modificationDate=1283534469000&api=v2" alt="Class Loaders" usemap="#gliffy-map-23527573-6244"> - <map class="gliffy-dynamic" id="gliffy-dynamic-map-23527573-4049" name="gliffy-dynamic-map-23527573-4049"></map> + <map class="gliffy-dynamic" id="gliffy-dynamic-map-23527573-8248" name="gliffy-dynamic-map-23527573-8248"></map> </span> </p><p>In a Tapestry application, most application classes are loaded from the middle class loader. Additional class loaders are used to support live service reloading, and live component reloading (along with component class transformation).</p><p>When a page or component is passed as a parameter to a service, a failure occurs (how it is reported varies in different JDK releases) because of the class mismatch.</p><p>The solution is to define an interface with the methods that the service will invoke on the page or component instance. The service will expect an object implementing the interface (and doesn't care what class loader loaded the implementing class).</p><p>Just be sure to put the interface class in a non-controlled package, such as your application's <em>root-package</em> (and <strong>not</strong> <em>root-package</em>.<code>pages</code>).</p><h2 id="PageAndComponentClassesFAQ-Whichisbetter,usingmagicmethodnames(i.e.,beginRender())orannotations(i.e.BeginRender)?">Which is better, using magic method names (i.e., <code>beginRender()</code>) or annotations (i.e. <code>BeginRender</code>)?</h2><p>There is no single best way; this is where your taste may vary. Historically, the annotations came first, and the method naming conventions came later.</p><p>The advantage of using the method naming conventions is that the method names are more concise, which fewer characters to type, and fewer classes to import.</p><p>The main disadvantage of the method naming conventions is that the method names are not meaningful. <code>onSuccessFromLoginForm()</code> is a less meaningful name than <code>storeUserCredentialsAndReturnToProductsPage()</code>, for example.</p><p>The second disadvantage is you are more susceptible to off-by-a-character errors. For example, <code>onSucessFromLoginForm()</code> will <em>never</em> be called because the event name is misspelled; this would not happen using the annotation approach:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl"> Modified: websites/production/tapestry/content/page-and-component-classes.html ============================================================================== --- websites/production/tapestry/content/page-and-component-classes.html (original) +++ websites/production/tapestry/content/page-and-component-classes.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/page-life-cycle.html ============================================================================== --- websites/production/tapestry/content/page-life-cycle.html (original) +++ websites/production/tapestry/content/page-life-cycle.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/page-navigation.html ============================================================================== --- websites/production/tapestry/content/page-navigation.html (original) +++ websites/production/tapestry/content/page-navigation.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache @@ -233,11 +233,11 @@ <p>In essence, a Tapestry application is a number of related pages, working together. To some degree, each page is like an application unto itself.</p><p>Any individual request will be targeted at a single page. Requests come in two forms: </p><ul><li><em>component event</em> requests target a specific component on a specific page, triggering an event within that component</li><li><em>render</em> requests target a specific page, and stream the HTML markup for that page back to the client</li></ul><p>This dichotomy between component event requests and render requests alleviates a number of problems in traditional web applications related to the browser back button, or to the user hitting the refresh button in their browser.</p><h3 id="PageNavigation-Contents">Contents</h3><h2 id="PageNavigation-Contents|RelatedArticlesLogicalPageNameShortening"><style type="text/css">/*<![CDATA[*/ -div.rbtoc1712222182529 {padding: 0px;} -div.rbtoc1712222182529 ul {margin-left: 0px;} -div.rbtoc1712222182529 li {margin-left: 0px;padding-left: 0px;} +div.rbtoc1712225782496 {padding: 0px;} +div.rbtoc1712225782496 ul {margin-left: 0px;} +div.rbtoc1712225782496 li {margin-left: 0px;padding-left: 0px;} -/*]]>*/</style></h2><div class="toc-macro rbtoc1712222182529"> +/*]]>*/</style></h2><div class="toc-macro rbtoc1712225782496"> <ul class="toc-indentation"><li><a href="#PageNavigation-Contents|RelatedArticlesLogicalPageNameShortening">Logical Page Name Shortening</a></li><li><a href="#PageNavigation-ComponentEventRequests&Responses">Component Event Requests & Responses</a> <ul class="toc-indentation"><li><a href="#PageNavigation-1.Nullresponse">1. Null response</a></li><li><a href="#PageNavigation-2.Stringresponse">2. String response</a></li><li><a href="#PageNavigation-3.Classresponse">3. Class response</a></li><li><a href="#PageNavigation-4.Pageresponse">4. Page response</a></li><li><a href="#PageNavigation-5.HttpError">5. HttpError</a></li><li><a href="#PageNavigation-6.Linkresponse">6. Link response</a></li><li><a href="#PageNavigation-7.Streamresponse">7. Stream response</a></li><li><a href="#PageNavigation-8.URLresponse">8. URL response</a></li><li><a href="#PageNavigation-9.Objectresponse">9. Object response</a></li></ul> </li><li><a href="#PageNavigation-PageRenderRequests">Page Render Requests</a></li><li><a href="#PageNavigation-PageActivation">Page Activation</a></li><li><a href="#PageNavigation-PageNavigationPatterns">Page Navigation Patterns</a> Modified: websites/production/tapestry/content/parallel-execution.html ============================================================================== --- websites/production/tapestry/content/parallel-execution.html (original) +++ websites/production/tapestry/content/parallel-execution.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/parameter-type-coercion.html ============================================================================== --- websites/production/tapestry/content/parameter-type-coercion.html (original) +++ websites/production/tapestry/content/parameter-type-coercion.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/performance-and-clustering.html ============================================================================== --- websites/production/tapestry/content/performance-and-clustering.html (original) +++ websites/production/tapestry/content/performance-and-clustering.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/persistent-page-data.html ============================================================================== --- websites/production/tapestry/content/persistent-page-data.html (original) +++ websites/production/tapestry/content/persistent-page-data.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/persistent-state.html ============================================================================== --- websites/production/tapestry/content/persistent-state.html (original) +++ websites/production/tapestry/content/persistent-state.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/pipelinebuilder-service.html ============================================================================== --- websites/production/tapestry/content/pipelinebuilder-service.html (original) +++ websites/production/tapestry/content/pipelinebuilder-service.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/presentations.html ============================================================================== --- websites/production/tapestry/content/presentations.html (original) +++ websites/production/tapestry/content/presentations.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/principles.html ============================================================================== --- websites/production/tapestry/content/principles.html (original) +++ websites/production/tapestry/content/principles.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/project-layout.html ============================================================================== --- websites/production/tapestry/content/project-layout.html (original) +++ websites/production/tapestry/content/project-layout.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/property-expressions.html ============================================================================== --- websites/production/tapestry/content/property-expressions.html (original) +++ websites/production/tapestry/content/property-expressions.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache Modified: websites/production/tapestry/content/redirects.html ============================================================================== --- websites/production/tapestry/content/redirects.html (original) +++ websites/production/tapestry/content/redirects.html Thu Apr 4 10:17:04 2024 @@ -100,7 +100,7 @@ <a class="dropdown-item" href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a> <a class="dropdown-item" href="https://issues.apache.org/jira/browse/TAP5">Issues</a> <a class="dropdown-item" href="/development-roadmap.html" title="Development Roadmap">Roadmap</a> -                </div> +</div> </li><li class="nav-item dropdown"> <a class="nav-link dropdown-toggle active" id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Apache