Tapestry 5.4-beta-22

The latest beta preview release of Tapestry 5.4 is now available.

The release numbers are not consecutive because not every beta release is voted for wider release. This one has.

Tapestry 5.4-beta-22 contains a significant number of bug fixes and minor improvements. Dependencies on third party libraries have been updated.

This release is available from the Maven Central Repository, or as a direct download.
Notable fixes and improvements since the previous beta:
  • A "page loading mask" prevents interacting with the page until all JavaScript has downloaded and executed. 
  • It is now possible to unregister client-side DOM event listeners.
  • The client persistence strategy now detects internal changes to mutable state objects.
  • Page classes may now have the suffix "Page" (but this is not part of the page's canonical name, the one used in URLs).
  • Selected pages may be loaded and initialized at server startup, rather than on the first request which references them.
  • Tapestry does a better job of detecting when its naming rules would cause different pages, components, or mixins to share an alias.
  • There were some issues with JDK 8 compatibility that have been addressed.
  • Tapestry can now be configured to work in environments, such as Google App Engine, where file system access is prohibited.
  • The exception report page and T5 Dashboard pages are no longer affected when the application overrides the Bootstrap CSS files in the core JavaScript stack.
  • The Dashboard page now has a "Component Libraries" page that details information about all libraries in use by the application.
  • It is possible to control whether a JavaScript library is minimized, or left as-is.
  • The Import annotation on a base class would not operate correctly for a subclass; it now correctly searches relative to the base class.
  • The PageActivationContext annotation now works for more than one field, allowing multi-part page activation contexts.
  • Exception reports may now be written, in a plain-text format, to the file system.

Tapestry now requires at least JDK 1.6. It is no longer compatible with JDK 1.5.

While not an actual release candidate, beta previews like this one are high-quality builds that pass all of Tapestry's extensive automated tests and have been voted on by the Tapestry team.

You are encouraged to try out this beta preview and let us know how it's working.