Lably
Skip to content

Apache Tapestry

  • 6 min read
  • 8 chapters

Related on Lably

Through Open-source software, Java (programming language) and User interface

Tapestry emphasizes simplicity, ease of use, and developer productivity. It adheres to the Convention over Configuration paradigm, eliminating almost all XML configuration. Tapestry uses a modular approach to web development by having a strong binding between each user interface component (object) on the web page and its corresponding Java class. This component-based architecture borrows many ideas from WebObjects.

Notable features

Live Class Reloading
Tapestry monitors the file system for changes to Java page classes, component classes, service implementation classes, HTML templates and component property files, and it hot-swaps the changes into the running application without requiring a restart. This provides a very short code-save-view feedback cycle that is claimed to greatly improve developer productivity.
Component-based
Pages may be constructed with small nestable components, each having a template and a component class. Custom components are purportedly trivial to construct.
Convention over configuration
Tapestry uses naming conventions and annotations, rather than XML, to configure the application.
Spare use of HTTPSession
By making minimal use of the HTTPSession, Tapestry is designed to be highly efficient in a clustered, session-replicated environment.
Post/Redirect/Get
Most form submissions follow the Post/Redirect/Get (PRG) pattern, which reduces multiple form submission accidents and makes URLs friendlier and more bookmarkable, along with enabling the browser Back and Refresh buttons to operate normally.
Inversion of Control (IoC)
Tapestry is built on a lightweight Inversion of Control layer with similarities to Google Guice, but designed to make nearly all aspects of Tapestry's behavior configurable and replaceable.

Sign in to keep reading

7 more chapters are free with a Lably account.

More in Computing and information technology