I don’t know how I feel about Tapestry just yet.
Howard Lewis Ship, the creator of the Tapestry framework, spoke at AJUG this evening. Tapestry indeed seems far more streamlined than Struts as far as J2EE web frameworks go.
I asked Howard to tell us some characteristics of Tapestry as an MVC Model 2 framework for J2EE applications from an architectural perspective that differentiate it from the other MVC Model 2 frameworks like Struts, Spring MVC, Veloctiy, etc. In his response, he seemed to be saying that all of the components were playing the role of model, view, and controller at different times. He followed that with saying that he believes that Tapestry’s MVC Model 2 implementation is one of the most pure implementations of the pattern. Perhaps that is so, but what it sounded like to me was that separation of concerns had been redefined, thus tying the view more closely to markup languages than I would care to do.
I don’t have the bandwidth to take a close look at Tapestry right now, but I don’t currently think that it would be my first choice for the presentation tier of a large J2EE project.
Howard’s notes and an MP3 of the meeting will eventually be available on the AJUG site.