Modified: websites/production/tapestry/content/logging.html
==============================================================================
--- websites/production/tapestry/content/logging.html (original)
+++ websites/production/tapestry/content/logging.html Fri May 1 00:29:08 2020
@@ -19,24 +19,24 @@
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
- <meta name="keywords" content="tapestry, apache, apache tapestry, frameowrk,
java, web, component, open source, application, dynamic, scalable, robust,
servlet">
+ <meta name="keywords" content="tapestry, apache, apache tapestry, framework,
java, web, component, open source, application, dynamic, scalable, robust,
servlet">
<meta name="description" content="Apache Tapestry is a open-source
component-oriented framework for creating dynamic, robust, highly scalable web
applications in Java. Tapestry complements and builds upon the standard Java
Servlet API, and so it works in any servlet container or application server.">
<title>
Logging - Apache Tapestry
</title>
- <link rel="apple-touch-icon-precomposed" sizes="144x144"
href="images/apache-tapestry-5-icon-144.png">
- <link rel="apple-touch-icon-precomposed" sizes="114x114"
href="images/apache-tapestry-5-icon-114.png">
- <link rel="apple-touch-icon-precomposed" sizes="72x72"
href="images/apache-tapestry-5-icon-72.png">
- <link rel="apple-touch-icon-precomposed"
href="images/apache-tapestry-5-icon-57.png">
- <link rel="shortcut icon" href="images/apache-tapestry-5-icon-32.png">
+ <link rel="apple-touch-icon-precomposed" sizes="144x144"
href="/images/apache-tapestry-5-icon-144.png">
+ <link rel="apple-touch-icon-precomposed" sizes="114x114"
href="/images/apache-tapestry-5-icon-114.png">
+ <link rel="apple-touch-icon-precomposed" sizes="72x72"
href="/images/apache-tapestry-5-icon-72.png">
+ <link rel="apple-touch-icon-precomposed"
href="/images/apache-tapestry-5-icon-57.png">
+ <link rel="shortcut icon" href="/images/apache-tapestry-5-icon-32.png">
<link rel="stylesheet"
href="https://fonts.googleapis.com/css2?family=Sarabun:ital,wght@0,400;0,700;1,400;1,700&display=swap">
<link rel="stylesheet"
href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css"
integrity="sha384-Vkoo8x4CGsO3+Hhxv8T/Q5PaXtkKtu6ug5TOeNV6gBiFeWPGFN9MuhOf23Q9Ifjh"
crossorigin="anonymous">
<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.13.0/css/all.min.css">
<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/prism/1.20.0/themes/prism.min.css">
- <link rel="stylesheet" href="/styles/main.css">
+ <link rel="stylesheet" href="/styles/main.css">
<script type="text/javascript">
if (window.location.protocol === 'http:' && window.location.hostname !==
'localhost') {
@@ -55,7 +55,7 @@
ga('create', 'UA-400821-1', 'auto');
ga('send', 'pageview');
</script>
- <script async src='https://www.google-analytics.com/analytics.js'></script>
+ <script async src="https://www.google-analytics.com/analytics.js"></script>
</head>
<body>
<!-- /// Navigation Start -->
@@ -310,4 +310,4 @@ public final class org/apache/tapestry5/
</footer><br clear="none"></p><p><br clear="none"></p></div>
<!-- /// Footer End -->
</body>
-</html>
\ No newline at end of file
+</html>
Modified: websites/production/tapestry/content/mailing-lists.html
==============================================================================
--- websites/production/tapestry/content/mailing-lists.html (original)
+++ websites/production/tapestry/content/mailing-lists.html Fri May 1 00:29:08
2020
@@ -19,24 +19,24 @@
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
- <meta name="keywords" content="tapestry, apache, apache tapestry, frameowrk,
java, web, component, open source, application, dynamic, scalable, robust,
servlet">
+ <meta name="keywords" content="tapestry, apache, apache tapestry, framework,
java, web, component, open source, application, dynamic, scalable, robust,
servlet">
<meta name="description" content="Apache Tapestry is a open-source
component-oriented framework for creating dynamic, robust, highly scalable web
applications in Java. Tapestry complements and builds upon the standard Java
Servlet API, and so it works in any servlet container or application server.">
<title>
Mailing Lists - Apache Tapestry
</title>
- <link rel="apple-touch-icon-precomposed" sizes="144x144"
href="images/apache-tapestry-5-icon-144.png">
- <link rel="apple-touch-icon-precomposed" sizes="114x114"
href="images/apache-tapestry-5-icon-114.png">
- <link rel="apple-touch-icon-precomposed" sizes="72x72"
href="images/apache-tapestry-5-icon-72.png">
- <link rel="apple-touch-icon-precomposed"
href="images/apache-tapestry-5-icon-57.png">
- <link rel="shortcut icon" href="images/apache-tapestry-5-icon-32.png">
+ <link rel="apple-touch-icon-precomposed" sizes="144x144"
href="/images/apache-tapestry-5-icon-144.png">
+ <link rel="apple-touch-icon-precomposed" sizes="114x114"
href="/images/apache-tapestry-5-icon-114.png">
+ <link rel="apple-touch-icon-precomposed" sizes="72x72"
href="/images/apache-tapestry-5-icon-72.png">
+ <link rel="apple-touch-icon-precomposed"
href="/images/apache-tapestry-5-icon-57.png">
+ <link rel="shortcut icon" href="/images/apache-tapestry-5-icon-32.png">
<link rel="stylesheet"
href="https://fonts.googleapis.com/css2?family=Sarabun:ital,wght@0,400;0,700;1,400;1,700&display=swap">
<link rel="stylesheet"
href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css"
integrity="sha384-Vkoo8x4CGsO3+Hhxv8T/Q5PaXtkKtu6ug5TOeNV6gBiFeWPGFN9MuhOf23Q9Ifjh"
crossorigin="anonymous">
<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.13.0/css/all.min.css">
<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/prism/1.20.0/themes/prism.min.css">
- <link rel="stylesheet" href="/styles/main.css">
+ <link rel="stylesheet" href="/styles/main.css">
<script type="text/javascript">
if (window.location.protocol === 'http:' && window.location.hostname !==
'localhost') {
@@ -55,7 +55,7 @@
ga('create', 'UA-400821-1', 'auto');
ga('send', 'pageview');
</script>
- <script async src='https://www.google-analytics.com/analytics.js'></script>
+ <script async src="https://www.google-analytics.com/analytics.js"></script>
</head>
<body>
<!-- /// Navigation Start -->
@@ -142,7 +142,7 @@
<!-- /// Content Start -->
<div id="content">
- <div id="ConfluenceContent"><p>Like all Apache
projects, Tapestry uses mailing lists for most communication. You can subscribe
by sending e-mail to the addresses below. For each list, there are subscribe,
unsubscribe, and archive links. All Tapestry users are welcome to subscribe to
any of these lists, however questions on how to <em>use</em> Tapestry in your
application are best sent to the <em>user</em> mailing list.</p><p>Please note
that the Nabble archives are set to read-only and don't allow for posting or
answering using Nabble's web interface. You have to subscribe to the mailing
list in order to post.</p><div class="table-wrap"><table class="table
table-bordered"><tbody><tr><td colspan="1" rowspan="1"
class="confluenceTd"></td><th colspan="1" rowspan="1"
class="confluenceTh"><p>Subscribe</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Unsubscribe</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Apache Archive</p></th><th co
lspan="1" rowspan="1" class="confluenceTh"><p>Nabble Archive</p></th><th
colspan="1" rowspan="1" class="confluenceTh"><p>MarkMail
Archive</p></th></tr><tr><th colspan="1" rowspan="1"
class="confluenceTh"><p>Tapestry User List</p></th><td colspan="1" rowspan="1"
class="confluenceTd"><p><a class="external-link"
href="mailto:[email protected]"
rel="nofollow">Subscribe</a></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><a class="external-link"
href="mailto:[email protected]"
rel="nofollow">Unsubscribe</a></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><a class="external-link"
href="http://mail-archives.apache.org/mod_mbox/tapestry-users/">mail-archives.apache.org</a></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><a class="external-link"
href="http://tapestry.1045711.n5.nabble.com/Tapestry-User-f2375125.html"
rel="nofollow">www.nabble.com</a></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><a class=
"external-link"
href="http://tapestry.markmail.org/search/?q=list%3Aorg.apache.tapestry.users"
rel="nofollow">tapestry.markmail.org</a></p></td></tr><tr><th colspan="1"
rowspan="1" class="confluenceTh"><p>Tapestry Developer List</p></th><td
colspan="1" rowspan="1" class="confluenceTd"><p><a class="external-link"
href="mailto:[email protected]"
rel="nofollow">Subscribe</a></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><a class="external-link"
href="mailto:[email protected]"
rel="nofollow">Unsubscribe</a></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><a class="external-link"
href="http://mail-archives.apache.org/mod_mbox/tapestry-dev/">mail-archives.apache.org</a></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><a class="external-link"
href="http://tapestry.1045711.n5.nabble.com/Tapestry-Dev-f2438278.html"
rel="nofollow">www.nabble.com</a></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><a class="ext
ernal-link"
href="http://tapestry.markmail.org/search/?q=list%3Aorg.apache.tapestry.dev"
rel="nofollow">tapestry.markmail.org</a></p></td></tr><tr><th colspan="1"
rowspan="1" class="confluenceTh"><p>Tapestry Commits List</p></th><td
colspan="1" rowspan="1" class="confluenceTd"><p><a class="external-link"
href="mailto:[email protected]"
rel="nofollow">Subscribe</a></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><a class="external-link"
href="mailto:[email protected]"
rel="nofollow">Unsubscribe</a></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><a class="external-link"
href="http://mail-archives.apache.org/mod_mbox/tapestry-commits/">mail-archives.apache.org</a></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>-</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><a class="external-link"
href="http://tapestry.markmail.org/search/?q=list%3Aorg.apache.tapestry.commits"
rel="nofollow">tapestry.markmail
.org</a></p></td></tr><tr><th colspan="1" rowspan="1"
class="confluenceTh"><p>Search Multiple Lists</p></th><td colspan="1"
rowspan="1" class="confluenceTd"><p>-</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>-</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>-</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><a class="external-link"
href="http://tapestry.1045711.n5.nabble.com/"
rel="nofollow">www.nabble.com</a></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><a class="external-link"
href="http://tapestry.markmail.org/search/?q=#query:+page:1+state:facets"
rel="nofollow">tapestry.markmail.org</a></p></td></tr></tbody></table></div></div>
+ <div id="ConfluenceContent"><p>Like all Apache
projects, Tapestry uses mailing lists for most communication. You can subscribe
by sending e-mail to the addresses below. For each list, there are subscribe,
unsubscribe, and archive links. All Tapestry users are welcome to subscribe to
any of these lists, however questions on how to <em>use</em> Tapestry in your
application are best sent to the <em>user</em> mailing list.</p><p>Please note
that the Nabble archives are set to read-only and don't allow for posting or
answering using Nabble's web interface. You have to subscribe to the mailing
list in order to post.</p><div class="table-wrap"><table class="table
table-bordered table-responsive"><tbody><tr><td colspan="1" rowspan="1"
class="confluenceTd"></td><th colspan="1" rowspan="1"
class="confluenceTh"><p>Subscribe</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Unsubscribe</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Apache Archi
ve</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Nabble
Archive</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>MarkMail
Archive</p></th></tr><tr><th colspan="1" rowspan="1"
class="confluenceTh"><p>Tapestry User List</p></th><td colspan="1" rowspan="1"
class="confluenceTd"><p><a class="external-link"
href="mailto:[email protected]"
rel="nofollow">Subscribe</a></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><a class="external-link"
href="mailto:[email protected]"
rel="nofollow">Unsubscribe</a></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><a class="external-link"
href="http://mail-archives.apache.org/mod_mbox/tapestry-users/">mail-archives.apache.org</a></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><a class="external-link"
href="http://tapestry.1045711.n5.nabble.com/Tapestry-User-f2375125.html"
rel="nofollow">www.nabble.com</a></p></td><td colspan="1" rowspan="1"
class="confluenc
eTd"><p><a class="external-link"
href="http://tapestry.markmail.org/search/?q=list%3Aorg.apache.tapestry.users"
rel="nofollow">tapestry.markmail.org</a></p></td></tr><tr><th colspan="1"
rowspan="1" class="confluenceTh"><p>Tapestry Developer List</p></th><td
colspan="1" rowspan="1" class="confluenceTd"><p><a class="external-link"
href="mailto:[email protected]"
rel="nofollow">Subscribe</a></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><a class="external-link"
href="mailto:[email protected]"
rel="nofollow">Unsubscribe</a></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><a class="external-link"
href="http://mail-archives.apache.org/mod_mbox/tapestry-dev/">mail-archives.apache.org</a></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><a class="external-link"
href="http://tapestry.1045711.n5.nabble.com/Tapestry-Dev-f2438278.html"
rel="nofollow">www.nabble.com</a></p></td><td colspan="1" rowspan="1"
class="confluenceTd"
><p><a class="external-link"
>href="http://tapestry.markmail.org/search/?q=list%3Aorg.apache.tapestry.dev"
>rel="nofollow">tapestry.markmail.org</a></p></td></tr><tr><th colspan="1"
>rowspan="1" class="confluenceTh"><p>Tapestry Commits List</p></th><td
>colspan="1" rowspan="1" class="confluenceTd"><p><a class="external-link"
>href="mailto:[email protected]"
>rel="nofollow">Subscribe</a></p></td><td colspan="1" rowspan="1"
>class="confluenceTd"><p><a class="external-link"
>href="mailto:[email protected]"
>rel="nofollow">Unsubscribe</a></p></td><td colspan="1" rowspan="1"
>class="confluenceTd"><p><a class="external-link"
>href="http://mail-archives.apache.org/mod_mbox/tapestry-commits/">mail-archives.apache.org</a></p></td><td
> colspan="1" rowspan="1" class="confluenceTd"><p>-</p></td><td colspan="1"
>rowspan="1" class="confluenceTd"><p><a class="external-link"
>href="http://tapestry.markmail.org/search/?q=list%3Aorg.apache.tapestry.commits"
> rel="nofollow">
tapestry.markmail.org</a></p></td></tr><tr><th colspan="1" rowspan="1"
class="confluenceTh"><p>Search Multiple Lists</p></th><td colspan="1"
rowspan="1" class="confluenceTd"><p>-</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>-</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>-</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><a class="external-link"
href="http://tapestry.1045711.n5.nabble.com/"
rel="nofollow">www.nabble.com</a></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><a class="external-link"
href="http://tapestry.markmail.org/search/?q=#query:+page:1+state:facets"
rel="nofollow">tapestry.markmail.org</a></p></td></tr></tbody></table></div></div>
</div>
<!-- /// Content End -->
</div>
@@ -196,4 +196,4 @@
</footer><br clear="none"></p><p><br clear="none"></p></div>
<!-- /// Footer End -->
</body>
-</html>
\ No newline at end of file
+</html>
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 Fri May 1
00:29:08 2020
@@ -19,24 +19,24 @@
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
- <meta name="keywords" content="tapestry, apache, apache tapestry, frameowrk,
java, web, component, open source, application, dynamic, scalable, robust,
servlet">
+ <meta name="keywords" content="tapestry, apache, apache tapestry, framework,
java, web, component, open source, application, dynamic, scalable, robust,
servlet">
<meta name="description" content="Apache Tapestry is a open-source
component-oriented framework for creating dynamic, robust, highly scalable web
applications in Java. Tapestry complements and builds upon the standard Java
Servlet API, and so it works in any servlet container or application server.">
<title>
Maven Support FAQ - Apache Tapestry
</title>
- <link rel="apple-touch-icon-precomposed" sizes="144x144"
href="images/apache-tapestry-5-icon-144.png">
- <link rel="apple-touch-icon-precomposed" sizes="114x114"
href="images/apache-tapestry-5-icon-114.png">
- <link rel="apple-touch-icon-precomposed" sizes="72x72"
href="images/apache-tapestry-5-icon-72.png">
- <link rel="apple-touch-icon-precomposed"
href="images/apache-tapestry-5-icon-57.png">
- <link rel="shortcut icon" href="images/apache-tapestry-5-icon-32.png">
+ <link rel="apple-touch-icon-precomposed" sizes="144x144"
href="/images/apache-tapestry-5-icon-144.png">
+ <link rel="apple-touch-icon-precomposed" sizes="114x114"
href="/images/apache-tapestry-5-icon-114.png">
+ <link rel="apple-touch-icon-precomposed" sizes="72x72"
href="/images/apache-tapestry-5-icon-72.png">
+ <link rel="apple-touch-icon-precomposed"
href="/images/apache-tapestry-5-icon-57.png">
+ <link rel="shortcut icon" href="/images/apache-tapestry-5-icon-32.png">
<link rel="stylesheet"
href="https://fonts.googleapis.com/css2?family=Sarabun:ital,wght@0,400;0,700;1,400;1,700&display=swap">
<link rel="stylesheet"
href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css"
integrity="sha384-Vkoo8x4CGsO3+Hhxv8T/Q5PaXtkKtu6ug5TOeNV6gBiFeWPGFN9MuhOf23Q9Ifjh"
crossorigin="anonymous">
<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.13.0/css/all.min.css">
<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/prism/1.20.0/themes/prism.min.css">
- <link rel="stylesheet" href="/styles/main.css">
+ <link rel="stylesheet" href="/styles/main.css">
<script type="text/javascript">
if (window.location.protocol === 'http:' && window.location.hostname !==
'localhost') {
@@ -55,7 +55,7 @@
ga('create', 'UA-400821-1', 'auto');
ga('send', 'pageview');
</script>
- <script async src='https://www.google-analytics.com/analytics.js'></script>
+ <script async src="https://www.google-analytics.com/analytics.js"></script>
</head>
<body>
<!-- /// Navigation Start -->
@@ -143,11 +143,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.rbtoc1588040628246 {padding: 0px;}
-div.rbtoc1588040628246 ul {list-style: disc;margin-left: 0px;}
-div.rbtoc1588040628246 li {margin-left: 0px;padding-left: 0px;}
+div.rbtoc1588292676970 {padding: 0px;}
+div.rbtoc1588292676970 ul {list-style: disc;margin-left: 0px;}
+div.rbtoc1588292676970 li {margin-left: 0px;padding-left: 0px;}
-/*]]>*/</style></p><div class="toc-macro rbtoc1588040628246">
+/*]]>*/</style></p><div class="toc-macro rbtoc1588292676970">
<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>
@@ -220,4 +220,4 @@ div.rbtoc1588040628246 li {margin-left:
</footer><br clear="none"></p><p><br clear="none"></p></div>
<!-- /// Footer End -->
</body>
-</html>
\ No newline at end of file
+</html>
Modified: websites/production/tapestry/content/menuleft.html
==============================================================================
--- websites/production/tapestry/content/menuleft.html (original)
+++ websites/production/tapestry/content/menuleft.html Fri May 1 00:29:08 2020
@@ -19,24 +19,24 @@
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
- <meta name="keywords" content="tapestry, apache, apache tapestry, frameowrk,
java, web, component, open source, application, dynamic, scalable, robust,
servlet">
+ <meta name="keywords" content="tapestry, apache, apache tapestry, framework,
java, web, component, open source, application, dynamic, scalable, robust,
servlet">
<meta name="description" content="Apache Tapestry is a open-source
component-oriented framework for creating dynamic, robust, highly scalable web
applications in Java. Tapestry complements and builds upon the standard Java
Servlet API, and so it works in any servlet container or application server.">
<title>
menuleft - Apache Tapestry
</title>
- <link rel="apple-touch-icon-precomposed" sizes="144x144"
href="images/apache-tapestry-5-icon-144.png">
- <link rel="apple-touch-icon-precomposed" sizes="114x114"
href="images/apache-tapestry-5-icon-114.png">
- <link rel="apple-touch-icon-precomposed" sizes="72x72"
href="images/apache-tapestry-5-icon-72.png">
- <link rel="apple-touch-icon-precomposed"
href="images/apache-tapestry-5-icon-57.png">
- <link rel="shortcut icon" href="images/apache-tapestry-5-icon-32.png">
+ <link rel="apple-touch-icon-precomposed" sizes="144x144"
href="/images/apache-tapestry-5-icon-144.png">
+ <link rel="apple-touch-icon-precomposed" sizes="114x114"
href="/images/apache-tapestry-5-icon-114.png">
+ <link rel="apple-touch-icon-precomposed" sizes="72x72"
href="/images/apache-tapestry-5-icon-72.png">
+ <link rel="apple-touch-icon-precomposed"
href="/images/apache-tapestry-5-icon-57.png">
+ <link rel="shortcut icon" href="/images/apache-tapestry-5-icon-32.png">
<link rel="stylesheet"
href="https://fonts.googleapis.com/css2?family=Sarabun:ital,wght@0,400;0,700;1,400;1,700&display=swap">
<link rel="stylesheet"
href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css"
integrity="sha384-Vkoo8x4CGsO3+Hhxv8T/Q5PaXtkKtu6ug5TOeNV6gBiFeWPGFN9MuhOf23Q9Ifjh"
crossorigin="anonymous">
<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.13.0/css/all.min.css">
<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/prism/1.20.0/themes/prism.min.css">
- <link rel="stylesheet" href="/styles/main.css">
+ <link rel="stylesheet" href="/styles/main.css">
<script type="text/javascript">
if (window.location.protocol === 'http:' && window.location.hostname !==
'localhost') {
@@ -55,7 +55,7 @@
ga('create', 'UA-400821-1', 'auto');
ga('send', 'pageview');
</script>
- <script async src='https://www.google-analytics.com/analytics.js'></script>
+ <script async src="https://www.google-analytics.com/analytics.js"></script>
</head>
<body>
<!-- /// Navigation Start -->
@@ -203,4 +203,4 @@
</footer><br clear="none"></p><p><br clear="none"></p></div>
<!-- /// Footer End -->
</body>
-</html>
\ No newline at end of file
+</html>
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 Fri
May 1 00:29:08 2020
@@ -19,24 +19,24 @@
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
- <meta name="keywords" content="tapestry, apache, apache tapestry, frameowrk,
java, web, component, open source, application, dynamic, scalable, robust,
servlet">
+ <meta name="keywords" content="tapestry, apache, apache tapestry, framework,
java, web, component, open source, application, dynamic, scalable, robust,
servlet">
<meta name="description" content="Apache Tapestry is a open-source
component-oriented framework for creating dynamic, robust, highly scalable web
applications in Java. Tapestry complements and builds upon the standard Java
Servlet API, and so it works in any servlet container or application server.">
<title>
Meta-Programming Page Content - Apache Tapestry
</title>
- <link rel="apple-touch-icon-precomposed" sizes="144x144"
href="images/apache-tapestry-5-icon-144.png">
- <link rel="apple-touch-icon-precomposed" sizes="114x114"
href="images/apache-tapestry-5-icon-114.png">
- <link rel="apple-touch-icon-precomposed" sizes="72x72"
href="images/apache-tapestry-5-icon-72.png">
- <link rel="apple-touch-icon-precomposed"
href="images/apache-tapestry-5-icon-57.png">
- <link rel="shortcut icon" href="images/apache-tapestry-5-icon-32.png">
+ <link rel="apple-touch-icon-precomposed" sizes="144x144"
href="/images/apache-tapestry-5-icon-144.png">
+ <link rel="apple-touch-icon-precomposed" sizes="114x114"
href="/images/apache-tapestry-5-icon-114.png">
+ <link rel="apple-touch-icon-precomposed" sizes="72x72"
href="/images/apache-tapestry-5-icon-72.png">
+ <link rel="apple-touch-icon-precomposed"
href="/images/apache-tapestry-5-icon-57.png">
+ <link rel="shortcut icon" href="/images/apache-tapestry-5-icon-32.png">
<link rel="stylesheet"
href="https://fonts.googleapis.com/css2?family=Sarabun:ital,wght@0,400;0,700;1,400;1,700&display=swap">
<link rel="stylesheet"
href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css"
integrity="sha384-Vkoo8x4CGsO3+Hhxv8T/Q5PaXtkKtu6ug5TOeNV6gBiFeWPGFN9MuhOf23Q9Ifjh"
crossorigin="anonymous">
<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.13.0/css/all.min.css">
<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/prism/1.20.0/themes/prism.min.css">
- <link rel="stylesheet" href="/styles/main.css">
+ <link rel="stylesheet" href="/styles/main.css">
<script type="text/javascript">
if (window.location.protocol === 'http:' && window.location.hostname !==
'localhost') {
@@ -55,7 +55,7 @@
ga('create', 'UA-400821-1', 'auto');
ga('send', 'pageview');
</script>
- <script async src='https://www.google-analytics.com/analytics.js'></script>
+ <script async src="https://www.google-analytics.com/analytics.js"></script>
</head>
<body>
<!-- /// Navigation Start -->
@@ -332,4 +332,4 @@ public class ForbidFramingFilter impleme
</footer><br clear="none"></p><p><br clear="none"></p></div>
<!-- /// Footer End -->
</body>
-</html>
\ No newline at end of file
+</html>
Modified: websites/production/tapestry/content/modules.html
==============================================================================
--- websites/production/tapestry/content/modules.html (original)
+++ websites/production/tapestry/content/modules.html Fri May 1 00:29:08 2020
@@ -19,24 +19,24 @@
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
- <meta name="keywords" content="tapestry, apache, apache tapestry, frameowrk,
java, web, component, open source, application, dynamic, scalable, robust,
servlet">
+ <meta name="keywords" content="tapestry, apache, apache tapestry, framework,
java, web, component, open source, application, dynamic, scalable, robust,
servlet">
<meta name="description" content="Apache Tapestry is a open-source
component-oriented framework for creating dynamic, robust, highly scalable web
applications in Java. Tapestry complements and builds upon the standard Java
Servlet API, and so it works in any servlet container or application server.">
<title>
Modules - Apache Tapestry
</title>
- <link rel="apple-touch-icon-precomposed" sizes="144x144"
href="images/apache-tapestry-5-icon-144.png">
- <link rel="apple-touch-icon-precomposed" sizes="114x114"
href="images/apache-tapestry-5-icon-114.png">
- <link rel="apple-touch-icon-precomposed" sizes="72x72"
href="images/apache-tapestry-5-icon-72.png">
- <link rel="apple-touch-icon-precomposed"
href="images/apache-tapestry-5-icon-57.png">
- <link rel="shortcut icon" href="images/apache-tapestry-5-icon-32.png">
+ <link rel="apple-touch-icon-precomposed" sizes="144x144"
href="/images/apache-tapestry-5-icon-144.png">
+ <link rel="apple-touch-icon-precomposed" sizes="114x114"
href="/images/apache-tapestry-5-icon-114.png">
+ <link rel="apple-touch-icon-precomposed" sizes="72x72"
href="/images/apache-tapestry-5-icon-72.png">
+ <link rel="apple-touch-icon-precomposed"
href="/images/apache-tapestry-5-icon-57.png">
+ <link rel="shortcut icon" href="/images/apache-tapestry-5-icon-32.png">
<link rel="stylesheet"
href="https://fonts.googleapis.com/css2?family=Sarabun:ital,wght@0,400;0,700;1,400;1,700&display=swap">
<link rel="stylesheet"
href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css"
integrity="sha384-Vkoo8x4CGsO3+Hhxv8T/Q5PaXtkKtu6ug5TOeNV6gBiFeWPGFN9MuhOf23Q9Ifjh"
crossorigin="anonymous">
<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.13.0/css/all.min.css">
<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/prism/1.20.0/themes/prism.min.css">
- <link rel="stylesheet" href="/styles/main.css">
+ <link rel="stylesheet" href="/styles/main.css">
<script type="text/javascript">
if (window.location.protocol === 'http:' && window.location.hostname !==
'localhost') {
@@ -55,7 +55,7 @@
ga('create', 'UA-400821-1', 'auto');
ga('send', 'pageview');
</script>
- <script async src='https://www.google-analytics.com/analytics.js'></script>
+ <script async src="https://www.google-analytics.com/analytics.js"></script>
</head>
<body>
<!-- /// Navigation Start -->
@@ -196,4 +196,4 @@
</footer><br clear="none"></p><p><br clear="none"></p></div>
<!-- /// Footer End -->
</body>
-</html>
\ No newline at end of file
+</html>
Modified: websites/production/tapestry/content/navigation.html
==============================================================================
--- websites/production/tapestry/content/navigation.html (original)
+++ websites/production/tapestry/content/navigation.html Fri May 1 00:29:08
2020
@@ -19,24 +19,24 @@
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
- <meta name="keywords" content="tapestry, apache, apache tapestry, frameowrk,
java, web, component, open source, application, dynamic, scalable, robust,
servlet">
+ <meta name="keywords" content="tapestry, apache, apache tapestry, framework,
java, web, component, open source, application, dynamic, scalable, robust,
servlet">
<meta name="description" content="Apache Tapestry is a open-source
component-oriented framework for creating dynamic, robust, highly scalable web
applications in Java. Tapestry complements and builds upon the standard Java
Servlet API, and so it works in any servlet container or application server.">
<title>
Navigation - Apache Tapestry
</title>
- <link rel="apple-touch-icon-precomposed" sizes="144x144"
href="images/apache-tapestry-5-icon-144.png">
- <link rel="apple-touch-icon-precomposed" sizes="114x114"
href="images/apache-tapestry-5-icon-114.png">
- <link rel="apple-touch-icon-precomposed" sizes="72x72"
href="images/apache-tapestry-5-icon-72.png">
- <link rel="apple-touch-icon-precomposed"
href="images/apache-tapestry-5-icon-57.png">
- <link rel="shortcut icon" href="images/apache-tapestry-5-icon-32.png">
+ <link rel="apple-touch-icon-precomposed" sizes="144x144"
href="/images/apache-tapestry-5-icon-144.png">
+ <link rel="apple-touch-icon-precomposed" sizes="114x114"
href="/images/apache-tapestry-5-icon-114.png">
+ <link rel="apple-touch-icon-precomposed" sizes="72x72"
href="/images/apache-tapestry-5-icon-72.png">
+ <link rel="apple-touch-icon-precomposed"
href="/images/apache-tapestry-5-icon-57.png">
+ <link rel="shortcut icon" href="/images/apache-tapestry-5-icon-32.png">
<link rel="stylesheet"
href="https://fonts.googleapis.com/css2?family=Sarabun:ital,wght@0,400;0,700;1,400;1,700&display=swap">
<link rel="stylesheet"
href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css"
integrity="sha384-Vkoo8x4CGsO3+Hhxv8T/Q5PaXtkKtu6ug5TOeNV6gBiFeWPGFN9MuhOf23Q9Ifjh"
crossorigin="anonymous">
<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.13.0/css/all.min.css">
<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/prism/1.20.0/themes/prism.min.css">
- <link rel="stylesheet" href="/styles/main.css">
+ <link rel="stylesheet" href="/styles/main.css">
<script type="text/javascript">
if (window.location.protocol === 'http:' && window.location.hostname !==
'localhost') {
@@ -55,7 +55,7 @@
ga('create', 'UA-400821-1', 'auto');
ga('send', 'pageview');
</script>
- <script async src='https://www.google-analytics.com/analytics.js'></script>
+ <script async src="https://www.google-analytics.com/analytics.js"></script>
</head>
<body>
<!-- /// Navigation Start -->
@@ -259,4 +259,4 @@
</footer><br clear="none"></p><p><br clear="none"></p></div>
<!-- /// Footer End -->
</body>
-</html>
\ No newline at end of file
+</html>
Modified: websites/production/tapestry/content/navigationv2.html
==============================================================================
--- websites/production/tapestry/content/navigationv2.html (original)
+++ websites/production/tapestry/content/navigationv2.html Fri May 1 00:29:08
2020
@@ -19,24 +19,24 @@
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
- <meta name="keywords" content="tapestry, apache, apache tapestry, frameowrk,
java, web, component, open source, application, dynamic, scalable, robust,
servlet">
+ <meta name="keywords" content="tapestry, apache, apache tapestry, framework,
java, web, component, open source, application, dynamic, scalable, robust,
servlet">
<meta name="description" content="Apache Tapestry is a open-source
component-oriented framework for creating dynamic, robust, highly scalable web
applications in Java. Tapestry complements and builds upon the standard Java
Servlet API, and so it works in any servlet container or application server.">
<title>
NavigationV2 - Apache Tapestry
</title>
- <link rel="apple-touch-icon-precomposed" sizes="144x144"
href="images/apache-tapestry-5-icon-144.png">
- <link rel="apple-touch-icon-precomposed" sizes="114x114"
href="images/apache-tapestry-5-icon-114.png">
- <link rel="apple-touch-icon-precomposed" sizes="72x72"
href="images/apache-tapestry-5-icon-72.png">
- <link rel="apple-touch-icon-precomposed"
href="images/apache-tapestry-5-icon-57.png">
- <link rel="shortcut icon" href="images/apache-tapestry-5-icon-32.png">
+ <link rel="apple-touch-icon-precomposed" sizes="144x144"
href="/images/apache-tapestry-5-icon-144.png">
+ <link rel="apple-touch-icon-precomposed" sizes="114x114"
href="/images/apache-tapestry-5-icon-114.png">
+ <link rel="apple-touch-icon-precomposed" sizes="72x72"
href="/images/apache-tapestry-5-icon-72.png">
+ <link rel="apple-touch-icon-precomposed"
href="/images/apache-tapestry-5-icon-57.png">
+ <link rel="shortcut icon" href="/images/apache-tapestry-5-icon-32.png">
<link rel="stylesheet"
href="https://fonts.googleapis.com/css2?family=Sarabun:ital,wght@0,400;0,700;1,400;1,700&display=swap">
<link rel="stylesheet"
href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css"
integrity="sha384-Vkoo8x4CGsO3+Hhxv8T/Q5PaXtkKtu6ug5TOeNV6gBiFeWPGFN9MuhOf23Q9Ifjh"
crossorigin="anonymous">
<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.13.0/css/all.min.css">
<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/prism/1.20.0/themes/prism.min.css">
- <link rel="stylesheet" href="/styles/main.css">
+ <link rel="stylesheet" href="/styles/main.css">
<script type="text/javascript">
if (window.location.protocol === 'http:' && window.location.hostname !==
'localhost') {
@@ -55,7 +55,7 @@
ga('create', 'UA-400821-1', 'auto');
ga('send', 'pageview');
</script>
- <script async src='https://www.google-analytics.com/analytics.js'></script>
+ <script async src="https://www.google-analytics.com/analytics.js"></script>
</head>
<body>
<!-- /// Navigation Start -->
@@ -259,4 +259,4 @@
</footer><br clear="none"></p><p><br clear="none"></p></div>
<!-- /// Footer End -->
</body>
-</html>
\ No newline at end of file
+</html>
Modified: websites/production/tapestry/content/news.html
==============================================================================
--- websites/production/tapestry/content/news.html (original)
+++ websites/production/tapestry/content/news.html Fri May 1 00:29:08 2020
@@ -19,24 +19,24 @@
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
- <meta name="keywords" content="tapestry, apache, apache tapestry, frameowrk,
java, web, component, open source, application, dynamic, scalable, robust,
servlet">
+ <meta name="keywords" content="tapestry, apache, apache tapestry, framework,
java, web, component, open source, application, dynamic, scalable, robust,
servlet">
<meta name="description" content="Apache Tapestry is a open-source
component-oriented framework for creating dynamic, robust, highly scalable web
applications in Java. Tapestry complements and builds upon the standard Java
Servlet API, and so it works in any servlet container or application server.">
<title>
News - Apache Tapestry
</title>
- <link rel="apple-touch-icon-precomposed" sizes="144x144"
href="images/apache-tapestry-5-icon-144.png">
- <link rel="apple-touch-icon-precomposed" sizes="114x114"
href="images/apache-tapestry-5-icon-114.png">
- <link rel="apple-touch-icon-precomposed" sizes="72x72"
href="images/apache-tapestry-5-icon-72.png">
- <link rel="apple-touch-icon-precomposed"
href="images/apache-tapestry-5-icon-57.png">
- <link rel="shortcut icon" href="images/apache-tapestry-5-icon-32.png">
+ <link rel="apple-touch-icon-precomposed" sizes="144x144"
href="/images/apache-tapestry-5-icon-144.png">
+ <link rel="apple-touch-icon-precomposed" sizes="114x114"
href="/images/apache-tapestry-5-icon-114.png">
+ <link rel="apple-touch-icon-precomposed" sizes="72x72"
href="/images/apache-tapestry-5-icon-72.png">
+ <link rel="apple-touch-icon-precomposed"
href="/images/apache-tapestry-5-icon-57.png">
+ <link rel="shortcut icon" href="/images/apache-tapestry-5-icon-32.png">
<link rel="stylesheet"
href="https://fonts.googleapis.com/css2?family=Sarabun:ital,wght@0,400;0,700;1,400;1,700&display=swap">
<link rel="stylesheet"
href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css"
integrity="sha384-Vkoo8x4CGsO3+Hhxv8T/Q5PaXtkKtu6ug5TOeNV6gBiFeWPGFN9MuhOf23Q9Ifjh"
crossorigin="anonymous">
<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.13.0/css/all.min.css">
<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/prism/1.20.0/themes/prism.min.css">
- <link rel="stylesheet" href="/styles/main.css">
+ <link rel="stylesheet" href="/styles/main.css">
<script type="text/javascript">
if (window.location.protocol === 'http:' && window.location.hostname !==
'localhost') {
@@ -55,7 +55,7 @@
ga('create', 'UA-400821-1', 'auto');
ga('send', 'pageview');
</script>
- <script async src='https://www.google-analytics.com/analytics.js'></script>
+ <script async src="https://www.google-analytics.com/analytics.js"></script>
</head>
<body>
<!-- /// Navigation Start -->
@@ -831,4 +831,4 @@ If you're using Maven (or Gradle or Ivy,
</footer><br clear="none"></p><p><br clear="none"></p></div>
<!-- /// Footer End -->
</body>
-</html>
\ No newline at end of file
+</html>
Modified: websites/production/tapestry/content/object-providers.html
==============================================================================
--- websites/production/tapestry/content/object-providers.html (original)
+++ websites/production/tapestry/content/object-providers.html Fri May 1
00:29:08 2020
@@ -19,24 +19,24 @@
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
- <meta name="keywords" content="tapestry, apache, apache tapestry, frameowrk,
java, web, component, open source, application, dynamic, scalable, robust,
servlet">
+ <meta name="keywords" content="tapestry, apache, apache tapestry, framework,
java, web, component, open source, application, dynamic, scalable, robust,
servlet">
<meta name="description" content="Apache Tapestry is a open-source
component-oriented framework for creating dynamic, robust, highly scalable web
applications in Java. Tapestry complements and builds upon the standard Java
Servlet API, and so it works in any servlet container or application server.">
<title>
Object Providers - Apache Tapestry
</title>
- <link rel="apple-touch-icon-precomposed" sizes="144x144"
href="images/apache-tapestry-5-icon-144.png">
- <link rel="apple-touch-icon-precomposed" sizes="114x114"
href="images/apache-tapestry-5-icon-114.png">
- <link rel="apple-touch-icon-precomposed" sizes="72x72"
href="images/apache-tapestry-5-icon-72.png">
- <link rel="apple-touch-icon-precomposed"
href="images/apache-tapestry-5-icon-57.png">
- <link rel="shortcut icon" href="images/apache-tapestry-5-icon-32.png">
+ <link rel="apple-touch-icon-precomposed" sizes="144x144"
href="/images/apache-tapestry-5-icon-144.png">
+ <link rel="apple-touch-icon-precomposed" sizes="114x114"
href="/images/apache-tapestry-5-icon-114.png">
+ <link rel="apple-touch-icon-precomposed" sizes="72x72"
href="/images/apache-tapestry-5-icon-72.png">
+ <link rel="apple-touch-icon-precomposed"
href="/images/apache-tapestry-5-icon-57.png">
+ <link rel="shortcut icon" href="/images/apache-tapestry-5-icon-32.png">
<link rel="stylesheet"
href="https://fonts.googleapis.com/css2?family=Sarabun:ital,wght@0,400;0,700;1,400;1,700&display=swap">
<link rel="stylesheet"
href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css"
integrity="sha384-Vkoo8x4CGsO3+Hhxv8T/Q5PaXtkKtu6ug5TOeNV6gBiFeWPGFN9MuhOf23Q9Ifjh"
crossorigin="anonymous">
<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.13.0/css/all.min.css">
<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/prism/1.20.0/themes/prism.min.css">
- <link rel="stylesheet" href="/styles/main.css">
+ <link rel="stylesheet" href="/styles/main.css">
<script type="text/javascript">
if (window.location.protocol === 'http:' && window.location.hostname !==
'localhost') {
@@ -55,7 +55,7 @@
ga('create', 'UA-400821-1', 'auto');
ga('send', 'pageview');
</script>
- <script async src='https://www.google-analytics.com/analytics.js'></script>
+ <script async src="https://www.google-analytics.com/analytics.js"></script>
</head>
<body>
<!-- /// Navigation Start -->
@@ -211,4 +211,4 @@
</footer><br clear="none"></p><p><br clear="none"></p></div>
<!-- /// Footer End -->
</body>
-</html>
\ No newline at end of file
+</html>
Modified: websites/production/tapestry/content/operation-tracker.html
==============================================================================
--- websites/production/tapestry/content/operation-tracker.html (original)
+++ websites/production/tapestry/content/operation-tracker.html Fri May 1
00:29:08 2020
@@ -19,24 +19,24 @@
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
- <meta name="keywords" content="tapestry, apache, apache tapestry, frameowrk,
java, web, component, open source, application, dynamic, scalable, robust,
servlet">
+ <meta name="keywords" content="tapestry, apache, apache tapestry, framework,
java, web, component, open source, application, dynamic, scalable, robust,
servlet">
<meta name="description" content="Apache Tapestry is a open-source
component-oriented framework for creating dynamic, robust, highly scalable web
applications in Java. Tapestry complements and builds upon the standard Java
Servlet API, and so it works in any servlet container or application server.">
<title>
Operation Tracker - Apache Tapestry
</title>
- <link rel="apple-touch-icon-precomposed" sizes="144x144"
href="images/apache-tapestry-5-icon-144.png">
- <link rel="apple-touch-icon-precomposed" sizes="114x114"
href="images/apache-tapestry-5-icon-114.png">
- <link rel="apple-touch-icon-precomposed" sizes="72x72"
href="images/apache-tapestry-5-icon-72.png">
- <link rel="apple-touch-icon-precomposed"
href="images/apache-tapestry-5-icon-57.png">
- <link rel="shortcut icon" href="images/apache-tapestry-5-icon-32.png">
+ <link rel="apple-touch-icon-precomposed" sizes="144x144"
href="/images/apache-tapestry-5-icon-144.png">
+ <link rel="apple-touch-icon-precomposed" sizes="114x114"
href="/images/apache-tapestry-5-icon-114.png">
+ <link rel="apple-touch-icon-precomposed" sizes="72x72"
href="/images/apache-tapestry-5-icon-72.png">
+ <link rel="apple-touch-icon-precomposed"
href="/images/apache-tapestry-5-icon-57.png">
+ <link rel="shortcut icon" href="/images/apache-tapestry-5-icon-32.png">
<link rel="stylesheet"
href="https://fonts.googleapis.com/css2?family=Sarabun:ital,wght@0,400;0,700;1,400;1,700&display=swap">
<link rel="stylesheet"
href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css"
integrity="sha384-Vkoo8x4CGsO3+Hhxv8T/Q5PaXtkKtu6ug5TOeNV6gBiFeWPGFN9MuhOf23Q9Ifjh"
crossorigin="anonymous">
<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.13.0/css/all.min.css">
<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/prism/1.20.0/themes/prism.min.css">
- <link rel="stylesheet" href="/styles/main.css">
+ <link rel="stylesheet" href="/styles/main.css">
<script type="text/javascript">
if (window.location.protocol === 'http:' && window.location.hostname !==
'localhost') {
@@ -55,7 +55,7 @@
ga('create', 'UA-400821-1', 'auto');
ga('send', 'pageview');
</script>
- <script async src='https://www.google-analytics.com/analytics.js'></script>
+ <script async src="https://www.google-analytics.com/analytics.js"></script>
</head>
<body>
<!-- /// Navigation Start -->
@@ -255,4 +255,4 @@
</footer><br clear="none"></p><p><br clear="none"></p></div>
<!-- /// Footer End -->
</body>
-</html>
\ No newline at end of file
+</html>
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 Fri May
1 00:29:08 2020
@@ -19,24 +19,24 @@
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
- <meta name="keywords" content="tapestry, apache, apache tapestry, frameowrk,
java, web, component, open source, application, dynamic, scalable, robust,
servlet">
+ <meta name="keywords" content="tapestry, apache, apache tapestry, framework,
java, web, component, open source, application, dynamic, scalable, robust,
servlet">
<meta name="description" content="Apache Tapestry is a open-source
component-oriented framework for creating dynamic, robust, highly scalable web
applications in Java. Tapestry complements and builds upon the standard Java
Servlet API, and so it works in any servlet container or application server.">
<title>
Ordering by Constraints - Apache Tapestry
</title>
- <link rel="apple-touch-icon-precomposed" sizes="144x144"
href="images/apache-tapestry-5-icon-144.png">
- <link rel="apple-touch-icon-precomposed" sizes="114x114"
href="images/apache-tapestry-5-icon-114.png">
- <link rel="apple-touch-icon-precomposed" sizes="72x72"
href="images/apache-tapestry-5-icon-72.png">
- <link rel="apple-touch-icon-precomposed"
href="images/apache-tapestry-5-icon-57.png">
- <link rel="shortcut icon" href="images/apache-tapestry-5-icon-32.png">
+ <link rel="apple-touch-icon-precomposed" sizes="144x144"
href="/images/apache-tapestry-5-icon-144.png">
+ <link rel="apple-touch-icon-precomposed" sizes="114x114"
href="/images/apache-tapestry-5-icon-114.png">
+ <link rel="apple-touch-icon-precomposed" sizes="72x72"
href="/images/apache-tapestry-5-icon-72.png">
+ <link rel="apple-touch-icon-precomposed"
href="/images/apache-tapestry-5-icon-57.png">
+ <link rel="shortcut icon" href="/images/apache-tapestry-5-icon-32.png">
<link rel="stylesheet"
href="https://fonts.googleapis.com/css2?family=Sarabun:ital,wght@0,400;0,700;1,400;1,700&display=swap">
<link rel="stylesheet"
href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css"
integrity="sha384-Vkoo8x4CGsO3+Hhxv8T/Q5PaXtkKtu6ug5TOeNV6gBiFeWPGFN9MuhOf23Q9Ifjh"
crossorigin="anonymous">
<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.13.0/css/all.min.css">
<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/prism/1.20.0/themes/prism.min.css">
- <link rel="stylesheet" href="/styles/main.css">
+ <link rel="stylesheet" href="/styles/main.css">
<script type="text/javascript">
if (window.location.protocol === 'http:' && window.location.hostname !==
'localhost') {
@@ -55,7 +55,7 @@
ga('create', 'UA-400821-1', 'auto');
ga('send', 'pageview');
</script>
- <script async src='https://www.google-analytics.com/analytics.js'></script>
+ <script async src="https://www.google-analytics.com/analytics.js"></script>
</head>
<body>
<!-- /// Navigation Start -->
@@ -196,4 +196,4 @@
</footer><br clear="none"></p><p><br clear="none"></p></div>
<!-- /// Footer End -->
</body>
-</html>
\ No newline at end of file
+</html>
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
Fri May 1 00:29:08 2020
@@ -19,24 +19,24 @@
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
- <meta name="keywords" content="tapestry, apache, apache tapestry, frameowrk,
java, web, component, open source, application, dynamic, scalable, robust,
servlet">
+ <meta name="keywords" content="tapestry, apache, apache tapestry, framework,
java, web, component, open source, application, dynamic, scalable, robust,
servlet">
<meta name="description" content="Apache Tapestry is a open-source
component-oriented framework for creating dynamic, robust, highly scalable web
applications in Java. Tapestry complements and builds upon the standard Java
Servlet API, and so it works in any servlet container or application server.">
<title>
Overriding Exception Reporting - Apache Tapestry
</title>
- <link rel="apple-touch-icon-precomposed" sizes="144x144"
href="images/apache-tapestry-5-icon-144.png">
- <link rel="apple-touch-icon-precomposed" sizes="114x114"
href="images/apache-tapestry-5-icon-114.png">
- <link rel="apple-touch-icon-precomposed" sizes="72x72"
href="images/apache-tapestry-5-icon-72.png">
- <link rel="apple-touch-icon-precomposed"
href="images/apache-tapestry-5-icon-57.png">
- <link rel="shortcut icon" href="images/apache-tapestry-5-icon-32.png">
+ <link rel="apple-touch-icon-precomposed" sizes="144x144"
href="/images/apache-tapestry-5-icon-144.png">
+ <link rel="apple-touch-icon-precomposed" sizes="114x114"
href="/images/apache-tapestry-5-icon-114.png">
+ <link rel="apple-touch-icon-precomposed" sizes="72x72"
href="/images/apache-tapestry-5-icon-72.png">
+ <link rel="apple-touch-icon-precomposed"
href="/images/apache-tapestry-5-icon-57.png">
+ <link rel="shortcut icon" href="/images/apache-tapestry-5-icon-32.png">
<link rel="stylesheet"
href="https://fonts.googleapis.com/css2?family=Sarabun:ital,wght@0,400;0,700;1,400;1,700&display=swap">
<link rel="stylesheet"
href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css"
integrity="sha384-Vkoo8x4CGsO3+Hhxv8T/Q5PaXtkKtu6ug5TOeNV6gBiFeWPGFN9MuhOf23Q9Ifjh"
crossorigin="anonymous">
<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.13.0/css/all.min.css">
<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/prism/1.20.0/themes/prism.min.css">
- <link rel="stylesheet" href="/styles/main.css">
+ <link rel="stylesheet" href="/styles/main.css">
<script type="text/javascript">
if (window.location.protocol === 'http:' && window.location.hostname !==
'localhost') {
@@ -55,7 +55,7 @@
ga('create', 'UA-400821-1', 'auto');
ga('send', 'pageview');
</script>
- <script async src='https://www.google-analytics.com/analytics.js'></script>
+ <script async src="https://www.google-analytics.com/analytics.js"></script>
</head>
<body>
<!-- /// Navigation Start -->
@@ -385,4 +385,4 @@ public class ExceptionReport implements
</footer><br clear="none"></p><p><br clear="none"></p></div>
<!-- /// Footer End -->
</body>
-</html>
\ No newline at end of file
+</html>
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
Fri May 1 00:29:08 2020
@@ -19,24 +19,24 @@
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
- <meta name="keywords" content="tapestry, apache, apache tapestry, frameowrk,
java, web, component, open source, application, dynamic, scalable, robust,
servlet">
+ <meta name="keywords" content="tapestry, apache, apache tapestry, framework,
java, web, component, open source, application, dynamic, scalable, robust,
servlet">
<meta name="description" content="Apache Tapestry is a open-source
component-oriented framework for creating dynamic, robust, highly scalable web
applications in Java. Tapestry complements and builds upon the standard Java
Servlet API, and so it works in any servlet container or application server.">
<title>
Page And Component Classes FAQ - Apache Tapestry
</title>
- <link rel="apple-touch-icon-precomposed" sizes="144x144"
href="images/apache-tapestry-5-icon-144.png">
- <link rel="apple-touch-icon-precomposed" sizes="114x114"
href="images/apache-tapestry-5-icon-114.png">
- <link rel="apple-touch-icon-precomposed" sizes="72x72"
href="images/apache-tapestry-5-icon-72.png">
- <link rel="apple-touch-icon-precomposed"
href="images/apache-tapestry-5-icon-57.png">
- <link rel="shortcut icon" href="images/apache-tapestry-5-icon-32.png">
+ <link rel="apple-touch-icon-precomposed" sizes="144x144"
href="/images/apache-tapestry-5-icon-144.png">
+ <link rel="apple-touch-icon-precomposed" sizes="114x114"
href="/images/apache-tapestry-5-icon-114.png">
+ <link rel="apple-touch-icon-precomposed" sizes="72x72"
href="/images/apache-tapestry-5-icon-72.png">
+ <link rel="apple-touch-icon-precomposed"
href="/images/apache-tapestry-5-icon-57.png">
+ <link rel="shortcut icon" href="/images/apache-tapestry-5-icon-32.png">
<link rel="stylesheet"
href="https://fonts.googleapis.com/css2?family=Sarabun:ital,wght@0,400;0,700;1,400;1,700&display=swap">
<link rel="stylesheet"
href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css"
integrity="sha384-Vkoo8x4CGsO3+Hhxv8T/Q5PaXtkKtu6ug5TOeNV6gBiFeWPGFN9MuhOf23Q9Ifjh"
crossorigin="anonymous">
<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.13.0/css/all.min.css">
<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/prism/1.20.0/themes/prism.min.css">
- <link rel="stylesheet" href="/styles/main.css">
+ <link rel="stylesheet" href="/styles/main.css">
<script type="text/javascript">
if (window.location.protocol === 'http:' && window.location.hostname !==
'localhost') {
@@ -55,7 +55,7 @@
ga('create', 'UA-400821-1', 'auto');
ga('send', 'pageview');
</script>
- <script async src='https://www.google-analytics.com/analytics.js'></script>
+ <script async src="https://www.google-analytics.com/analytics.js"></script>
</head>
<body>
<!-- /// Navigation Start -->
@@ -143,11 +143,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.rbtoc1588040552493 {padding: 0px;}
-div.rbtoc1588040552493 ul {list-style: disc;margin-left: 0px;}
-div.rbtoc1588040552493 li {margin-left: 0px;padding-left: 0px;}
+div.rbtoc1588292583669 {padding: 0px;}
+div.rbtoc1588292583669 ul {list-style: disc;margin-left: 0px;}
+div.rbtoc1588292583669 li {margin-left: 0px;padding-left: 0px;}
-/*]]>*/</style></p><div class="toc-macro rbtoc1588040552493">
+/*]]>*/</style></p><div class="toc-macro rbtoc1588292583669">
<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) {
@@ -182,13 +182,13 @@ public class DBImage
-<span class="gliffy-container" id="gliffy-container-23527573-9912"
data-fullwidth="750" data-ceoid="23335008"
data-edit="${diagramEditLink.getLinkUrl()}"
data-full="${diagramZoomLink.getLinkUrl()}" data-filename="Class Loaders">
+<span class="gliffy-container" id="gliffy-container-23527573-861"
data-fullwidth="750" data-ceoid="23335008"
data-edit="${diagramEditLink.getLinkUrl()}"
data-full="${diagramZoomLink.getLinkUrl()}" data-filename="Class Loaders">
- <map id="gliffy-map-23527573-2633" name="gliffy-map-23527573-2633"></map>
+ <map id="gliffy-map-23527573-9778" name="gliffy-map-23527573-9778"></map>
- <img class="gliffy-image" id="gliffy-image-23527573-9912" 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-2633">
+ <img class="gliffy-image" id="gliffy-image-23527573-861" 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-9778">
- <map class="gliffy-dynamic" id="gliffy-dynamic-map-23527573-9912"
name="gliffy-dynamic-map-23527573-9912"></map>
+ <map class="gliffy-dynamic" id="gliffy-dynamic-map-23527573-861"
name="gliffy-dynamic-map-23527573-861"></map>
</span>
@@ -253,4 +253,4 @@ public class DBImage
</footer><br clear="none"></p><p><br clear="none"></p></div>
<!-- /// Footer End -->
</body>
-</html>
\ No newline at end of file
+</html>
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 Fri
May 1 00:29:08 2020
@@ -19,24 +19,24 @@
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
- <meta name="keywords" content="tapestry, apache, apache tapestry, frameowrk,
java, web, component, open source, application, dynamic, scalable, robust,
servlet">
+ <meta name="keywords" content="tapestry, apache, apache tapestry, framework,
java, web, component, open source, application, dynamic, scalable, robust,
servlet">
<meta name="description" content="Apache Tapestry is a open-source
component-oriented framework for creating dynamic, robust, highly scalable web
applications in Java. Tapestry complements and builds upon the standard Java
Servlet API, and so it works in any servlet container or application server.">
<title>
Page And Component Classes - Apache Tapestry
</title>
- <link rel="apple-touch-icon-precomposed" sizes="144x144"
href="images/apache-tapestry-5-icon-144.png">
- <link rel="apple-touch-icon-precomposed" sizes="114x114"
href="images/apache-tapestry-5-icon-114.png">
- <link rel="apple-touch-icon-precomposed" sizes="72x72"
href="images/apache-tapestry-5-icon-72.png">
- <link rel="apple-touch-icon-precomposed"
href="images/apache-tapestry-5-icon-57.png">
- <link rel="shortcut icon" href="images/apache-tapestry-5-icon-32.png">
+ <link rel="apple-touch-icon-precomposed" sizes="144x144"
href="/images/apache-tapestry-5-icon-144.png">
+ <link rel="apple-touch-icon-precomposed" sizes="114x114"
href="/images/apache-tapestry-5-icon-114.png">
+ <link rel="apple-touch-icon-precomposed" sizes="72x72"
href="/images/apache-tapestry-5-icon-72.png">
+ <link rel="apple-touch-icon-precomposed"
href="/images/apache-tapestry-5-icon-57.png">
+ <link rel="shortcut icon" href="/images/apache-tapestry-5-icon-32.png">
<link rel="stylesheet"
href="https://fonts.googleapis.com/css2?family=Sarabun:ital,wght@0,400;0,700;1,400;1,700&display=swap">
<link rel="stylesheet"
href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css"
integrity="sha384-Vkoo8x4CGsO3+Hhxv8T/Q5PaXtkKtu6ug5TOeNV6gBiFeWPGFN9MuhOf23Q9Ifjh"
crossorigin="anonymous">
<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.13.0/css/all.min.css">
<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/prism/1.20.0/themes/prism.min.css">
- <link rel="stylesheet" href="/styles/main.css">
+ <link rel="stylesheet" href="/styles/main.css">
<script type="text/javascript">
if (window.location.protocol === 'http:' && window.location.hostname !==
'localhost') {
@@ -55,7 +55,7 @@
ga('create', 'UA-400821-1', 'auto');
ga('send', 'pageview');
</script>
- <script async src='https://www.google-analytics.com/analytics.js'></script>
+ <script async src="https://www.google-analytics.com/analytics.js"></script>
</head>
<body>
<!-- /// Navigation Start -->
@@ -196,4 +196,4 @@
</footer><br clear="none"></p><p><br clear="none"></p></div>
<!-- /// Footer End -->
</body>
-</html>
\ No newline at end of file
+</html>
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 Fri May 1
00:29:08 2020
@@ -19,24 +19,24 @@
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
- <meta name="keywords" content="tapestry, apache, apache tapestry, frameowrk,
java, web, component, open source, application, dynamic, scalable, robust,
servlet">
+ <meta name="keywords" content="tapestry, apache, apache tapestry, framework,
java, web, component, open source, application, dynamic, scalable, robust,
servlet">
<meta name="description" content="Apache Tapestry is a open-source
component-oriented framework for creating dynamic, robust, highly scalable web
applications in Java. Tapestry complements and builds upon the standard Java
Servlet API, and so it works in any servlet container or application server.">
<title>
Page Life Cycle - Apache Tapestry
</title>
- <link rel="apple-touch-icon-precomposed" sizes="144x144"
href="images/apache-tapestry-5-icon-144.png">
- <link rel="apple-touch-icon-precomposed" sizes="114x114"
href="images/apache-tapestry-5-icon-114.png">
- <link rel="apple-touch-icon-precomposed" sizes="72x72"
href="images/apache-tapestry-5-icon-72.png">
- <link rel="apple-touch-icon-precomposed"
href="images/apache-tapestry-5-icon-57.png">
- <link rel="shortcut icon" href="images/apache-tapestry-5-icon-32.png">
+ <link rel="apple-touch-icon-precomposed" sizes="144x144"
href="/images/apache-tapestry-5-icon-144.png">
+ <link rel="apple-touch-icon-precomposed" sizes="114x114"
href="/images/apache-tapestry-5-icon-114.png">
+ <link rel="apple-touch-icon-precomposed" sizes="72x72"
href="/images/apache-tapestry-5-icon-72.png">
+ <link rel="apple-touch-icon-precomposed"
href="/images/apache-tapestry-5-icon-57.png">
+ <link rel="shortcut icon" href="/images/apache-tapestry-5-icon-32.png">
<link rel="stylesheet"
href="https://fonts.googleapis.com/css2?family=Sarabun:ital,wght@0,400;0,700;1,400;1,700&display=swap">
<link rel="stylesheet"
href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css"
integrity="sha384-Vkoo8x4CGsO3+Hhxv8T/Q5PaXtkKtu6ug5TOeNV6gBiFeWPGFN9MuhOf23Q9Ifjh"
crossorigin="anonymous">
<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.13.0/css/all.min.css">
<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/prism/1.20.0/themes/prism.min.css">
- <link rel="stylesheet" href="/styles/main.css">
+ <link rel="stylesheet" href="/styles/main.css">
<script type="text/javascript">
if (window.location.protocol === 'http:' && window.location.hostname !==
'localhost') {
@@ -55,7 +55,7 @@
ga('create', 'UA-400821-1', 'auto');
ga('send', 'pageview');
</script>
- <script async src='https://www.google-analytics.com/analytics.js'></script>
+ <script async src="https://www.google-analytics.com/analytics.js"></script>
</head>
<body>
<!-- /// Navigation Start -->
@@ -213,7 +213,7 @@
</div>
-<p>Tapestry takes a very different approach.</p><p>In Tapestry, each page is a
singleton, but with a <em>per thread</em> map of field names & values that
Tapestry invisibly manages for you.</p><p>With this approach, all the
difficult, ugly issues related to multi-threading go by the wayside. Instead,
familiar, simple coding practices (using ordinary methods and fields) can be
used.</p><div class="confluence-information-macro
confluence-information-macro-information"><span class="aui-icon aui-icon-small
aui-iconfont-info confluence-information-macro-icon"></span><div
class="confluence-information-macro-body"><p>Tapestry 5.0 and 5.1 used page
pooling, rather than a singleton page with a per-thread map, to achieve the
same effect.</p></div></div><p>The page life cycle is quite
simple:</p><ol><li>When first needed, a page is loaded. Loading a page involves
instantiating the components of the page and connecting them
together.</li><li>Once a page is loaded, it is <em>attached</em> to
the current request. Remember that there will be many threads, each handling
its own request to the same page.</li><li>At the end of a request, after a
response has been sent to the client, the page is <em>detached</em> from the
request. This is a chance to perform any cleanup needed for the
page.</li></ol><h2 id="PageLifeCycle-PageLifeCycleMethods">Page Life Cycle
Methods</h2><p>There are rare occasions where it is useful for a component to
perform some operations, usually some kind of initialization or caching, based
on the life cycle of the page.</p><p>As with <a
href="component-rendering.html">component rendering</a>, you have the ability
to make your components "aware" of these events by telling Tapestry what
methods to invoke for each.</p><p>Page life cycle methods should take no
parameters and return void.</p><p>You have the choice of attaching an
annotation to a method, or simply using the method naming conventions:</p><div
class="table-wrap"><table class="table table-borde
red"><tbody><tr><th colspan="1" rowspan="1"
class="confluenceTh"><p>Annotation</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Method Name</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>When Called</p></th></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd"><p>@<a class="external-link"
href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/annotations/PageLoaded.html">PageLoaded</a></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>pageLoaded()</p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>After the page is fully
loaded</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>@<a
class="external-link"
href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/annotations/PageAttached.html">PageAttached</a></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>pageAttached()</p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>After the page is attached to
the request.</p></td></
tr><tr><td colspan="1" rowspan="1" class="confluenceTd">@<a
class="external-link"
href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/annotations/PageReset.html">PageReset</a></td><td
colspan="1" rowspan="1" class="confluenceTd">pageReset()</td><td colspan="1"
rowspan="1" class="confluenceTd">After the page is <em>activated</em>, except
when requesting the same page</td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>@<a class="external-link"
href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/annotations/PageDetached.html">PageDetached</a></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>pageDetached()</p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>AFter the page is detached from
the request.</p></td></tr></tbody></table></div><p>The @PageReset life cycle
(only for Tapestry 5.2 and later) is invoked on a page render request when the
page is linked to from some <em>other</em> page of the application (but <em>no
t</em> on a link to the same page), or upon a reload of the page in the
browser. This is to allow the page to reset its state, if any, when a user
returns to the page from some other part of the application.</p><h2
id="PageLifeCycle-ComparisontoJavaServerPages">Comparison to JavaServer
Pages</h2><p>JSPs also act as singletons. However, the individual JSP tags are
pooled.</p><p>This is one of the areas where Tapestry can significantly
outperform JSPs. Much of the code inside a compiled JSP class concerns getting
tags from a tag pool, configuring the properties of the tag instance, using the
tag instance, then cleaning up the tag instance and putting it back in the
pool.</p><p>The operations Tapestry does once per request are instead executed
dozens or potentially hundreds of times (depending the complexity of the page,
and if any nested loops occur).</p><p>Pooling JSP tags is simply the wrong
granularity.</p><p>Tapestry can also take advantage of its more coarse grained
caching to op
timize how data moves, via parameters, between components. This means that
Tapestry pages will actually speed up after they render the first time.</p><h2
id="PageLifeCycle-PagePoolConfiguration">Page Pool Configuration</h2><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="confluence-information-macro-body"><p>This section is related to
versions of Tapestry prior to 5.2. Modern Tapestry uses an alternate approach
that allows a single page instance to be shared across many request processing
threads.</p></div></div><p>In Tapestry 5.0 and 5.1, a page pool is used to
store page instances. The pool is "keyed" on the name of the page (such as
"start") and the <em>locale</em> for the page (such as "en" or
"fr").</p><p>Within each key, Tapestry tracks the number of page instances that
have been created, as well as the number that are in use (currently att
ached to a request).</p><p>When a page is first accessed in a request, it is
taken from the pool. Tapestry has some <a
href="configuration.html">configuration values</a> that control the details of
how and when page instances are created.</p><ul><li>If a free page instance is
available, the page is marked in use and attached to the request.</li><li>If
there are fewer page instances than the <em>soft limit</em>, then a new page
instance is simply created and attached to the request.</li><li>If the soft
limit has been reached, Tapestry will wait for a short period of time for a
page instance to become available before creating a new page
instance.</li><li>If the hard limit has been reached, Tapestry will throw an
exception rather than create a new page instance.</li><li>Otherwise, Tapestry
will create a new page instance. Thus a busy application will initially create
pages up-to the soft limit (which defaults to five page instances). If the
application continues to be pounded with req
uests, it will slow its request processing, using the soft wait time in an
attempt to reuse an existing page instance.</li></ul><p>A truly busy
application will continue to create new page instances as needed until the hard
limit is reached.</p><p>Remember that all these configuration values are per
key: the combination of page name and locale. Thus even with a hard limit of
20, you may eventually find that Tapestry has created 20 start page instances
for locale "en" <em>and</em> 20 start page instances for locale "fr" (if your
application is configured to support both English and French). Likewise, you
may have 20 instances for the start page, and 20 instances for the newaccount
page.</p><p>Tapestry periodically checks its cache for page instances that have
not been used recently (within a configurable window). Unused page instances
are release to the garbage collector.</p><p>The end result is that you have
quite a degree of tuning control over the process. If memory is a limitatio
n and throughput can be sacrificed, try lowering the soft and hard limit and
increasing the soft wait.</p><p>If performance is absolute and you have lots of
memory, then increase the soft and hard limit and reduce the soft wait. This
encourages Tapestry to create more page instances and not wait as long to
re-use existing instances.</p></div>
+<p>Tapestry takes a very different approach.</p><p>In Tapestry, each page is a
singleton, but with a <em>per thread</em> map of field names & values that
Tapestry invisibly manages for you.</p><p>With this approach, all the
difficult, ugly issues related to multi-threading go by the wayside. Instead,
familiar, simple coding practices (using ordinary methods and fields) can be
used.</p><div class="confluence-information-macro
confluence-information-macro-information"><span class="aui-icon aui-icon-small
aui-iconfont-info confluence-information-macro-icon"></span><div
class="confluence-information-macro-body"><p>Tapestry 5.0 and 5.1 used page
pooling, rather than a singleton page with a per-thread map, to achieve the
same effect.</p></div></div><p>The page life cycle is quite
simple:</p><ol><li>When first needed, a page is loaded. Loading a page involves
instantiating the components of the page and connecting them
together.</li><li>Once a page is loaded, it is <em>attached</em> to
the current request. Remember that there will be many threads, each handling
its own request to the same page.</li><li>At the end of a request, after a
response has been sent to the client, the page is <em>detached</em> from the
request. This is a chance to perform any cleanup needed for the
page.</li></ol><h2 id="PageLifeCycle-PageLifeCycleMethods">Page Life Cycle
Methods</h2><p>There are rare occasions where it is useful for a component to
perform some operations, usually some kind of initialization or caching, based
on the life cycle of the page.</p><p>As with <a
href="component-rendering.html">component rendering</a>, you have the ability
to make your components "aware" of these events by telling Tapestry what
methods to invoke for each.</p><p>Page life cycle methods should take no
parameters and return void.</p><p>You have the choice of attaching an
annotation to a method, or simply using the method naming conventions:</p><div
class="table-wrap"><table class="table table-borde
red table-responsive"><tbody><tr><th colspan="1" rowspan="1"
class="confluenceTh"><p>Annotation</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Method Name</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>When Called</p></th></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd"><p>@<a class="external-link"
href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/annotations/PageLoaded.html">PageLoaded</a></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>pageLoaded()</p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>After the page is fully
loaded</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>@<a
class="external-link"
href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/annotations/PageAttached.html">PageAttached</a></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>pageAttached()</p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>After the page is attached to
the re
quest.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">@<a
class="external-link"
href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/annotations/PageReset.html">PageReset</a></td><td
colspan="1" rowspan="1" class="confluenceTd">pageReset()</td><td colspan="1"
rowspan="1" class="confluenceTd">After the page is <em>activated</em>, except
when requesting the same page</td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>@<a class="external-link"
href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/annotations/PageDetached.html">PageDetached</a></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>pageDetached()</p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>AFter the page is detached from
the request.</p></td></tr></tbody></table></div><p>The @PageReset life cycle
(only for Tapestry 5.2 and later) is invoked on a page render request when the
page is linked to from some <em>other</em> page of the applic
ation (but <em>not</em> on a link to the same page), or upon a reload of the
page in the browser. This is to allow the page to reset its state, if any, when
a user returns to the page from some other part of the application.</p><h2
id="PageLifeCycle-ComparisontoJavaServerPages">Comparison to JavaServer
Pages</h2><p>JSPs also act as singletons. However, the individual JSP tags are
pooled.</p><p>This is one of the areas where Tapestry can significantly
outperform JSPs. Much of the code inside a compiled JSP class concerns getting
tags from a tag pool, configuring the properties of the tag instance, using the
tag instance, then cleaning up the tag instance and putting it back in the
pool.</p><p>The operations Tapestry does once per request are instead executed
dozens or potentially hundreds of times (depending the complexity of the page,
and if any nested loops occur).</p><p>Pooling JSP tags is simply the wrong
granularity.</p><p>Tapestry can also take advantage of its more coarse grai
ned caching to optimize how data moves, via parameters, between components.
This means that Tapestry pages will actually speed up after they render the
first time.</p><h2 id="PageLifeCycle-PagePoolConfiguration">Page Pool
Configuration</h2><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="confluence-information-macro-body"><p>This section is related to
versions of Tapestry prior to 5.2. Modern Tapestry uses an alternate approach
that allows a single page instance to be shared across many request processing
threads.</p></div></div><p>In Tapestry 5.0 and 5.1, a page pool is used to
store page instances. The pool is "keyed" on the name of the page (such as
"start") and the <em>locale</em> for the page (such as "en" or
"fr").</p><p>Within each key, Tapestry tracks the number of page instances that
have been created, as well as the number that are in u
se (currently attached to a request).</p><p>When a page is first accessed in a
request, it is taken from the pool. Tapestry has some <a
href="configuration.html">configuration values</a> that control the details of
how and when page instances are created.</p><ul><li>If a free page instance is
available, the page is marked in use and attached to the request.</li><li>If
there are fewer page instances than the <em>soft limit</em>, then a new page
instance is simply created and attached to the request.</li><li>If the soft
limit has been reached, Tapestry will wait for a short period of time for a
page instance to become available before creating a new page
instance.</li><li>If the hard limit has been reached, Tapestry will throw an
exception rather than create a new page instance.</li><li>Otherwise, Tapestry
will create a new page instance. Thus a busy application will initially create
pages up-to the soft limit (which defaults to five page instances). If the
application continues to be
pounded with requests, it will slow its request processing, using the soft
wait time in an attempt to reuse an existing page instance.</li></ul><p>A truly
busy application will continue to create new page instances as needed until the
hard limit is reached.</p><p>Remember that all these configuration values are
per key: the combination of page name and locale. Thus even with a hard limit
of 20, you may eventually find that Tapestry has created 20 start page
instances for locale "en" <em>and</em> 20 start page instances for locale "fr"
(if your application is configured to support both English and French).
Likewise, you may have 20 instances for the start page, and 20 instances for
the newaccount page.</p><p>Tapestry periodically checks its cache for page
instances that have not been used recently (within a configurable window).
Unused page instances are release to the garbage collector.</p><p>The end
result is that you have quite a degree of tuning control over the process. If
memo
ry is a limitation and throughput can be sacrificed, try lowering the soft and
hard limit and increasing the soft wait.</p><p>If performance is absolute and
you have lots of memory, then increase the soft and hard limit and reduce the
soft wait. This encourages Tapestry to create more page instances and not wait
as long to re-use existing instances.</p></div>
</div>
<!-- /// Content End -->
</div>
@@ -267,4 +267,4 @@
</footer><br clear="none"></p><p><br clear="none"></p></div>
<!-- /// Footer End -->
</body>
-</html>
\ No newline at end of file
+</html>