General

Keep up to date with the latest events in the Tapestry world.

Thiago H. de Paula Figueiredo joins the PMC

Oct 27 2009

Thiago H. de Paula Figueiredo has been elected as a member of the Tapestry PMC. Thiago is looking forward to a good number of improvements to Tapestry based on his Ars Machina project.

German written Tapestry 5 book available as eBook

Sep 13 2009

The first German written Tapestry 5 book ( Tapestry 5: Die Entwicklung von Webanwendungen mit Leichtigkeit ) is now available as eBook .

The hardcover version of the book will be available starting from Sep 28 2009.

Tapestry 5.1.0.5 - Final Release

May 06 2009

The stable release for Tapestry 5.1, release 5.1.0.5, is now available for download.

Tapestry 5.1 includes a large number of improvements to the speed and scalability of Tapestry without sacrificing backwards compatibility. However, you should still consult the upgrade notes that identify a couple of minor "gotchas".

Major improvements from Tapestry 5.0 to Tapestry 5.1:

  • Performance optimizations that speed rendering of very complex pages, and reduce memory usage
  • Static JavaScript libraries will now be dynamically combined into a single request
  • Automatic GZIP compression of static and dynamic content, for clients that support it
  • Significant improvements to Tapestry's property expression language
  • Partial page updates (via Ajax) may now update multiple client-side Zones
  • Many new features and improvements to Tapestry template files
  • Improved client- and server-side validation of numeric input values
  • User's preferred locale is now encoded into the URL, rather than stored in a cookie
  • A new ProgressiveDisplay component for incremental page loading
  • Vastly improved Quickstart Archetype
  • New Tapestry IoC features to make it easier to override services and contributions to service configurations
  • Many new localizations of validation messages
  • Component reference documentation now identifies events triggered by components
  • Really slick new client-side logging facility (based on Blackbird )
  • New API for URL rewriting (to provide improved control over Tapestry URLs)

... and many, many more bug fixes and improvements; full details are available in the release notes .

Download Tapestry 5.1.0.5

Tapestry 5.1.0.4 (Beta Release)

Apr 27 2009

The second beta release of Tapestry 5.1 is now available: Tapestry 5.1.0.4

This is a bug fix release; many of the improvements were to the Maven Quickstart Archetype, and to the Maven Component Report.

See the release notes for more details.

Download Tapestry 5.1.0.4

Tapestry 5.1 is Beta!

Apr 20 2009

Following a recent vote, Tapestry 5.1 is now a beta release. Tapestry tends to have pretty short beta periods, so a final release of 5.1 is just around the corner!

Tapestry 5.1.0.3 (Beta Release)

Apr 14 2009

The first beta release of Tapestry 5.1 is now available: Tapestry 5.1.0.3

This is mostly a bug fix release; the major new functionality is support for URL rewriting, which gives you even greater control over how Tapestry produces and dispatches URLs.

See the release notes for more details.

Download Tapestry 5.1.0.3

Tapestry 5.1.0.2 (Alpha Release)

Apr 02 2009

An updated alpha release of Tapestry 5.1 is now available: Tapestry 5.1.0.2

This adds a number of great new features to Tapestry: JavaScript libraries are automatically combined into a single request; client-side logging has been improved using the Blackbird JavaScript console, and the server can now cause updates to multiple zones in an Ajax request.

See the release notes for more details.

Download Tapestry 5.1.0.2

Tapestry 5.1.0.1 (Alpha Release)

Mar 15 2009

An updated alpha release of Tapestry 5.1 is now available: Tapestry 5.1.0.1

This release adds localized numeric input validation, both on the client side and the server side. It also addresses "slow loading" pages by preventing the user from clicking links that will ultimately trigger client-side DHTML or Ajax functionality. The embedded version of Scriptaculous has been upgraded to 1.8.2.

