Modified: websites/production/tapestry/content/component-events.html
==============================================================================
--- websites/production/tapestry/content/component-events.html (original)
+++ websites/production/tapestry/content/component-events.html Sun Feb 11
12:23:46 2018
@@ -164,10 +164,12 @@ void editDocument(int docId)
</pre>
</div></div><p>Tapestry does two things here:</p><ul><li>Because of the
annotation, it identifies method editDocument() as the method to invoke
whenever the component whose ID is "edit" triggers an event.</li><li>Because
there is a method parameter, when the link is clicked the context value of the
request is converted from a string to an integer and passed in as the method's
value parameter.<br clear="none"><br clear="none"></li></ul>
-<div class="confluence-information-macro
confluence-information-macro-information"><p class="title">Added in
5.3</p><span class="aui-icon aui-icon-small aui-iconfont-info
confluence-information-macro-icon"></span><div
class="confluence-information-macro-body">
-</div></div>
-<div class="error"><span class="error">Unknown macro: {div}</span>
-<p>Starting in release 5.3, Tapestry will throw an exception if the component
identified for the event handler method doesn't exist in the containing
component's template. This helps prevent typos.</p>
+
+
+<div class="aui-message aui-message-info">
+Added in 5.3 |
+Starting in release 5.3, Tapestry will throw an exception if the component
identified for the event handler method doesn't exist in the containing
component's template. This helps prevent typos.
+
</div><p>In the above example, the editDocument() method will be invoked when
any event occurs in in the "edit" component (and has at least one context
value).</p><p>For some components, more than one type of event can occur, in
which case you will want to be more specific:</p><div class="code panel pdl"
style="border-width: 1px;"><div class="codeContent panelContent pdl">
<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;">@OnEvent(value="action", component="edit")
void editDocument(int docId)
Modified: websites/production/tapestry/content/component-libraries.html
==============================================================================
--- websites/production/tapestry/content/component-libraries.html (original)
+++ websites/production/tapestry/content/component-libraries.html Sun Feb 11
12:23:46 2018
@@ -253,10 +253,12 @@ public class HappyModule
</pre>
</div></div><p>With this in place, and the library and applications rebuilt
and redeployed, the URL for happy.jpg becomes
/happyapp/assets/happylib/1.0/components/happy.jpg. This is shorter, but also
incorporates a version number ("1.0") that can be changed in a later
release.</p>
-<div class="confluence-information-macro
confluence-information-macro-information"><p class="title">Added in
5.2</p><span class="aui-icon aui-icon-small aui-iconfont-info
confluence-information-macro-icon"></span><div
class="confluence-information-macro-body">
-</div></div>
-<div class="error"><span class="error">Unknown macro: {div}</span>
-<p>In version 5.2 and later, Tapestry automatically creates a mapping for
assets inside your JAR. In the above example, the icon image will be exposed as
<code>/assets/</code><em>application
version</em><code>/happy/components/happy.jpg</code> (the application version
number is incorporated into the URL). The "happy" portion is a virtual folder
that maps to the library's root package (as folder
<code>org/example/happylib</code> on the Java classpath). The application
version is a configurable value.</p>
+
+
+<div class="aui-message aui-message-info">
+Added in 5.2 |
+In version 5.2 and later, Tapestry automatically creates a mapping for assets
inside your JAR. In the above example, the icon image will be exposed as
{{/assets/}}{_}application version{_}{{/happy/components/happy.jpg}} (the
application version number is incorporated into the URL). The "happy" portion
is a virtual folder that maps to the library's root package (as folder
{{org/example/happylib}} on the Java classpath). The application version is a
configurable value.
+
</div><h2 id="ComponentLibraries-Conclusion">Conclusion</h2><p>That's it!
Autoloading plus the virtual folders for components and for assets takes care
of all the issues related to components. Just build your JARs, setup the JAR
Manifest, and drop them into your applications.</p></div>
</div>
Modified: websites/production/tapestry/content/component-parameters.html
==============================================================================
--- websites/production/tapestry/content/component-parameters.html (original)
+++ websites/production/tapestry/content/component-parameters.html Sun Feb 11
12:23:46 2018
@@ -180,11 +180,11 @@
</div></div><p>A component may have any number of parameters. Each parameter
has a specific name, a specific Java type (which may be a primitive value), and
may be <em>optional</em> or <em>required</em>.</p><p>Within a component class,
parameters are declared by using the @<a class="external-link"
href="http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/annotations/Parameter.html">Parameter</a>
annotation on a private field, as we'll see below.</p><p><span
class="confluence-anchor-link"
id="ComponentParameters-bindingparameters"></span></p><h1
id="ComponentParameters-ParameterBindings">Parameter Bindings</h1><p>In
Tapestry, a parameter is not a slot into which data is pushed: it is a
<em>connection</em> between a field of the component (marked with the
@Parameter annotation) and a property or resource of the component's container.
(Components can be nested, so the container can be either the page or another
component.)</p><div class="navmenu" style="float:right; backgr
ound:white; margin:3px; padding:3px">
<div class="panel" style="border-width: 1px;"><div class="panelHeader"
style="border-bottom-width: 1px;"><b>Contents</b></div><div
class="panelContent">
<style type="text/css">/*<![CDATA[*/
-div.rbtoc1517700106159 {padding: 0px;}
-div.rbtoc1517700106159 ul {list-style: disc;margin-left: 0px;}
-div.rbtoc1517700106159 li {margin-left: 0px;padding-left: 0px;}
+div.rbtoc1518351745326 {padding: 0px;}
+div.rbtoc1518351745326 ul {list-style: disc;margin-left: 0px;}
+div.rbtoc1518351745326 li {margin-left: 0px;padding-left: 0px;}
-/*]]>*/</style><div class="toc-macro rbtoc1517700106159">
+/*]]>*/</style><div class="toc-macro rbtoc1518351745326">
<ul class="toc-indentation"><li><a
href="#ComponentParameters-ParameterBindings">Parameter Bindings</a></li><li><a
href="#ComponentParameters-BindingExpressions">Binding
Expressions</a></li><li><a
href="#ComponentParameters-@Parameterannotation">@Parameter
annotation</a></li><li><a
href="#ComponentParameters-Don'tusethe${...}syntax!">Don't use the ${...}
syntax!</a></li><li><a href="#ComponentParameters-InformalParameters">Informal
Parameters</a></li><li><a
href="#ComponentParameters-ParametersAreBi-Directional">Parameters Are
Bi-Directional</a></li><li><a
href="#ComponentParameters-InheritedParameterBindings">Inherited Parameter
Bindings</a></li><li><a
href="#ComponentParameters-ComputedParameterBindingDefaults">Computed Parameter
Binding Defaults</a></li><li><a
href="#ComponentParameters-UnboundParameters">Unbound Parameters</a></li><li><a
href="#ComponentParameters-ParameterTypeCoercion">Parameter Type
Coercion</a></li><li><a href="#ComponentParameters-ParameterNames">
Parameter Names</a></li><li><a
href="#ComponentParameters-DeterminingifBound">Determining if
Bound</a></li><li><a
href="#ComponentParameters-PublishingParameters">Publishing
Parameters</a></li></ul>
</div>
</div></div></div> <p>The connection between a component and a property
(or resource) of its container is called a <em>binding</em>. The binding is
two-way: the component can read the bound property by reading its parameter
field. Likewise, a component that updates its parameter field will update the
bound property.</p><p>This is important in a lot of cases; for example a
TextField component can read <em>and update</em> the property bound to its
value parameter. It reads the value when rendering, but updates the value when
the form is submitted.</p><p>The component listed below is a looping component;
it renders its body a number of times, defined by its <code>start</code> and
<code>end</code> parameters (which set the boundaries of the loop). The
component can update a <code>result</code> parameter bound to a property of its
container; it will automatically count up or down depending on whether
<code>start</code> or <code>end</code> is larger.</p><div class="code panel
pdl" st
yle="border-width: 1px;"><div class="codeContent panelContent pdl">
Modified: websites/production/tapestry/content/component-reference.html
==============================================================================
--- websites/production/tapestry/content/component-reference.html (original)
+++ websites/production/tapestry/content/component-reference.html Sun Feb 11
12:23:46 2018
@@ -110,11 +110,11 @@
<p> </p><p><strong>Contents</strong></p><p><style
type="text/css">/*<![CDATA[*/
-div.rbtoc1517700034969 {padding: 0px;}
-div.rbtoc1517700034969 ul {list-style: disc;margin-left: 0px;}
-div.rbtoc1517700034969 li {margin-left: 0px;padding-left: 0px;}
+div.rbtoc1518351667693 {padding: 0px;}
+div.rbtoc1518351667693 ul {list-style: disc;margin-left: 0px;}
+div.rbtoc1518351667693 li {margin-left: 0px;padding-left: 0px;}
-/*]]>*/</style></p><div class="toc-macro rbtoc1517700034969">
+/*]]>*/</style></p><div class="toc-macro rbtoc1518351667693">
<ul class="toc-indentation"><li><a
href="#ComponentReference-Tapestry-providedComponents">Tapestry-provided
Components</a>
<ul class="toc-indentation"><li><a
href="#ComponentReference-AJAX-specificComponents">AJAX-specific
Components</a></li><li><a
href="#ComponentReference-BeanDisplaying&Editing">Bean Displaying &
Editing</a></li><li><a
href="#ComponentReference-ConditionalandLoopingComponents">Conditional and
Looping Components</a></li><li><a
href="#ComponentReference-FormComponents">Form Components</a></li><li><a
href="#ComponentReference-Grids,TablesandTrees">Grids, Tables and
Trees</a></li><li><a href="#ComponentReference-LinksandButtons">Links and
Buttons</a></li><li><a href="#ComponentReference-OutputandMessages">Output and
Messages</a></li><li><a
href="#ComponentReference-Miscellaneous">Miscellaneous</a></li></ul>
</li><li><a href="#ComponentReference-TapestryMixins">Tapestry
Mixins</a></li><li><a href="#ComponentReference-TapestryPages">Tapestry
Pages</a></li><li><a href="#ComponentReference-BaseComponents">Base
Components</a></li><li><a
href="#ComponentReference-OtherComponentLibraries">Other Component
Libraries</a></li></ul>
Modified: websites/production/tapestry/content/component-report.html
==============================================================================
--- websites/production/tapestry/content/component-report.html (original)
+++ websites/production/tapestry/content/component-report.html Sun Feb 11
12:23:46 2018
@@ -100,10 +100,12 @@
</plugin></pre>
</div></div><p>Be sure the update the <em><version></em> element with
the current version of the Maven plugin, and update the
<em><rootPackage></em> element with the value for your application (this
will match the value you configure inside your <a
href="component-report.html">web.xml</a>).</p>
-<div class="confluence-information-macro
confluence-information-macro-information"><p class="title">Added in
5.3</p><span class="aui-icon aui-icon-small aui-iconfont-info
confluence-information-macro-icon"></span><div
class="confluence-information-macro-body">
-</div></div>
-<div class="error"><span class="error">Unknown macro: {div}</span>
-<p> </p></div><p>In version 5.3 the configuration of the Maven plugin
changed in a backward incompatible way. The configuration expects the
<em><rootPackages></em> element, which may have several
<em><rootPackage></em> elements. You should change the plugin
configuration as shown below or you can still use the 5.2.4 version of the
plugin without to change anything.</p><div class="code panel pdl"
style="border-width: 1px;"><div class="codeContent panelContent pdl">
+
+
+<div class="aui-message aui-message-info">
+Added in 5.3 |
+ 
+</div><p>In version 5.3 the configuration of the Maven plugin changed in a
backward incompatible way. The configuration expects the
<em><rootPackages></em> element, which may have several
<em><rootPackage></em> elements. You should change the plugin
configuration as shown below or you can still use the 5.2.4 version of the
plugin without to change anything.</p><div class="code panel pdl"
style="border-width: 1px;"><div class="codeContent panelContent pdl">
<pre class="brush: xml; gutter: false; theme: Default"
style="font-size:12px;"><plugin>
<groupId>org.apache.tapestry</groupId>
<artifactId>tapestry-component-report</artifactId>
Modified: websites/production/tapestry/content/component-templates.html
==============================================================================
--- websites/production/tapestry/content/component-templates.html (original)
+++ websites/production/tapestry/content/component-templates.html Sun Feb 11
12:23:46 2018
@@ -100,7 +100,7 @@
<span class="icon aui-icon aui-icon-small
aui-iconfont-page-default" title="Page">Page:</span> </div>
<div class="details">
- <a href="component-reference.html">Component
Reference</a>
+ <a href="templating-and-markup-faq.html">Templating
and Markup FAQ</a>
</div>
@@ -109,7 +109,7 @@
<span class="icon aui-icon aui-icon-small
aui-iconfont-page-default" title="Page">Page:</span> </div>
<div class="details">
- <a href="component-libraries.html">Component
Libraries</a>
+ <a href="component-classes.html">Component Classes</a>
</div>
@@ -118,7 +118,7 @@
<span class="icon aui-icon aui-icon-small
aui-iconfont-page-default" title="Page">Page:</span> </div>
<div class="details">
- <a href="templating-and-markup-faq.html">Templating
and Markup FAQ</a>
+ <a href="component-reference.html">Component
Reference</a>
</div>
@@ -127,7 +127,7 @@
<span class="icon aui-icon aui-icon-small
aui-iconfont-page-default" title="Page">Page:</span> </div>
<div class="details">
- <a href="component-classes.html">Component Classes</a>
+ <a href="component-libraries.html">Component
Libraries</a>
</div>
@@ -193,14 +193,16 @@
</pre>
</div></div><p>The first one is for <a class="external-link"
href="http://en.wikipedia.org/wiki/HTML5" rel="nofollow">HTML5</a> and is
recommended for Tapestry 5.2.5 and later. In versions prior to Tapestry 5.2.5,
Tapestry didn't support the HTML5 doctype directly (but see the comments at <a
class="external-link"
href="https://issues.apache.org/jira/browse/TAP5-1040">TAP5-1040</a> for a
work-around).</p>
-<div class="confluence-information-macro
confluence-information-macro-information"><p class="title">Added in
5.3</p><span class="aui-icon aui-icon-small aui-iconfont-info
confluence-information-macro-icon"></span><div
class="confluence-information-macro-body">
-</div></div>
-<div class="error"><span class="error">Unknown macro: {div}</span>
-<p>Tapestry 5.3 introduced two significant improvements to template
Doctypes.</p>
-<p>A template without a <!DOCTYPE> is parsed as if it had the HTML
Doctype (<code><!DOCTYPE html></code>). In fact, Tapestry creates an
in-memory copy of the template that includes the doctype.</p>
-<p>A template with the HTML Doctype (<code><!DOCTYPE html></code>) is
parsed <em>as if</em> it had the XHTML transitional Doctype. In fact, Tapestry
creates an in-memory copy of the template that replaces the <!DOCTYPE>
line. This applies as well to a template without any Doctype, in which case the
XHTML transitional Doctype is inserted at the top. In either case, this means
you can use arbitrary HTML entities, such as <code>&copy;</code> or
<code>&nbsp;</code> without seeing the XML parsing errors that would occur
in earlier releases.</p>
+<div class="aui-message aui-message-info">
+Added in 5.3 |
+Tapestry 5.3 introduced two significant improvements to template Doctypes.
+
+A template without a is parsed as if it had the HTML Doctype ({{}}). In
fact, Tapestry creates an in-memory copy of the template that includes the
doctype.
+
+A template with the HTML Doctype ({{}}) is parsed _as if_ it had the XHTML
transitional Doctype. In fact, Tapestry creates an in-memory copy of the
template that replaces the line. This applies as well to a template without
any Doctype, in which case the XHTML transitional Doctype is inserted at the
top. In either case, this means you can use arbitrary HTML entities, such as
{{&copy;}} or {{&nbsp;}} without seeing the XML parsing errors that
would occur in earlier releases.
+
</div><h2 id="ComponentTemplates-TheTapestryNamespace">The Tapestry
Namespace</h2><p>Component templates should include the Tapestry namespace,
defining it in the root element of the template.</p><div class="code panel pdl"
style="border-width: 1px;"><div class="codeContent panelContent pdl">
<pre class="brush: xml; gutter: false; theme: Default"
style="font-size:12px;"><html
xmlns:t="http://tapestry.apache.org/schema/tapestry_5_4.xsd">
<head>