Author: buildbot
Date: Sun Jan 9 15:21:03 2022
New Revision: 1077931
Log:
Production update by buildbot for tapestry
Added:
websites/production/tapestry/content/rest-support-page-is-work-in-progress.html
Modified:
websites/production/tapestry/content/cache/main.pageCache
websites/production/tapestry/content/documentation.html
websites/production/tapestry/content/download.html
Modified: websites/production/tapestry/content/cache/main.pageCache
==============================================================================
Binary files - no diff available.
Modified: websites/production/tapestry/content/documentation.html
==============================================================================
--- websites/production/tapestry/content/documentation.html (original)
+++ websites/production/tapestry/content/documentation.html Sun Jan 9 15:21:03
2022
@@ -79,7 +79,7 @@
<!-- /// Content Start -->
<div id="content">
- <div id="ConfluenceContent"><div
style="float:right;margin-left:1em"><h2 id="Documentation-AllTopics">All
Topics</h2><ul class="childpages-macro"><li><a
href="introduction.html">Introduction</a></li><li><a
href="getting-started.html">Getting Started</a></li><li><a
href="principles.html">Principles</a></li><li><a
href="tapestry-tutorial.html">Tapestry Tutorial</a><ul
class="childpages-macro"><li><a
href="dependencies-tools-and-plugins.html">Dependencies, Tools and
Plugins</a></li><li><a href="creating-the-skeleton-application.html">Creating
The Skeleton Application</a></li><li><a
href="exploring-the-project.html">Exploring the Project</a></li><li><a
href="implementing-the-hi-lo-guessing-game.html">Implementing the Hi-Lo
Guessing Game</a></li><li><a
href="using-beaneditform-to-create-user-forms.html">Using BeanEditForm To
Create User Forms</a></li><li><a
href="using-tapestry-with-hibernate.html">Using Tapestry With
Hibernate</a></li></ul></li><li><a href="u
ser-guide.html">User Guide</a><ul class="childpages-macro"><li><a
href="supported-environments-and-versions.html">Supported Environments and
Versions</a></li><li><a href="project-layout.html">Project
Layout</a></li><li><a href="configuration.html">Configuration</a></li><li><a
href="runtime-exceptions.html">Runtime Exceptions</a></li><li><a
href="class-reloading.html">Class Reloading</a></li><li><a
href="component-reference.html">Component Reference</a></li><li><a
href="annotations.html">Annotations</a></li><li><a
href="component-classes.html">Component Classes</a></li><li><a
href="component-templates.html">Component Templates</a></li><li><a
href="property-expressions.html">Property Expressions</a></li><li><a
href="component-parameters.html">Component Parameters</a></li><li><a
href="parameter-type-coercion.html">Parameter Type Coercion</a></li><li><a
href="layout-component.html">Layout Component</a></li><li><a
href="component-mixins.html">Component Mixins</a><ul class="childpages-mac
ro"><li><a href="built-in-mixins.html">Built-in
Mixins</a></li></ul></li><li><a href="page-navigation.html">Page
Navigation</a></li><li><a href="localization.html">Localization</a></li><li><a
href="page-life-cycle.html">Page Life Cycle</a></li><li><a
href="request-processing.html">Request Processing</a></li><li><a
href="component-rendering.html">Component Rendering</a></li><li><a
href="component-events.html">Component Events</a></li><li><a
href="url-rewriting.html">URL rewriting</a></li><li><a
href="dom.html">DOM</a></li><li><a href="response-compression.html">Response
Compression</a></li><li><a href="security.html">Security</a></li><li><a
href="https.html">HTTPS</a></li><li><a
href="content-type-and-markup.html">Content Type and Markup</a></li><li><a
href="persistent-page-data.html">Persistent Page Data</a></li><li><a
href="session-storage.html">Session Storage</a><ul
class="childpages-macro"><li><a href="clustering-issues.html">Clustering
Issues</a></li></ul></li><li><a href="inje
ction.html">Injection</a></li><li><a
href="environmental-services.html">Environmental Services</a></li><li><a
href="css.html">CSS</a></li><li><a href="assets.html">Assets</a></li><li><a
href="forms-and-validation.html">Forms and Validation</a></li><li><a
href="beaneditform-guide.html">BeanEditForm Guide</a></li><li><a
href="uploading-files.html">Uploading Files</a></li><li><a
href="logging.html">Logging</a></li><li><a
href="unit-testing-pages-or-components.html">Unit testing pages or
components</a></li><li><a href="integration-testing.html">Integration
Testing</a></li><li><a href="development-dashboard.html">Development
Dashboard</a></li><li><a href="modules.html">Modules</a><ul
class="childpages-macro"><li><a href="built-in-modules.html">Built In
Modules</a></li><li><a href="third-party-modules.html">Third Party
Modules</a></li></ul></li><li><a href="ioc.html">IOC</a><ul
class="childpages-macro"><li><a href="tapestry-ioc-overview.html">Tapestry IoC
Overview</a></li><li><a href="tap
estry-ioc-modules.html">Tapestry IoC Modules</a></li><li><a
href="defining-tapestry-ioc-services.html">Defining Tapestry IOC
Services</a></li><li><a href="service-advisors.html">Service
Advisors</a></li><li><a href="tapestry-ioc-decorators.html">Tapestry IoC
Decorators</a></li><li><a href="tapestry-ioc-configuration.html">Tapestry IoC
Configuration</a></li><li><a href="case-insensitivity.html">Case
Insensitivity</a></li><li><a href="autoloading-modules.html">Autoloading
Modules</a></li><li><a href="service-implementation-reloading.html">Service
Implementation Reloading</a></li><li><a
href="ordering-by-constraints.html">Ordering by Constraints</a></li><li><a
href="symbols.html">Symbols</a></li><li><a
href="chainbuilder-service.html">ChainBuilder Service</a></li><li><a
href="pipelinebuilder-service.html">PipelineBuilder Service</a></li><li><a
href="shadowbuilder-service.html">ShadowBuilder Service</a></li><li><a
href="strategybuilder-service.html">StrategyBuilder Service</a></li><li><
a href="injection-in-detail.html">Injection in Detail</a></li><li><a
href="object-providers.html">Object Providers</a></li><li><a
href="service-serialization.html">Service Serialization</a></li><li><a
href="type-coercion.html">Type Coercion</a></li><li><a
href="starting-the-ioc-registry.html">Starting the IoC Registry</a></li><li><a
href="registry-startup.html">Registry Startup</a></li><li><a
href="parallel-execution.html">Parallel Execution</a></li><li><a
href="logging-in-tapestry.html">Logging in Tapestry</a></li><li><a
href="using-jsr-330-standard-annotations.html">Using JSR 330 standard
annotations</a></li><li><a href="operation-tracker.html">Operation
Tracker</a></li></ul></li><li><a href="hibernate-core.html">Hibernate -
Core</a><ul class="childpages-macro"><li><a
href="hibernate-core-conf.html">Hibernate - Core - Conf</a></li><li><a
href="hibernate.html">Hibernate</a></li><li><a
href="hibernate-user-guide.html">Hibernate User Guide</a></li></ul></li><li><a
href="integrating-w
ith-spring-framework.html">Integrating with Spring Framework</a></li><li><a
href="bean-validation.html">Bean Validation</a></li><li><a
href="component-report.html">Component Report</a></li><li><a
href="aliases.html">Aliases</a></li><li><a
href="integrating-with-jpa.html">Integrating with JPA</a></li><li><a
href="client-side-javascript.html">Client-Side JavaScript</a><ul
class="childpages-macro"><li><a href="javascript-modules.html">JavaScript
Modules</a></li><li><a href="coffeescript.html">CoffeeScript</a></li><li><a
href="typescript.html">TypeScript</a></li><li><a
href="legacy-javascript.html">Legacy JavaScript</a></li><li><a
href="ajax-and-zones.html">Ajax and Zones</a></li></ul></li></ul></li><li><a
href="cheat-sheets.html">Cheat Sheets</a><ul class="childpages-macro"><li><a
href="application-module-class-cheat-sheet.html">Application Module Class Cheat
Sheet</a></li><li><a href="component-cheat-sheet.html">Component Cheat
Sheet</a></li><li><a href="tapestry-for-jsf-users.html">T
apestry for JSF Users</a></li></ul></li><li><a
href="cookbook.html">Cookbook</a><ul class="childpages-macro"><li><a
href="default-parameter.html">Default Parameter</a></li><li><a
href="overriding-exception-reporting.html">Overriding Exception
Reporting</a></li><li><a href="error-page-recipe.html">Error Page
Recipe</a></li><li><a href="supporting-informal-parameters.html">Supporting
Informal Parameters</a></li><li><a href="component-libraries.html">Component
Libraries</a></li><li><a href="switching-cases.html">Switching
Cases</a></li><li><a href="enum-parameter-recipe.html">Enum Parameter
Recipe</a></li><li><a href="extending-the-if-component.html">Extending the If
Component</a></li><li><a
href="meta-programming-page-content.html">Meta-Programming Page
Content</a></li><li><a href="using-select-with-a-list.html">Using Select With a
List</a></li><li><a href="ioc-cookbook.html">IoC cookbook</a><ul
class="childpages-macro"><li><a
href="ioc-cookbook-basic-services-and-injection.html">IoC
Cookbook - Basic Services and Injection</a></li><li><a
href="ioc-cookbook-overriding-ioc-services.html">IoC Cookbook - Overriding IoC
Services</a></li><li><a href="ioc-cookbook-patterns.html">IoC Cookbook -
Patterns</a></li><li><a href="ioc-cookbook-service-configurations.html">IoC
cookbook - Service Configurations</a></li></ul></li><li><a
href="performance-and-clustering.html">Performance and
Clustering</a></li><li><a href="google-app-engine.html">Google App
Engine</a></li></ul></li><li><a
href="frequently-asked-questions.html">Frequently Asked Questions</a><ul
class="childpages-macro"><li><a href="general-questions.html">General
Questions</a></li><li><a href="templating-and-markup-faq.html">Templating and
Markup FAQ</a></li><li><a href="page-and-component-classes-faq.html">Page And
Component Classes FAQ</a></li><li><a
href="forms-and-form-components-faq.html">Forms and Form Components
FAQ</a></li><li><a href="beaneditform-faq.html">BeanEditForm FAQ</a></li><li><a
href="link-compon
ents-faq.html">Link Components FAQ</a></li><li><a
href="component-events-faq.html">Component Events FAQ</a></li><li><a
href="javascript-faq.html">JavaScript FAQ</a></li><li><a
href="ajax-components-faq.html">Ajax Components FAQ</a></li><li><a
href="injection-faq.html">Injection FAQ</a></li><li><a
href="tapestry-inversion-of-control-faq.html">Tapestry Inversion of Control
FAQ</a></li><li><a href="security-faq.html">Security FAQ</a></li><li><a
href="integration-with-existing-applications.html">Integration with existing
applications</a></li><li><a href="request-processing-faq.html">Request
Processing FAQ</a></li><li><a
href="limitations.html">Limitations</a></li><li><a
href="specific-errors-faq.html">Specific Errors FAQ</a></li><li><a
href="hibernate-support-faq.html">Hibernate Support FAQ</a></li><li><a
href="maven-support-faq.html">Maven Support FAQ</a></li><li><a
href="release-upgrade-faq.html">Release Upgrade FAQ</a></li></ul></li><li><a
href="release-notes.html">Release Notes</a><
ul class="childpages-macro"><li><a href="how-to-upgrade.html">How to
Upgrade</a></li><li><a href="release-notes-50.html">Release Notes
5.0</a></li><li><a href="release-notes-51.html">Release Notes
5.1</a></li><li><a href="release-notes-52.html">Release Notes 5.2</a><ul
class="childpages-macro"><li><a href="release-notes-520.html">Release Notes
5.2.0</a></li><li><a href="release-notes-521.html">Release Notes
5.2.1</a></li><li><a href="release-notes-522.html">Release Notes
5.2.2</a></li><li><a href="release-notes-523.html">Release Notes
5.2.3</a></li><li><a href="release-notes-524.html">Release Notes
5.2.4</a></li><li><a href="release-notes-525.html">Release Notes
5.2.5</a></li><li><a href="release-notes-526.html">Release Notes
5.2.6</a></li></ul></li><li><a href="release-notes-53.html">Release Notes
5.3</a></li><li><a href="release-notes-531.html">Release Notes
5.3.1</a></li><li><a href="release-notes-532.html">Release Notes
5.3.2</a></li><li><a href="release-notes-533.html">Release
Notes 5.3.3</a></li><li><a href="release-notes-534.html">Release Notes
5.3.4</a></li><li><a href="release-notes-535.html">Release Notes
5.3.5</a></li><li><a href="release-notes-536.html">Release Notes
5.3.6</a></li><li><a href="release-notes-537.html">Release Notes
5.3.7</a></li><li><a href="release-notes-538.html">Release Notes
5.3.8</a></li><li><a href="release-notes-54.html">Release Notes
5.4</a></li><li><a href="release-notes-541.html">Release Notes
5.4.1</a></li><li><a href="release-notes-542.html">Release Notes
5.4.2</a></li><li><a href="release-notes-543.html">Release Notes
5.4.3</a></li><li><a href="release-notes-544.html">Release Notes
5.4.4</a></li><li><a href="release-notes-545.html">Release Notes
5.4.5</a></li><li><a href="release-notes-550.html">Release Notes
5.5.0</a></li><li><a href="release-notes-560.html">Release Notes
5.6.0</a></li><li><a href="release-notes-561.html">Release Notes
5.6.1</a></li><li><a href="release-notes-562.html">Release Notes
5.6.2</a></li><li><
a href="release-notes-563.html">Release Notes 5.6.3</a></li><li><a
href="release-notes-570.html">Release Notes 5.7.0</a></li><li><a
href="release-notes-571.html">Release Notes 5.7.1</a></li><li><a
href="release-notes-572.html">Release Notes 5.7.2</a></li><li><a
href="release-notes-564.html">Release Notes 5.6.4</a></li><li><a
href="release-notes-573.html">Release Notes 5.7.3</a></li></ul></li><li><a
href="javascript-rewrite-in-54.html">JavaScript Rewrite in 5.4</a></li><li><a
href="support.html">Support</a></li><li><a
href="developer-information.html">Developer Information</a><ul
class="childpages-macro"><li><a
href="building-tapestry-from-source.html">Building Tapestry from
Source</a></li><li><a href="confluence-site-setup.html">Confluence Site
Setup</a><ul class="childpages-macro"><li><a
href="since-and-deprecated-user-macros.html">Since and Deprecated User
Macros</a></li></ul></li><li><a href="developer-bible.html">Developer
Bible</a></li><li><a href="release-process.html">Release
Process</a></li><li><a href="the-tapestry-jail.html">The tapestry
jail</a></li><li><a href="version-numbers.html">Version
Numbers</a></li></ul></li></ul></div>
+ <div id="ConfluenceContent"><div
style="float:right;margin-left:1em"><h2 id="Documentation-AllTopics">All
Topics</h2><ul class="childpages-macro"><li><a
href="introduction.html">Introduction</a></li><li><a
href="getting-started.html">Getting Started</a></li><li><a
href="principles.html">Principles</a></li><li><a
href="tapestry-tutorial.html">Tapestry Tutorial</a><ul
class="childpages-macro"><li><a
href="dependencies-tools-and-plugins.html">Dependencies, Tools and
Plugins</a></li><li><a href="creating-the-skeleton-application.html">Creating
The Skeleton Application</a></li><li><a
href="exploring-the-project.html">Exploring the Project</a></li><li><a
href="implementing-the-hi-lo-guessing-game.html">Implementing the Hi-Lo
Guessing Game</a></li><li><a
href="using-beaneditform-to-create-user-forms.html">Using BeanEditForm To
Create User Forms</a></li><li><a
href="using-tapestry-with-hibernate.html">Using Tapestry With
Hibernate</a></li></ul></li><li><a href="u
ser-guide.html">User Guide</a><ul class="childpages-macro"><li><a
href="supported-environments-and-versions.html">Supported Environments and
Versions</a></li><li><a href="project-layout.html">Project
Layout</a></li><li><a href="configuration.html">Configuration</a></li><li><a
href="runtime-exceptions.html">Runtime Exceptions</a></li><li><a
href="class-reloading.html">Class Reloading</a></li><li><a
href="component-reference.html">Component Reference</a></li><li><a
href="annotations.html">Annotations</a></li><li><a
href="component-classes.html">Component Classes</a></li><li><a
href="component-templates.html">Component Templates</a></li><li><a
href="property-expressions.html">Property Expressions</a></li><li><a
href="component-parameters.html">Component Parameters</a></li><li><a
href="parameter-type-coercion.html">Parameter Type Coercion</a></li><li><a
href="layout-component.html">Layout Component</a></li><li><a
href="component-mixins.html">Component Mixins</a><ul class="childpages-mac
ro"><li><a href="built-in-mixins.html">Built-in
Mixins</a></li></ul></li><li><a href="page-navigation.html">Page
Navigation</a></li><li><a href="localization.html">Localization</a></li><li><a
href="page-life-cycle.html">Page Life Cycle</a></li><li><a
href="request-processing.html">Request Processing</a></li><li><a
href="component-rendering.html">Component Rendering</a></li><li><a
href="component-events.html">Component Events</a></li><li><a
href="url-rewriting.html">URL rewriting</a></li><li><a
href="dom.html">DOM</a></li><li><a href="response-compression.html">Response
Compression</a></li><li><a href="security.html">Security</a></li><li><a
href="https.html">HTTPS</a></li><li><a
href="content-type-and-markup.html">Content Type and Markup</a></li><li><a
href="persistent-page-data.html">Persistent Page Data</a></li><li><a
href="session-storage.html">Session Storage</a><ul
class="childpages-macro"><li><a href="clustering-issues.html">Clustering
Issues</a></li></ul></li><li><a href="inje
ction.html">Injection</a></li><li><a
href="environmental-services.html">Environmental Services</a></li><li><a
href="css.html">CSS</a></li><li><a href="assets.html">Assets</a></li><li><a
href="forms-and-validation.html">Forms and Validation</a></li><li><a
href="beaneditform-guide.html">BeanEditForm Guide</a></li><li><a
href="uploading-files.html">Uploading Files</a></li><li><a
href="logging.html">Logging</a></li><li><a
href="unit-testing-pages-or-components.html">Unit testing pages or
components</a></li><li><a href="integration-testing.html">Integration
Testing</a></li><li><a href="development-dashboard.html">Development
Dashboard</a></li><li><a href="modules.html">Modules</a><ul
class="childpages-macro"><li><a href="built-in-modules.html">Built In
Modules</a></li><li><a href="third-party-modules.html">Third Party
Modules</a></li></ul></li><li><a href="ioc.html">IOC</a><ul
class="childpages-macro"><li><a href="tapestry-ioc-overview.html">Tapestry IoC
Overview</a></li><li><a href="tap
estry-ioc-modules.html">Tapestry IoC Modules</a></li><li><a
href="defining-tapestry-ioc-services.html">Defining Tapestry IOC
Services</a></li><li><a href="service-advisors.html">Service
Advisors</a></li><li><a href="tapestry-ioc-decorators.html">Tapestry IoC
Decorators</a></li><li><a href="tapestry-ioc-configuration.html">Tapestry IoC
Configuration</a></li><li><a href="case-insensitivity.html">Case
Insensitivity</a></li><li><a href="autoloading-modules.html">Autoloading
Modules</a></li><li><a href="service-implementation-reloading.html">Service
Implementation Reloading</a></li><li><a
href="ordering-by-constraints.html">Ordering by Constraints</a></li><li><a
href="symbols.html">Symbols</a></li><li><a
href="chainbuilder-service.html">ChainBuilder Service</a></li><li><a
href="pipelinebuilder-service.html">PipelineBuilder Service</a></li><li><a
href="shadowbuilder-service.html">ShadowBuilder Service</a></li><li><a
href="strategybuilder-service.html">StrategyBuilder Service</a></li><li><
a href="injection-in-detail.html">Injection in Detail</a></li><li><a
href="object-providers.html">Object Providers</a></li><li><a
href="service-serialization.html">Service Serialization</a></li><li><a
href="type-coercion.html">Type Coercion</a></li><li><a
href="starting-the-ioc-registry.html">Starting the IoC Registry</a></li><li><a
href="registry-startup.html">Registry Startup</a></li><li><a
href="parallel-execution.html">Parallel Execution</a></li><li><a
href="logging-in-tapestry.html">Logging in Tapestry</a></li><li><a
href="using-jsr-330-standard-annotations.html">Using JSR 330 standard
annotations</a></li><li><a href="operation-tracker.html">Operation
Tracker</a></li></ul></li><li><a href="hibernate-core.html">Hibernate -
Core</a><ul class="childpages-macro"><li><a
href="hibernate-core-conf.html">Hibernate - Core - Conf</a></li><li><a
href="hibernate.html">Hibernate</a></li><li><a
href="hibernate-user-guide.html">Hibernate User Guide</a></li></ul></li><li><a
href="integrating-w
ith-spring-framework.html">Integrating with Spring Framework</a></li><li><a
href="bean-validation.html">Bean Validation</a></li><li><a
href="component-report.html">Component Report</a></li><li><a
href="aliases.html">Aliases</a></li><li><a
href="integrating-with-jpa.html">Integrating with JPA</a></li><li><a
href="client-side-javascript.html">Client-Side JavaScript</a><ul
class="childpages-macro"><li><a href="javascript-modules.html">JavaScript
Modules</a></li><li><a href="coffeescript.html">CoffeeScript</a></li><li><a
href="typescript.html">TypeScript</a></li><li><a
href="legacy-javascript.html">Legacy JavaScript</a></li><li><a
href="ajax-and-zones.html">Ajax and Zones</a></li></ul></li><li><a
href="rest-support-page-is-work-in-progress.html">REST Support (page is work in
progress)</a></li></ul></li><li><a href="cheat-sheets.html">Cheat Sheets</a><ul
class="childpages-macro"><li><a
href="application-module-class-cheat-sheet.html">Application Module Class Cheat
Sheet</a></li><li><a hr
ef="component-cheat-sheet.html">Component Cheat Sheet</a></li><li><a
href="tapestry-for-jsf-users.html">Tapestry for JSF
Users</a></li></ul></li><li><a href="cookbook.html">Cookbook</a><ul
class="childpages-macro"><li><a href="default-parameter.html">Default
Parameter</a></li><li><a href="overriding-exception-reporting.html">Overriding
Exception Reporting</a></li><li><a href="error-page-recipe.html">Error Page
Recipe</a></li><li><a href="supporting-informal-parameters.html">Supporting
Informal Parameters</a></li><li><a href="component-libraries.html">Component
Libraries</a></li><li><a href="switching-cases.html">Switching
Cases</a></li><li><a href="enum-parameter-recipe.html">Enum Parameter
Recipe</a></li><li><a href="extending-the-if-component.html">Extending the If
Component</a></li><li><a
href="meta-programming-page-content.html">Meta-Programming Page
Content</a></li><li><a href="using-select-with-a-list.html">Using Select With a
List</a></li><li><a href="ioc-cookbook.html">IoC c
ookbook</a><ul class="childpages-macro"><li><a
href="ioc-cookbook-basic-services-and-injection.html">IoC Cookbook - Basic
Services and Injection</a></li><li><a
href="ioc-cookbook-overriding-ioc-services.html">IoC Cookbook - Overriding IoC
Services</a></li><li><a href="ioc-cookbook-patterns.html">IoC Cookbook -
Patterns</a></li><li><a href="ioc-cookbook-service-configurations.html">IoC
cookbook - Service Configurations</a></li></ul></li><li><a
href="performance-and-clustering.html">Performance and
Clustering</a></li><li><a href="google-app-engine.html">Google App
Engine</a></li></ul></li><li><a
href="frequently-asked-questions.html">Frequently Asked Questions</a><ul
class="childpages-macro"><li><a href="general-questions.html">General
Questions</a></li><li><a href="templating-and-markup-faq.html">Templating and
Markup FAQ</a></li><li><a href="page-and-component-classes-faq.html">Page And
Component Classes FAQ</a></li><li><a
href="forms-and-form-components-faq.html">Forms and Form Com
ponents FAQ</a></li><li><a href="beaneditform-faq.html">BeanEditForm
FAQ</a></li><li><a href="link-components-faq.html">Link Components
FAQ</a></li><li><a href="component-events-faq.html">Component Events
FAQ</a></li><li><a href="javascript-faq.html">JavaScript FAQ</a></li><li><a
href="ajax-components-faq.html">Ajax Components FAQ</a></li><li><a
href="injection-faq.html">Injection FAQ</a></li><li><a
href="tapestry-inversion-of-control-faq.html">Tapestry Inversion of Control
FAQ</a></li><li><a href="security-faq.html">Security FAQ</a></li><li><a
href="integration-with-existing-applications.html">Integration with existing
applications</a></li><li><a href="request-processing-faq.html">Request
Processing FAQ</a></li><li><a
href="limitations.html">Limitations</a></li><li><a
href="specific-errors-faq.html">Specific Errors FAQ</a></li><li><a
href="hibernate-support-faq.html">Hibernate Support FAQ</a></li><li><a
href="maven-support-faq.html">Maven Support FAQ</a></li><li><a href="release-up
grade-faq.html">Release Upgrade FAQ</a></li></ul></li><li><a
href="release-notes.html">Release Notes</a><ul class="childpages-macro"><li><a
href="how-to-upgrade.html">How to Upgrade</a></li><li><a
href="release-notes-50.html">Release Notes 5.0</a></li><li><a
href="release-notes-51.html">Release Notes 5.1</a></li><li><a
href="release-notes-52.html">Release Notes 5.2</a><ul
class="childpages-macro"><li><a href="release-notes-520.html">Release Notes
5.2.0</a></li><li><a href="release-notes-521.html">Release Notes
5.2.1</a></li><li><a href="release-notes-522.html">Release Notes
5.2.2</a></li><li><a href="release-notes-523.html">Release Notes
5.2.3</a></li><li><a href="release-notes-524.html">Release Notes
5.2.4</a></li><li><a href="release-notes-525.html">Release Notes
5.2.5</a></li><li><a href="release-notes-526.html">Release Notes
5.2.6</a></li></ul></li><li><a href="release-notes-53.html">Release Notes
5.3</a></li><li><a href="release-notes-531.html">Release Notes
5.3.1</a></li><li><
a href="release-notes-532.html">Release Notes 5.3.2</a></li><li><a
href="release-notes-533.html">Release Notes 5.3.3</a></li><li><a
href="release-notes-534.html">Release Notes 5.3.4</a></li><li><a
href="release-notes-535.html">Release Notes 5.3.5</a></li><li><a
href="release-notes-536.html">Release Notes 5.3.6</a></li><li><a
href="release-notes-537.html">Release Notes 5.3.7</a></li><li><a
href="release-notes-538.html">Release Notes 5.3.8</a></li><li><a
href="release-notes-54.html">Release Notes 5.4</a></li><li><a
href="release-notes-541.html">Release Notes 5.4.1</a></li><li><a
href="release-notes-542.html">Release Notes 5.4.2</a></li><li><a
href="release-notes-543.html">Release Notes 5.4.3</a></li><li><a
href="release-notes-544.html">Release Notes 5.4.4</a></li><li><a
href="release-notes-545.html">Release Notes 5.4.5</a></li><li><a
href="release-notes-550.html">Release Notes 5.5.0</a></li><li><a
href="release-notes-560.html">Release Notes 5.6.0</a></li><li><a
href="release-notes-561
.html">Release Notes 5.6.1</a></li><li><a
href="release-notes-562.html">Release Notes 5.6.2</a></li><li><a
href="release-notes-563.html">Release Notes 5.6.3</a></li><li><a
href="release-notes-570.html">Release Notes 5.7.0</a></li><li><a
href="release-notes-571.html">Release Notes 5.7.1</a></li><li><a
href="release-notes-572.html">Release Notes 5.7.2</a></li><li><a
href="release-notes-564.html">Release Notes 5.6.4</a></li><li><a
href="release-notes-573.html">Release Notes 5.7.3</a></li></ul></li><li><a
href="javascript-rewrite-in-54.html">JavaScript Rewrite in 5.4</a></li><li><a
href="support.html">Support</a></li><li><a
href="developer-information.html">Developer Information</a><ul
class="childpages-macro"><li><a
href="building-tapestry-from-source.html">Building Tapestry from
Source</a></li><li><a href="confluence-site-setup.html">Confluence Site
Setup</a><ul class="childpages-macro"><li><a
href="since-and-deprecated-user-macros.html">Since and Deprecated User
Macros</a></li></ul><
/li><li><a href="developer-bible.html">Developer Bible</a></li><li><a
href="release-process.html">Release Process</a></li><li><a
href="the-tapestry-jail.html">The tapestry jail</a></li><li><a
href="version-numbers.html">Version Numbers</a></li></ul></li></ul></div>
<p>Welcome to the Tapestry 5 Documentation, a collection of guides to teach
beginners the basics and help experienced developers deepen their understanding
of Tapestry's power.</p><h1
id="Documentation-Highlights">Highlights</h1><p>These are the most useful
starting points for common needs.</p><div class="table-wrap"><table
class="table table-bordered table-responsive"><colgroup span="1"><col
span="1"><col span="1"></colgroup><tbody><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><a
href="introduction.html">Introduction</a></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>An overview of Tapestry's general approach and
philosophy</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><a href="getting-started.html">Getting
Started</a></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>A quick
guide to creating your first Tapestry project, using Maven</p></td></tr><tr><td
colspan="1" rowspan="1" class="confluenceTd"><p><a href="tapestry-tutoria
l.html">Tapestry Tutorial</a></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Picks up where <em>Getting Started</em> leaves off,
explaining in greater detail how Tapestry works</p></td></tr><tr><td
colspan="1" rowspan="1" class="confluenceTd"><p><a href="user-guide.html">User
Guide</a></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Detailed
articles on every Tapestry feature</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><a href="community.html">Community</a></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>Getting support, mailing lists,
JIRA, outside resources, and access to the source</p></td></tr><tr><td
colspan="1" rowspan="1" class="confluenceTd"><p><a
href="cookbook.html">Cookbook</a></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Guides to doing common things with
Tapestry</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><strong><a
href="frequently-asked-questions.html">FAQ</a></stron
g></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>A quick place
to check for common problems and solutions</p></td></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd"><p><a
href="component-cheat-sheet.html">Component Cheat Sheet</a></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>A concise guide to component
classes, methods and annotations</p></td></tr></tbody></table></div><h1
id="Documentation-APIandComponentReference">API and Component
Reference</h1><div class="table-wrap"><table class="table table-bordered
table-responsive"><colgroup span="1"><col span="1" style="width: 18.81%;"><col
span="1" style="width: 9.02111%;"><col span="1" style="width: 9.02111%;"><col
span="1" style="width: 9.02111%;"><col span="1" style="width: 9.78887%;"><col
span="1" style="width: 9.78887%;"><col span="1" style="width: 9.78887%;"><col
span="1" style="width: 9.78887%;"><col span="1" style="width:
14.9712%;"></colgroup><tbody><tr><th colspan="1" rowspan="1" class="conflu
enceTh"><p>API (Javadoc):</p></th><td colspan="1" rowspan="1"
class="confluenceTd"><p>5.0<sup>1</sup></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>5.1<sup>1</sup></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>5.2<sup>1</sup></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><a class="external-link"
href="http://tapestry.apache.org/5.3.7/apidocs/">5.3.8</a></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><a class="external-link"
href="http://tapestry.apache.org/5.4">5.4</a></td><td colspan="1" rowspan="1"
class="confluenceTd"><a class="external-link"
href="http://tapestry.apache.org/5.5.0">5.5</a></td><td colspan="1" rowspan="1"
class="confluenceTd"><a class="external-link"
href="http://tapestry.apache.org/5.6.3">5.6.3</a></td><td colspan="1"
rowspan="1" class="confluenceTd"><a class="external-link"
href="http://tapestry.apache.org/current">5.7.3 (current)</a></td></tr><tr><th
colspan="1" rowspan="1" class="confluenceTh"><p>Component Re
ference:</p></th><td colspan="1" rowspan="1"
class="confluenceTd"><p>5.0<sup>1</sup></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>5.1<sup>1</sup></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>5.2<sup>1</sup></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><em><span class="confluence-link">see
5.7.2</span></em></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><em>see 5.7.2</em></td><td colspan="1" rowspan="1"
class="confluenceTd">see 5.7.2</td><td colspan="1" rowspan="1"
class="confluenceTd">see 5.7.2</td><td colspan="1" rowspan="1"
class="confluenceTd"><a class="external-link"
href="https://tapestry.apache.org/component-reference.html">5.7.3</a></td></tr><tr><th
colspan="1" rowspan="1" class="confluenceTh"><p>Release Notes:</p></th><td
colspan="1" rowspan="1" class="confluenceTd"><p><a
href="release-notes-50.html">5.0</a></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><a href="release-notes-51.html">5.1</a></p></td><td co
lspan="1" rowspan="1" class="confluenceTd"><p><a
href="release-notes-52.html">5.2</a></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><a href="release-notes-538.html">5.3.8</a></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><a
href="release-notes-54.html">5.4</a></td><td colspan="1" rowspan="1"
class="confluenceTd"><a href="release-notes-550.html">5.5</a></td><td
colspan="1" rowspan="1" class="confluenceTd"><a
href="release-notes-560.html">5.6</a></td><td colspan="1" rowspan="1"
class="confluenceTd"><a
href="release-notes-570.html">5.7.0</a></td></tr></tbody></table></div><p><sup>1</sup>
needs to be built manually from archived sources at <a class="external-link"
href="http://archive.apache.org/dist/tapestry/">http://archive.apache.org/dist/tapestry/</a>.</p><h1
id="Documentation-UserGuide">User Guide</h1><p><span
class="confluence-anchor-link" id="Documentation-userguide"></span>The <a
href="user-guide.html">User Guide</a> consists of over 75 pages of detailed
information on the concepts behind Tapestry and instructions on how to use
this powerful tool. Highlights include:</p><ul><li class="confluence-link"><a
href="client-side-javascript.html">Client-Side JavaScript</a> and <a
href="ajax-and-zones.html">Ajax and Zones</a> describe Tapestry's built-in
support for dynamic in-page behavior.</li><li><a
href="integrating-with-spring-framework.html">Integrating with Spring
Framework</a> describes how to integrate Spring into your Tapestry
application.</li><li><a href="hibernate.html">Tapestry/Hibernate Integration
Library</a> provides out-of-the-box support for using Hibernate 3.</li><li><a
href="bean-validation.html">JSR 303: Bean Validation</a> shows how to use
standard annotations for validation</li><li><a
href="integration-testing.html">Integration Testing</a> shows how to test your
application with Selenium.</li></ul><p><a href="user-guide.html">More
topics</a>...</p><h1
id="Documentation-BlogsbyTapestryDevelopersandtheCommunity">Blogs b
y Tapestry Developers and the Community</h1><ul><li><a class="external-link"
href="http://tapestryjava.blogspot.com/" rel="nofollow">Tapestry
Central</a> was Howard Lewis Ship's blog from 2003-2013. As the creator of
Tapestry, he provides valuable insights into Tapestry's latest features and
future directions.</li><li><a class="external-link"
href="https://web.archive.org/web/20160410090538/http://blog.tapestry5.de/"
rel="nofollow">Igor Drobiazko's blog</a> (committer & PMC) contains guides
on Tapestry 5 development (2009-2013).</li><li><a class="external-link"
href="http://tawus.wordpress.com/" rel="nofollow">Java Magic</a> (by Taha
Hafeez, committer) presents a series of tutorials illustrating some of the more
advanced Tapestry and Plastic features and techniques (2011-2012).</li></ul><h1
id="Documentation-BooksonTapestry">Books on Tapestry</h1><p>There are at least
9 published <a href="books.html">books on Tapestry</a>, including three on
Tapestry 5.</p><h1 id="Documenta
tion-TapestryPresentations">Tapestry Presentations</h1><ul><li>Mark Shead's <a
class="external-link"
href="http://blog.markshead.com/900/tapestry-5-10-minute-demo/"
rel="nofollow">10 Minute Demo</a>  (Video, 2011)</li><li>H. L. Ship's <a
class="external-link" href="https://www.youtube.com/watch?v=5BGt7eMFC20"
rel="nofollow">Tapestry 5.4 - Bootstrap-enhanced Exception
Reporting</a> (Video, 2012)</li><li><a class="external-link"
href="https://web.archive.org/web/20170302154020/http://blog.tapestry5.de/wp-content/uploads/2010/06/JSF-2.0-vs-Tapestry-5.pdf"
rel="nofollow">JavaServer Faces 2.0 vs. Tapestry 5</a> (PDF, 2010) A
Head-to-Head Comparison by Igor Drobiazko at Jazoon 2010</li></ul><p><a
href="presentations.html">More presentations</a> ...</p><h1
id="Documentation-TapestryWikis">Tapestry Wikis</h1><ul><li><a
href="https://cwiki.apache.org/confluence/x/VCFkAQ">Documentation Source
wiki</a> (Confluence) – the wiki used as the content editor for the
official Tapestry
documentation</li><li><a
href="https://cwiki.apache.org/confluence/display/TAPESTRY5">Tapestry Community
Wiki (legacy)</a> – read-only copy of Tapestry's old Moin Moin wiki
containing a lot of user-generated information on different Tapestry use
cases.</li></ul><h1 id="Documentation-Gettinghelp">Getting help</h1><p>The
primary method of support is the <a href="mailing-lists.html">Tapestry Mailing
Lists</a>.</p><p>In addition, there are occasionally questions and answers
about Tapestry at <a class="external-link"
href="http://stackoverflow.com/questions/tagged/tapestry" rel="nofollow">Stack
Overflow</a>.</p><h1 id="Documentation-TheDeveloperCorner">The Developer
Corner</h1><p><a href="developer-information.html">Developer Information</a>
gives information needed by the Tapestry developers</p><p></p><p><img
class="wysiwyg-unknown-macro"
src="https://cwiki.apache.org/confluence/plugins/servlet/confluence/placeholder/unknown-macro?name=html&locale=en_GB&version=2"></p></d
iv>
Modified: websites/production/tapestry/content/download.html
==============================================================================
--- websites/production/tapestry/content/download.html (original)
+++ websites/production/tapestry/content/download.html Sun Jan 9 15:21:03 2022
@@ -59,70 +59,7 @@
</head>
<body>
<!-- /// Navigation Start -->
- <div id="navigation"><p><header>
- <div class="container-fluid">
- <div class="row">
- <div class="col-12">
- <nav class="navbar navbar-expand-xl navbar-light
justify-content-between">
- <a class="navbar-brand" href="/index.html">
- <img src="/images/apache-tapestry-icon-dark.svg" width="60"
alt="Apache Tapestry" title="Apache Tapestry">
- <span>apache tapestry</span>
- </a>
- <button type="button" class="navbar-toggler" data-toggle="collapse"
data-target="#navbarCollapse" aria-controls="navbarCollapse"
aria-expanded="false" aria-label="Toggle navigation">
- <span class="navbar-toggler-icon"></span>
- </button>
- <div class="collapse navbar-collapse" id="navbarCollapse">
- <ul class="navbar-nav mx-auto"><li class="nav-item">
- <a class="nav-link active"
href="/getting-started.html">Getting Started</a>
- </li><li class="nav-item">
- <a class="nav-link active"
href="/documentation.html">Documentation</a>
- </li><li class="nav-item">
- <a class="nav-link active" href="/download.html">Download</a>
- </li><li class="nav-item dropdown">
- <a class="nav-link dropdown-toggle active"
id="communityNavbarDropdown" href="#" role="button" data-toggle="dropdown"
aria-haspopup="true" aria-expanded="false">
- Community
- </a>
- <div class="dropdown-menu"
aria-labelledby="communityNavbarDropdown">
- <a class="dropdown-item" href="/community.html">Mailing
Lists</a>
- <a class="dropdown-item"
href="https://stackoverflow.com/questions/tagged/tapestry">StackOverflow</a>
- <a class="dropdown-item" href="/support.html">Support</a>
- <a class="dropdown-item" href="/community.html">Getting
Involved</a>
- <a class="dropdown-item"
href="https://cwiki.apache.org/confluence/pages/editpage.action?pageId=23339284"
title="Edit this page (requires approval, just ask on the mailing list)">Edit
this page</a>
- <div class="dropdown-divider"></div>
- <a class="dropdown-item"
href="https://twitter.com/ApacheTapestry">@ApacheTapestry</a>
- <a class="dropdown-item"
href="https://twitter.com/hashtag/tapestry5">#tapestry5</a>
- </div>
- </li><li class="nav-item dropdown">
- <a class="nav-link dropdown-toggle active"
id="developmentNavbarDropdown" href="#" role="button" data-toggle="dropdown"
aria-haspopup="true" aria-expanded="false">
- Development
- </a>
- <div class="dropdown-menu"
aria-labelledby="developmentNavbarDropdown">
- <a class="dropdown-item"
href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source Code</a>
- <a class="dropdown-item"
href="https://issues.apache.org/jira/browse/TAP5">Issues</a>
- </div>
- </li><li class="nav-item dropdown">
- <a class="nav-link dropdown-toggle active"
id="apacheNavbarDropdown" href="#" role="button" data-toggle="dropdown"
aria-haspopup="true" aria-expanded="false">
- Apache
- </a>
- <div class="dropdown-menu"
aria-labelledby="apacheNavbarDropdown">
- <a class="dropdown-item"
href="https://www.apache.org/">About Apache</a>
- <a class="dropdown-item"
href="https://apachecon.com/?ref=royale.apache.org">Events</a>
- <a class="dropdown-item"
href="https://www.apache.org/foundation/sponsorship.html">Sponsorship</a>
- <a class="dropdown-item"
href="https://www.apache.org/licenses/LICENSE-2.0">License</a>
- <a class="dropdown-item"
href="https://www.apache.org/security/">Security</a>
- <a class="dropdown-item"
href="https://www.apache.org/foundation/thanks.html">Thanks!</a>
- </div>
- </li></ul>
- <form enctype="application/x-www-form-urlencoded" method="get"
class="form-inline" action="search.html">
- <input type="search" class="form-control search-input" name="q"
placeholder="Search docs, issues, wikis and blogs" aria-label="Search">
- <button type="submit" class="d-none">Search</button>
- </form>
- </div>
- </nav>
- </div>
- </div>
- </div>
-</header></p></div>
+ <div id="navigation"><p><img class="wysiwyg-unknown-macro"
src="https://cwiki.apache.org/confluence/plugins/servlet/confluence/placeholder/unknown-macro?name=html&locale=en_GB&version=2"></p></div>
<!-- /// Navigation End -->
<article>
@@ -137,12 +74,12 @@
<!-- /// Breadcrumb End -->
<!-- /// Smallbanner Start -->
- <div id="smallbanner"><h1 class="title"
id="title">Download</h1></div>
+ <div id="smallbanner"><img
class="wysiwyg-unknown-macro"
src="https://cwiki.apache.org/confluence/plugins/servlet/confluence/placeholder/unknown-macro?name=html&locale=en_GB&version=2"></div>
<!-- /// Smallbanner Start -->
<!-- /// Content Start -->
<div id="content">
- <div id="ConfluenceContent"><p>Tapestry can be
downloaded in either binary or source format.</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>The easiest way to download
Tapestry and its dependencies is using Maven, as described in <a
href="getting-started.html">Getting Started</a>.</p></div></div><p>See the <a
href="release-notes.html">Release Notes</a> for differences between versions
and how to upgrade, and <a
href="supported-environments-and-versions.html">Supported Environments and
Versions</a> for the compatibility matrix.</p><h1
id="Download-StableReleases">Stable Releases</h1><p>Stable releases should be
relatively free of critical bugs and are considered the <em>safest</em> option
if stability is a requirement.</p><p>Note that the <em>recommended</em>
distribution m
ethod of binary and source JARs is via Maven repository. Binaries, source
code, and Javadocs are also available as a zip archive.</p><h2
id="Download-Tapestry5.7.3">Tapestry 5.7.3</h2><p>Tapestry 5.7.3 was released
on 13 July 2021. See the <a href="release-notes-573.html">release notes</a> for
more details.</p><div class="sectionColumnWrapper"><div
class="sectionMacro"><div class="sectionMacroRow"><div class="columnMacro"><div
class="table-wrap"><table class="table table-bordered
table-responsive"><colgroup span="1"><col span="1"><col span="1"><col
span="1"><col span="1"></colgroup><tbody><tr><th colspan="1" rowspan="1"
class="confluenceTh"><p>Tapestry 5.7.3</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Mirrors</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Signature</p></th><th colspan="1" rowspan="1"
class="confluenceTh">Checksum</th></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>Binary (zip)</p></td><td colspan="1" rowspan="1"
class="confl
uenceTd"><p><a class="external-link"
href="https://downloads.apache.org/tapestry/apache-tapestry-5.7.3-bin.zip">Download</a></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><a class="external-link"
href="https://downloads.apache.org/tapestry/apache-tapestry-5.7.3-bin.zip.asc">ASC</a></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><a class="external-link"
href="https://downloads.apache.org/tapestry/apache-tapestry-5.7.3-bin.zip.sha256">SHA-256</a></td></tr><tr><td
colspan="1" rowspan="1" class="confluenceTd"><p>Source (zip)</p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><a class="external-link"
href="https://downloads.apache.org/tapestry/apache-tapestry-5.7.3-sources.zip">Download</a></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><a class="external-link"
href="https://downloads.apache.org/tapestry/apache-tapestry-5.7.3-sources.zip.asc">ASC</a></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><a class="external-link"
href="https
://downloads.apache.org/tapestry/apache-tapestry-5.7.3-sources.zip.sha256">SHA-256</a></td></tr><tr><td
colspan="1" rowspan="1" class="confluenceTd"><p>Javadoc (zip)</p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><a class="external-link"
href="https://downloads.apache.org/tapestry/apache-tapestry-5.7.3-apidocs.zip">Download</a></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><a class="external-link"
href="https://downloads.apache.org/tapestry/apache-tapestry-5.7.3-apidocs.zip.asc">ASC</a></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><em style="text-align: left;">not
available</em></td></tr></tbody></table></div></div><div
class="columnMacro"><div class="code panel pdl" style="border-width: 1px;"><div
class="codeHeader panelHeader pdl" style="border-bottom-width: 1px;"><b>Maven
Dependency</b></div><div class="codeContent panelContent pdl">
+ <div id="ConfluenceContent"><p>Tapestry can be
downloaded in either binary or source format.</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>The easiest way to download
Tapestry and its dependencies is using Maven, as described in <a
href="getting-started.html">Getting Started</a>.</p></div></div><p>See the <a
href="release-notes.html">Release Notes</a> for differences between versions
and how to upgrade, and <a
href="supported-environments-and-versions.html">Supported Environments and
Versions</a> for the compatibility matrix.</p><h1
id="Download-StableReleases">Stable Releases</h1><p>Stable releases should be
relatively free of critical bugs and are considered the <em>safest</em> option
if stability is a requirement.</p><p>Note that the <em>recommended</em>
distribution m
ethod of binary and source JARs is via Maven repository. Binaries, source
code, and Javadocs are also available as a zip archive.</p><h2
id="Download-Tapestry5.7.x">Tapestry 5.7.x</h2><p>Tapestry 5.7.3 was released
on 13 July 2021. See the <a href="release-notes-573.html">release notes</a> for
more details.</p><div class="sectionColumnWrapper"><div
class="sectionMacro"><div class="sectionMacroRow"><div class="columnMacro"><div
class="table-wrap"><table class="table table-bordered
table-responsive"><colgroup span="1"><col span="1"><col span="1"><col
span="1"><col span="1"></colgroup><tbody><tr><th colspan="1" rowspan="1"
class="confluenceTh"><p>Tapestry 5.7.3</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Mirrors</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Signature</p></th><th colspan="1" rowspan="1"
class="confluenceTh">Checksum</th></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>Binary (zip)</p></td><td colspan="1" rowspan="1"
class="confl
uenceTd"><p><a class="external-link"
href="https://downloads.apache.org/tapestry/apache-tapestry-5.7.3-bin.zip">Download</a></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><a class="external-link"
href="https://downloads.apache.org/tapestry/apache-tapestry-5.7.3-bin.zip.asc">ASC</a></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><a class="external-link"
href="https://downloads.apache.org/tapestry/apache-tapestry-5.7.3-bin.zip.sha256">SHA-256</a></td></tr><tr><td
colspan="1" rowspan="1" class="confluenceTd"><p>Source (zip)</p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><a class="external-link"
href="https://downloads.apache.org/tapestry/apache-tapestry-5.7.3-sources.zip">Download</a></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><a class="external-link"
href="https://downloads.apache.org/tapestry/apache-tapestry-5.7.3-sources.zip.asc">ASC</a></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><a class="external-link"
href="https
://downloads.apache.org/tapestry/apache-tapestry-5.7.3-sources.zip.sha256">SHA-256</a></td></tr><tr><td
colspan="1" rowspan="1" class="confluenceTd"><p>Javadoc (zip)</p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><a class="external-link"
href="https://downloads.apache.org/tapestry/apache-tapestry-5.7.3-apidocs.zip">Download</a></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><a class="external-link"
href="https://downloads.apache.org/tapestry/apache-tapestry-5.7.3-apidocs.zip.asc">ASC</a></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><em style="text-align: left;">not
available</em></td></tr></tbody></table></div></div><div
class="columnMacro"><div class="code panel pdl" style="border-width: 1px;"><div
class="codeHeader panelHeader pdl" style="border-bottom-width: 1px;"><b>Maven
Dependency</b></div><div class="codeContent panelContent pdl">
<pre><code class="language-xml"><dependency>
<groupId>org.apache.tapestry</groupId>
<artifactId>tapestry-core</artifactId>
@@ -197,48 +134,7 @@
</article>
<!-- /// Footer Start -->
- <div id="footer"><p>Apache Tapestry, Tapestry, Apache, the Apache feather
logo, and the Apache Tapestry project logo are trademarks of The Apache
Software Foundation.</p><p><br clear="none"><footer class="py-3">
- <div class="container-fluid">
- <div class="container">
- <div class="row">
- <div class="col-4 col-lg-2">
- <span class="font-weight-bold">Apache Tapestry</span>
- <ul><li><a href="index.html">Home</a></li><li><a
href="download.html">Download</a></li><li><a
href="about.html">Team</a></li><li><a
href="https://www.apache.org/licenses/LICENSE-2.0">License</a></li></ul>
- <span class="font-weight-bold">Documentation</span>
- <ul><li><a href="introduction.html">Introduction</a></li><li><a
href="principles.html">Principles</a></li><li><i class="fas fa-play"></i> <a
href="getting-started.html">Getting Started</a></li><li><i class="fas
fa-play"></i> <a href="user-guide.html">User Guide</a></li><li><i class="fas
fa-book"></i> <a href="documentation.html">Docs</a></li><li><i class="fas
fa-book"></i> <a href="component-reference.html">Component
Reference</a></li><li><i class="fas fa-book"></i> <a
href="current/apidocs">Apidocs</a></li><li><a
href="frequently-asked-questions.html">FAQ</a></li></ul>
- </div>
- <div class="col-4 col-lg-2">
- <span class="font-weight-bold">Community</span>
- <ul><li><i class="fas fa-envelope-open-text"></i> <a
href="community.html">Mailing Lists</a></li><li><i class="fab
fa-stack-overflow"> </i> <a
href="https://stackoverflow.com/questions/tagged/tapestry">StackOverflow</a></li><li><a
href="support.html">Support</a></li><li><a href="community.html">Getting
Involved</a></li><li><a
href="https://cwiki.apache.org/confluence/pages/editpage.action?pageId=23339284"
title="Edit this page (requires approval, just ask on the mailing list)">Edit
this page</a></li></ul>
- <span class="font-weight-bold">Social</span>
- <ul><li><i class="fab fa-twitter"></i> <a
href="https://twitter.com/ApacheTapestry">@ApacheTapestry</a></li><li><i
class="fas fa-hashtag"></i> <a
href="https://twitter.com/hashtag/tapestry5">#tapestry5</a></li></ul>
- <span class="font-weight-bold">Development</span>
- <ul><li><i class="fab fa-git"></i> <a
href="https://gitbox.apache.org/repos/asf?p=tapestry-5.git">Source
Code</a></li><li><i class="fab fa-jira"></i> <a
href="https://issues.apache.org/jira/browse/TAP5">Issues</a></li></ul>
- </div>
- <div class="col-4 col-lg-2">
- <span class="font-weight-bold">Apache</span>
- <ul><li><a href="https://www.apache.org/">About
Apache</a></li><li><a
href="https://apachecon.com/?ref=royale.apache.org">Events</a></li><li><a
href="https://www.apache.org/foundation/sponsorship.html">Sponsorship</a></li><li><a
href="https://www.apache.org/licenses/LICENSE-2.0">License</a></li><li><a
href="https://www.apache.org/security/">Security</a></li><li><a
href="https://www.apache.org/foundation/thanks.html">Thanks!</a></li></ul>
- </div>
- <div class="col-md-12 col-lg-6 clearfix">
- <span class="font-weight-bold d-block">About us</span>
- <p class="float-right ml-3 mb-0"><img
src="images/apache-tapestry-icon-light.svg" width="100" alt="Apache Tapestry"
title="Apache Tapestry"></p>
- <p><a href="https://tapestry.apache.org/">Apache Tapestry™</a>
is an open-source component-oriented framework for creating dynamic, robust,
highly scalable web applications in Java.</p>
- <p>Tapestry complements and builds upon the standard Java Servlet
API, and so it works in any servlet container or application server.</p>
- <p class="float-right ml-3 mb-0"><img
src="images/apache-powered-by.svg" width="100" alt="Apache PoweredBy"
title="Apache PoweredBy"></p>
- <p>
- <a href="https://tapestry.apache.org/">Apache Tapestry™</a>,
<a href="https://www.apache.org/">Apache™</a> and the <a
href="https://www.apache.org/foundation/press/kit/">Apache feather
logo™</a>
- are trademarks of The Apache Software Foundation. All other marks
mentioned may be trademarks or registered trademarks of their respective owners.
- </p>
- </div>
- </div>
- <div class="row">
- <div class="col-12">
- Copyright © 2020 The Apache Software Foundation, Licensed under
the <a href="https://www.apache.org/licenses/LICENSE-2.0">Apache License,
Version 2.0</a>.
- </div>
- </div>
- </div>
- </div>
-</footer><br clear="none"></p><p><br clear="none"></p></div>
+ <div id="footer"><p>Apache Tapestry, Tapestry, Apache, the Apache feather
logo, and the Apache Tapestry project logo are trademarks of The Apache
Software Foundation.</p><p><br clear="none"><img class="wysiwyg-unknown-macro"
src="https://cwiki.apache.org/confluence/plugins/servlet/confluence/placeholder/unknown-macro?name=html&locale=en_GB&version=2"><br
clear="none"></p><p><br clear="none"></p></div>
<!-- /// Footer End -->
</body>
</html>
Added:
websites/production/tapestry/content/rest-support-page-is-work-in-progress.html
==============================================================================
---
websites/production/tapestry/content/rest-support-page-is-work-in-progress.html
(added)
+++
websites/production/tapestry/content/rest-support-page-is-work-in-progress.html
Sun Jan 9 15:21:03 2022
@@ -0,0 +1,112 @@
+<!DOCTYPE html>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+<html>
+<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, 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>
+ REST Support (page is work in progress) - Apache Tapestry
+ </title>
+
+ <link rel="apple-touch-icon-precomposed" sizes="144x144"
href="/images/apache-tapestry-icon-144.png">
+ <link rel="apple-touch-icon-precomposed" sizes="114x114"
href="/images/apache-tapestry-icon-114.png">
+ <link rel="apple-touch-icon-precomposed" sizes="72x72"
href="/images/apache-tapestry-icon-72.png">
+ <link rel="apple-touch-icon-precomposed"
href="/images/apache-tapestry-icon-57.png">
+ <link rel="shortcut icon" href="/images/apache-tapestry-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">
+
+ <script type="text/javascript">
+ if (window.location.protocol === 'http:' && window.location.hostname !==
'localhost') {
+ window.location = window.location.href.replace('http://', 'https://');
+ }
+ </script>
+
+ <script src="https://code.jquery.com/jquery-3.4.1.slim.min.js"
integrity="sha384-J6qa4849blE2+poT4WnyKhv5vZF5SrPo0iEjwBvKU7imGFAV0wwj1yYfoRSJoZ+n"
crossorigin="anonymous" defer></script>
+ <script
src="https://cdn.jsdelivr.net/npm/[email protected]/dist/umd/popper.min.js"
integrity="sha384-Q6E9RHvbIyZFJoft+2mJbHaEWldlvI9IOYy5n3zV9zzTtmI3UksdQRVvoxMfooAo"
crossorigin="anonymous" defer></script>
+ <script
src="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/js/bootstrap.min.js"
integrity="sha384-wfSDF2E50Y2D1uUdj0O3uMBJnjuUD4Ih7YwaYd1iqfktj0Uod8GCExl3Og8ifwB6"
crossorigin="anonymous" defer></script>
+ <script
src="https://cdnjs.cloudflare.com/ajax/libs/prism/1.20.0/prism.min.js"
defer></script>
+ <script
src="https://cdnjs.cloudflare.com/ajax/libs/prism/1.20.0/plugins/autoloader/prism-autoloader.min.js"
defer></script>
+
+ <script type="text/javascript">
+ window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new
Date;
+ ga('create', 'UA-400821-1', 'auto');
+ ga('send', 'pageview');
+ </script>
+ <script async src="https://www.google-analytics.com/analytics.js"></script>
+</head>
+<body>
+ <!-- /// Navigation Start -->
+ <div id="navigation"><p><img class="wysiwyg-unknown-macro"
src="https://cwiki.apache.org/confluence/plugins/servlet/confluence/placeholder/unknown-macro?name=html&locale=en_GB&version=2"></p></div>
+ <!-- /// Navigation End -->
+
+ <article>
+ <div class="container-fluid">
+ <div class="container pt-5">
+ <div class="row">
+ <div class="col-12">
+ <!-- /// Breadcrumb Start -->
+ <div id="breadcrumb" class="mb-2 text-small">
+ <a href="index.html">Apache
Tapestry</a> > <a
href="documentation.html">Documentation</a> > <a
href="user-guide.html">User Guide</a> > <a
href="rest-support-page-is-work-in-progress.html">REST Support (page is work in
progress)</a>
+ </div>
+ <!-- /// Breadcrumb End -->
+
+ <!-- /// Smallbanner Start -->
+ <div id="smallbanner"><img
class="wysiwyg-unknown-macro"
src="https://cwiki.apache.org/confluence/plugins/servlet/confluence/placeholder/unknown-macro?name=html&locale=en_GB&version=2"></div>
+ <!-- /// Smallbanner Start -->
+
+ <!-- /// Content Start -->
+ <div id="content">
+ <div id="ConfluenceContent"><h2
id="RESTSupport(pageisworkinprogress)-Overview">Overview</h2><p>Since version
5.8.0, Tapestry provides out-of-the-box support for writing REST endpoints as
regular event handler methods in page classes. They work in the same way the
<code>activate</code> event (i.e. <code>onActivate()</code> methods) work,
including how event handler method parameters work. The
<code>@RequestBody</code> annotation was created so event handler methods can
access the request body. The @StaticActivationContextValue annotation was
created so you can write event handler methods that are only called when one or
more parts of the URL path match given values. Both annotations are not
REST-specific and can be used in any event handler method. A new
subproject/JAR, tapestry-rest-jackson, automates the use of Jackson Databind to
make JSON conversions. tapestry-Swagger/OpenAPI 3.0 descriptions are generated
automatically and can be easily customized. A
new subproject/JAR, tapestry-openapi-viewer, provides an out-of-the-box
viewer for the generated OpenAPI description using Swagger UI. For a Tapestry
REST support example project, check out <a class="external-link"
href="https://github.com/thiagohp/tapestry-rest-example"
rel="nofollow">https://github.com/thiagohp/tapestry-rest-example</a>.</p><p>Some
important warnings:</p><ol><li>Tapestry's REST support isn't an implementation
of JAX-RS, so they expect any of its concepts to work here. It's REST
implemented in a Tapestry way.</li><li><span style="letter-spacing:
0.0px;">REST endpoint event handler methods in components are ignored just like
<code>onActivate()</code> is.</span></li></ol><p>The following HTTP methods are
supported:</p><div class="table-wrap"><table class="table table-bordered
table-responsive"><colgroup span="1"><col span="1" style="width:
21.3382%;"><col span="1" style="width: 30.9222%;"><col span="1" style="width:
25.859%;"><col span="1" style="width: 21.8807%;"><
/colgroup><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh">HTTP
method</th><th colspan="1" rowspan="1" class="confluenceTh">Tapestry event
name</th><th colspan="1" rowspan="1"
class="confluenceTh"><p>EventConstants</p><p>constant name</p></th><th
colspan="1" rowspan="1" class="confluenceTh"><p>Event handler</p><p>method
name</p></th></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><code>GET</code></td><td colspan="1" rowspan="1"
class="confluenceTd"><code>httpGet</code></td><td colspan="1" rowspan="1"
class="confluenceTd"><code>HTTP_GET</code></td><td colspan="1" rowspan="1"
class="confluenceTd"><code>onHttpGet</code></td></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd"><code>POST</code></td><td colspan="1"
rowspan="1" class="confluenceTd"><code>httpPost</code></td><td colspan="1"
rowspan="1" class="confluenceTd"><code>HTTP_POST</code></td><td colspan="1"
rowspan="1" class="confluenceTd"><code>onHttpPost</code></td></tr><tr><td
colspan="1" rowspan="1" cl
ass="confluenceTd"><code>DELETE</code></td><td colspan="1" rowspan="1"
class="confluenceTd"><code>httpDelete</code></td><td colspan="1" rowspan="1"
class="confluenceTd"><code>HTTP_DELETE</code></td><td colspan="1" rowspan="1"
class="confluenceTd"><code>onHttpDelete</code></td></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd"><code>PUT</code></td><td colspan="1"
rowspan="1" class="confluenceTd"><code>httpPut</code></td><td colspan="1"
rowspan="1" class="confluenceTd"><code>HTTP_PUT</code></td><td colspan="1"
rowspan="1" class="confluenceTd"><code>onHttpPut</code></td></tr><tr><td
colspan="1" rowspan="1" class="confluenceTd"><code>HEAD</code></td><td
colspan="1" rowspan="1" class="confluenceTd"><code>httpHead</code></td><td
colspan="1" rowspan="1" class="confluenceTd"><code>HTTP_HEAD</code></td><td
colspan="1" rowspan="1"
class="confluenceTd"><code>onHttpHead</code></td></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd"><code>PATCH</code></td><td colspan="1"
rowspan="1"
class="confluenceTd"><code>httpPatch</code></td><td colspan="1" rowspan="1"
class="confluenceTd"><code>HTTP_PATCH</code></td><td colspan="1" rowspan="1"
class="confluenceTd"><code>onHttpPatch</code></td></tr></tbody></table></div><h2
id="RESTSupport(pageisworkinprogress)-WritingRESTendpoints">Writing REST
endpoints</h2><p>Writing a REST endpoint in Tapestry is exactly the same as
writing <code>onActivate()</code> method in a page class. Everything is the
same: parameter handling, returned value processing, precedence rules, class
inheritance, URLs, etc. If you know how to write <code>onActivate()</code>
methods, you already know almost everything you need how to write a REST
endpoint event handler.   There are only 2 small differences between
<code>onActivate()</code> and REST endpoint event handler
methods:</p><ol><li>REST event handler methods are invoked after the
<code>onActivate()</code>. </li><li>The event name is different, according
to the HTTP method to be h
andled.</li></ol><p>So, for example, if you want a REST endpoint with URL
/userendpoint/[id], supposing the id is a <code>Long</code>, handling the
<code>GET</code> HTTP method, you can just write the following page class and
event handler:</p><div class="code panel pdl" style="border-width: 1px;"><div
class="codeContent panelContent pdl">
+<pre><code class="language-java">public class UserEndpoint {
+
+ Object onHttpGet(Long id) { // It could also be
@OnEvent(EventConstants.HTTP_GET) Object anyMethodName(Long id)
+ (...)
+ }
+ (...)
+}</code></pre>
+</div></div><p>The example above could also be written using the
<code>@OnEvent</code> annotation and would work the same:</p><div class="code
panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<pre><code class="language-java">public class UserEndpoint {
+
+ @OnEvent(EventConstants.HTTP_GET)
+ Object getById(Long id) { // or any other method name
+ (...)
+ }
+ (...)
+}</code></pre>
+</div></div><h2 class="auto-cursor-target"
id="RESTSupport(pageisworkinprogress)-Readingtherequestbodywith@RequestBody">Reading
the request body with <code>@RequestBody</code></h2><p>Many times, specially
with POST, PUT and PATCH requests, the data is sent through the request body.
To get this data, the event handler method needs to add a parameter with the
<code>@RequestBody</code> annotation. It has a single property,
<code>allowEmpty</code>, with <code>false</code> as its default value.</p></div>
+ </div>
+ <!-- /// Content End -->
+ </div>
+ </div>
+ </div>
+ </div>
+ </article>
+
+ <!-- /// Footer Start -->
+ <div id="footer"><p>Apache Tapestry, Tapestry, Apache, the Apache feather
logo, and the Apache Tapestry project logo are trademarks of The Apache
Software Foundation.</p><p><br clear="none"><img class="wysiwyg-unknown-macro"
src="https://cwiki.apache.org/confluence/plugins/servlet/confluence/placeholder/unknown-macro?name=html&locale=en_GB&version=2"><br
clear="none"></p><p><br clear="none"></p></div>
+ <!-- /// Footer End -->
+</body>
+</html>