Server-side templates have been improved; there are now new elements in the Tapestry 5.1 XML namespace to limit template content (similar to Tapestry 4's special $content$ and $remove$ ids). In addition, it is now possible for a subclass to override specific portions of its parent class' template.

See the release notes for more details.

Download Tapestry 5.1.0.1

Tapestry 5.1.0.0 (Alpha Release)

Feb 24 2009

Tapestry 5.1.0.0 has been released.

This alpha release fixes many bugs, and adds some significant performance improvements (for larger and complex sites). The IoC container has had a number of improvements, making aspect-oriented programming in Tapestry even easier. The quickstart archetype is now easier to use, and creates a better looking default application.

See the release notes for more details.

Download Tapestry 5.1.0.0

Robert and Thiago Join the Tapestry Team

Feb 15 2009

Long-time Tapestry community members Robert Zeigler and Thiago H. de Paula Figueiredo have both been voted in as Tapestry committers.

Robert brings in expertise on Apache Cayenne , where he's a committer, so we'll be looking forward to some improved integration between the Tapestry and Cayenne.

Thiago is new to the Apache Software Foundation, but is eager to work on all aspects of Tapestry.

Let's welcome both of them to the team!

Tapestry 5.0 Refcard

Feb 1 2009

5.0 Refcard Badge

Howard Lewis Ship has authored a Tapestry 5.0 Refcard . This is a detailed reference to setting up your project, what files go where, authoring classes and templates, key services and a list of components. Enjoy!

Tapestry 5.0.18 - Final Release

Dec 12 2008

Tapestry 5.0.18 has been released as the final release of Tapestry 5.0. This means that, at long last, Tapestry 5 has a stable, production-ready release (not that previous releases were bad, just that they hadn't been voted up as stable).

This release fixes a few minor bugs that could not be easily patched around.

See the release notes for more details.

Download Tapestry 5.0.18

Tapestry 5.0.17

Nov 25 2008

The latest release of Tapestry, Tapestry 5.0.17 (Release Candidate) , is now available.

Tapestry 5.0.17 is the second (and likely final) release candidate; we encourage users to download this version. In a few weeks, the Tapestry PMC will run a vote to grant it release status, barring any blocker bugs (critical bugs with no workaround).

This release builds on 5.0.16, adding two new localizations (Greek and Japanese), fixing some documentation bugs, and addressing one serious issue related to link generation.

See the release notes for more details.

Download Tapestry 5.0.17

Tapestry 5.0.16

Nov 16 2008

The latest release of Tapestry, Tapestry 5.0.16 (Release Candidate) , is now available.

Tapestry 5.0.16 is the release candidate; we encourage users to download this version. In about a month, the Tapestry PMC will run a vote to grant it release status, barring any blocker bugs (critical bugs with no workaround).

In the two months since the previous release, we've addressed over 80 issues, including many bugs and a few last minute improvements. New features include a LinkSubmit component (dearly missed from Tapestry 4), new support for reporting Ajax errors on the client side, smarter client-side validation, support for several new locales, and much new documentation.

See the release notes for more details.

Download Tapestry 5.0.16

Tapestry 5.0.15

Sep 21 2008

The latest release of Tapestry, Tapestry 5.0.15 , is now available.

Tapestry 5.0.15 is the final beta release before the release candidate, which is expected in early October 2008. It includes a significant number of improvements and bug fixes, especially with respect to client-side validation and Ajax support.

See the release notes for more details.

Download Tapestry 5.0.15

Tapestry 4.1.6

Sep 11 2008

This is a maintenance release fixing some much voted-for bugs and providing js-library pluggability. See the release notes for more details.

Tapestry 5.0.14

Aug 11 2008

The latest release of Tapestry, Tapestry 5.0.14 , is now available.

Tapestry 5.0.14 is just about feature complete and can be considered a beta release. A release candidate is expected in the near future.

5.0.14 addresses a large number of bugs,, including a specific bug related to using Tapestry with Groovy. The version of Javassist has changed, which resolves a number of nonsensical errors using JDK 1.6. The approach to localization has simplified.

See the release notes for more details.

Download Tapestry 5.0.14

Tapestry 5.0.13

Jun 16 2008

The latest release of Tapestry, Tapestry 5.0.13 , is now available.

Tapestry 5.0.13 is just about feature complete and can be considered a beta release. A release candidate is expected in the near future.

5.0.13 adds quite a bit of improved Ajax functionality, and addresses a large number of bugs. It also makes it easier to use Tapestry with Groovy. Pay careful attention to the upgrade notes as there have been some wide-ranging changes, especially a rename of the root package from org.apache.tapestry to org.apache.tapestry5 (to faciliate side-by-side deployment of Tapestry 4 and Tapestry 5 applications inside the same WAR).

See the release notes for more details.

Note: there was no public release of Tapestry 5.0.12 (the release was rejected due to some significant issues).

Download Tapestry 5.0.13

Igor Drobiazko

May 29 2008

Igor Drobiazko, a very active Tapestry community member, has been voted in as a Tapestry committer. Welcome aboard, Igor!

Tapestry 5.0.11 is beta

Mar 24 2008

The Tapestry team has voted Tapestry 5.0.11 to be the first beta release of Tapestry 5. This means that the focus is shifting from adding new features to fixing bugs and adding stability (and adding documentation), with the goal of producing a release candidate in the near future.

Tapestry 5.0.11

Mar 14 2008

The latest release of Tapestry, Tapestry 5.0.11 , is now available.

Tapestry 5.0.11 is just about feature complete and can be considered a beta release. A follow up release is expected to be the release candidate.

This release adds significant new features to Tapestry:

  • HTTP/HTTPS control; pages may be marked as accessible only via HTTPS.
  • Index pages on folders.
  • Ajax FormInjectors, to extend an existing Form via Ajax.
  • Overrides of built-in edit and display blocks (used by BeanEditForm and Grid) are now possible.
  • Automatic creation of ValueEncoders for Hibernate entity classes (in other words, automatic conversion between entity classes and entity ids inside URLs).
  • New ability to cache the results of method invocations.
  • Special persistence strategy for Hibernate entitys (to store only the primary key in the session).
Along with the typical batch of bugs fixes and minor improvements .

Download Tapestry 5.0.11

Tapestry 5.0.10

Feb 14 2008

The latest preview release of Tapestry, Tapestry 5.0.10 :

  • Replaces the LGPL client-side library for the DateField component with an ASL library.
  • Allows Tapestry to understand properties defined using Generics.
  • Significantly improves the component reference documentation, adding screen shots and examples.
  • Allows Grid header cells to be overridden.
  • Introduces a production mode (vs. development mode) for applications.
Along with the typical batch of bugs fixes and minor improvements .

Download Tapestry 5.0.10

Tapestry 5: Building Web Applications

Tapestry 5: Building Web Applications

A new book on Tapestry 5 has been published, written by Alexander Kolesnikov, who previously wrote a long series of free tutorials on Tapestry 4.

Tapestry 5.0.9

Jan 28 2008

The latest preview release of Tapestry, Tapestry 5.0.9 , improves on the client-side validation experience, adds an improved page pooling mechanism, fixes template reloading in Tomcat, adds validation messages for Italian and Chinese, adds compatibility with WebSphere 6.1, along with the typical batch of bugs fixes and minor improvements .

Download Tapestry 5.0.9

There is no release 5.0.8; it introduced a critical bug fixed in 5.0.9, and was not released.

Tapestry 5.0.7

The latest preview release of Tapestry, Tapestry 5.0.7 , significantly improves and stabilizes the framework. Major improvements include a more sophisticated client side validation visualization and the start of fully integrated Ajax support, along with the typical batch of bugs fixes and minor improvements .

Download Tapestry 5.0.7

Tapestry 5.0.6

Yet another preview release, Tapestry 5.0.6 adds a raft of new features , including:

A new DateField component (using a client-side JavaScript calendar).

The Grid component can now be utilized inside a Form.

The BeanEditForm component has been refactored, allowing you to create complex forms with multiple BeanEditors.

There is now a BeanDisplay component, a counterpart to BeanEditor that displays the properties of a bean.

For early adopters upgrading from release 5.0.5, you should be aware that Tapestry template files now have a .tml extension, and are stored in the context root, not under WEB-INF . In addition, the @Inject annotation in tapestry-core has been removed, and the @Inject annotation from tapestry-ioc is now doing double-duty.

In addition, Tapestry 5 now uses SLF4j as its pluggable logging library, replacing commons-logging . This may require that you upgrade to Log4j 1.2.14.

Download Tapestry 5.0.6

Welcome Dan Adams

Dan Adams has joined the Tapestry project as a committer. Dan has built some powerful extensions to Tapestry 4 used by his company, Interactive Factory . He's looking forward to doing even more interesting things in Tapestry 5.

Tapestry 4.1.3

Many small bug fixes and one large memory leak fix was made in this release, all existing Tapestry 4.1.2 users are urged to upgrade to this new version. Also comes with new time picker control - GTimePicker .

See the release notes for more details.

Tapestry 5.0.5

Yet another preview release, Tapestry 5.0.5 adds many new components, including a file upload component and the Palette component (for multiple selection). Release 5.0.5 improves the power and flexibility of the BeanEditForm and Grid component, adds a new HTML tutorial, adds client-side property persistence, fixes some problems with the quickstart Maven archetype, and allows expansions inside attributes (rather than just inside body text), as well as many other fixes .

Download Tapestry 5.0.5

Tapestry 4.1.2

New and improved! The Tapestry 4.1.2 release should provide a great amount of value for any existing Tapestry 4 users with changes ranging from a 6-10x performance gain in general rendering of pages to overall improvement and expansion of documentation and usability. See the release notes for more details.

New Tapestry Committers

The Tapestry team has been growing lately and we thought it was time to introduce some of the new members.

Daniel Gredler
Daniel has been working with Tapestry for a long time now and has more than proven himself with the very popular BeanForm component library.

Marcus Schulte
Marcus is a programmer-turned physicist who, since 2001, gradually migrated from C++ land into the world of web-apps. In 2005 he was lucky enough to discover Tapestry and subsequently open-sourced a Tapestry-Hibernate integration library ( Honeycomb ) .

He currently holds as a pet-belief that Scala will be to Java what Tapestry was to Struts.

Ben Dotte
Ben has been developing digital asset management software for Widen Enterprises for the past 2 years, utilizing open source frameworks like Tapestry, Hibernate, and Lucene. He got his start learning Tapestry by creating strategyguidewiki.com , a homegrown wiki that hosts content-rich, administrator-approved videogame strategy guides.

He holds a B.S. in Computer Science from the University of Wisconsin-Eau Claire and recently married his wife Nikki.

Tapestry 5.0.4 (preview release)

Yet another preview release, Tapestry 5.0.4 , reworks and simplifies the Tapestry 5 IoC container even further than 5.0.3, improves exception reporting, deploys correctly under JBoss, adds initial Spring and Hibernate integration, solves a painful concurrency bug, as well as many other fixes .

Download Tapestry 5.0.4

Tutorials at DevShed

Alexander Kolesnikov has published a new series of tutorials for Tapestry 4. You can find a summary of some of them here .

Apache Tapestry 4 Tutorials

Jumpstart 1.1

Geoff Callender has released Jumpstart 1.1 . Jumpstart is a sample CRUD application for Tapestry that features EJB3 integration. It's designed for use as an example, and as a starting point to which your own domain classes may be added.

New in version 1.1:

  • New: More "getting started" examples, with source code displayed on the same web page.
  • New: Appearance - two new looks, plus switchable CSS in Max.
  • New: Friendly URLs in Max.
  • Improved: Many code improvements to java, HTML, and CSS.
  • Fixed: Race condition in FlowSynchronizer. The condition might only have occurred when disable-caching=true.

HandyTapestry 1.0, Tapestry plugin for IntellijJ Idea

HandyTapestry

The HandyTapestry plugin for IntelliJ Idea helps you to develop Tapestry web applications faster.

The plugin provides following features:

  • Completions and navigations in the HTML template
  • Create Tapestry component wizard
  • OGNL expressions syntax and error highlighting

Read more...

What's new:

  • Syntax and error highlighting in OGNL expressions
  • Asset, message key, OGNL constant completion and navigation
  • Page, key attribute value completion and navigation
  • Settings: extensions of template and component specification files
  • Fix for component creation: create folders if they don't exist

Jumpstart 0.8

Geoff Callender has released Jumpstart 0.8 . Jumpstart is a sample CRUD application for Tapestry that features EJB3 integration. It's designed for use as an example, and as a starting point to which your own domain classes may be added.

New in version 0.8:

  • A tour.
    From Hello World to a Log In page to real database transactions, the tour shows you how a Tapestry app hangs together, and you'll see EJB 3 in action, too.
  • A user forum.
    A place to share questions, answers, and ideas.
  • A better project structure.
    Easier to follow.

Enjoying Web Development with Tapestry updated for T4.1

EWDT

Kent Tong's book has been updated for T4.1. A new chapter on AJAX is included. The first four chapters are freely available at here . The whole book is available as a PDF or in hard copy.

HandyTapestry, IntelliJ Plugin

HandyTapestry is a new Tapestry plugin for IntelliJ 6.0. It helps you to develop Tapestry web applications faster. The plugin adds helpful completions and navigations in the HTML template, and the Create Tapestry component wizard. It is currently in beta.

Tapestry NetBeans interview

Tapestry NetBeans interview

One of the Tapestry developers - Andreas Andreou - was recently interviewed for his great work on the Tapestry NetBeans module.

Go check it out here .

Tapestry NetBeans

Tapestry 101 book released

Tapestry 101

Warner Onstine's book on Tapestry 4: Tapestry 101 is now available!

Tapestry 101 is a great introduction to Tapestry using real-world examples. It goes beyond just using Tapestry components and dives into integrating Tapestry with Spring and with Hibernate. It's organized around a real application implemented in the small and should go a great way towards filling in the gaps in people's Tapestry knowlege.

It's available for purchase right now as a downloadable PDF .

BeanForm component released: write 47% less boilerplate code!

BeanForm Site

Developers will often differ on exactly what percentage of statistics are made up, but one thing they can usually agree on is that for the last year or so, the main push in the web development community has been to reduce repetition and enhance productivity by providing fast prototyping tools that are extensible enough to be deployed into production. These frameworks aim to make the simple things automatic (rather than just easy), and the complex things easy (rather than just possible).

Tapestry pages and components are powerful and simple to write, but edit pages often comprise of hundreds of lines of mindless, repetitive, runtime-checked code. There's nothing special about it, but it has to get done. If only you could get the computer to do the boring part for you, so you could focus your attention on the more important, interesting parts of your application. Now you can.

BeanForm is a single-line POJO editor component that allows you to condense these hundreds of lines into a DRY utopia of efficiency. It builds edit forms for your objects automatically, using bean introspection to discover their properties. It adapts input field types to property types, disables input fields for read-only properties, infers validation strings automatically based on EJB3 and Hibernate Validator annotations, allows you to override input fields on a per-property basis, allows the use of recursive properties, and is eminently flexible and extensible. Try it today!

Tapestry - Now Top Level

Tapestry has up to a top-level Apache project. The new home page is http://tapestry.apache.org .

Awards

Various awards/recognition receieved.

2006 Duke's Choice award!

Duke's Choice Winner 2006 Tapestry was honored with this years Duke's Choice Award , which is awarded annually by Sun to Java products that show outstanding innovation. Tapestry won in the open source category. The selection committee is presided over by James Gosling, who personally handed out the award to Howard Lewis Ship at JavaOne 2006.

Upcoming Conferences

Keep track of upcoming conferences where a tapestry related topic will be covered.

Name When Where Who
OSCON 2007
Tapestry 5: Java Language Power, Scripting Ease
Jul 22 Portland, OR
Home field advantage!
Howard M. Lewis Ship
Boulder JUG
Tapestry 5 Preview
Jun 14 Boulder, CO Howard M. Lewis Ship
Denver JUG
Tapestry 5 Preview
Jun 13 Denver, CO Howard M. Lewis Ship
Greater Oklahoma Software Symposium Jun 1 - 3 Midwest City, OK Howard M. Lewis Ship
JavaOne 2007
BoF on Tapestry 5
May 8 - 11 San Francisco, CA Howard M. Lewis Ship
Northern Virginia Software Symposium Apr 27 - 29, 2007 Reston, VA Howard M. Lewis Ship
Greater Oregon Software Symposium Apr 20 - 22, 2007 Porland, OR
Home Field Advantage!
Howard M. Lewis Ship
Twin Cities Software Symposium Apr 13 - 15, 2007 Minneapolis, MN Howard M. Lewis Ship
Emerging Technologies for the Enterprise Mar 28 - 29, 2007 Philadelphia, PA Howard M. Lewis Ship , Jesse Kuhnert
The Ajax Experience Oct 23 - 25, 2006 Boston, MA Howard M. Lewis Ship , Jesse Kuhnert
ApachCon 2006 Oct 9 - 13, 2006 Austin, TX Howard M. Lewis Ship
New England Software Symposium Sep 29 - Oct 1, 2006 Framingham, MA Howard M. Lewis Ship
Pacific Northwest Software Symposium Sep 15 - 17, 2006 Seattle, WA Howard M. Lewis Ship
Southern Ohio Software Symposium Aug 4-6, 2006 Cincinnati, OH Howard M. Lewis Ship , Chris Nelson (Trails)
Desert Southwest Software Symposium July 28-30, 2006 Phoenix, AZ Howard M. Lewis Ship
2006 OSCON July 24-28, 2006 Portland, OR Howard M. Lewis Ship