Tapestry
Architecture
- Page
- Tapestry pages are valid XHTML templates. These are automatically wired up to classes of the same name in a pages package.
- Component
- The Tapestry XML namespace is used to indicate elements in the template which will be automatically created as components.
Expansions (similar to JSP expressions) can also be used.
(Pages are also implemented as components.)
State
State is generally persisted on the server.
@Persist and
@ApplicationState
annotations indicate data which should be persisted across postbacks, or throughout the session, respectively.
The persistence strategy
can be customised as required.
Source Files
- src/app/Name.java
- The model.
- src/app/pages/A.java
- The backing bean for screen A.
- src/app/pages/B.java
- The backing bean for screen B.
- src/app/pages/C.java
- The backing bean for screen C.
- web/A.tml
- The template for screen A.
- web/B.tml
- The template for screen B.
- web/C.tml
- The template for screen C.
Deployment
Deployment is the same as for any other Java web application with custom servlets, and can be performed with standard JEE tools.
Tools
There is no specific tool support for Tapestry 5. However, as it is a Java web application, any standard Java tools can be used.
This application was developed with NetBeans.