Tapestry has been through one or two complete rewrites, and the latest
version 5.x is one of them - it's brand new.  Tapestry is probably the web
framework that is most like WO, but there are some important differences.
 It would not be trivial to convert an app I think.  Their markup and use
of component classes is basically the same, so an app that uses all inline
components could possibly be converted.  Out of the box, passing data
around between pages (like an EO) is relatively difficult - it wants to be
stateless where WO wants to be stateful.  Similarly, if you have a loop
component with links each link will not be unique unless you explicitly
make it so, like by including the index in the array or the primary key of
the object into it.  The URLs are "clean" and completely user-defined,
which can be nice, but requires more work whereas WO would just take care
of everything for you.  It also has a "feature" where every component
action requires 2 http requests to the server: one to perform the action,
and one to redirect to the next page.  This solves some problems like
duplicate form submission, etc, but it is a little weird and also
sub-optimal.   On the deployment side, I'm not sure if it can be used
outside of a servlet container.

There are some nice features that it has like annotation-defined validation
(like @Required), which gives you validation on both the client and server.
It has hot reloading of component classes so you can add methods without
restarting during development.

In general though there is nothing compelling enough for me to think about
rewriting existing code in Tapestry (or any framework).  For new projects
it might be worth a look, but there are lot of frameworks out there and I
would put many in front of Tapestry.  If I was doing a lot of HTML pages
anymore I would look hard at using Play 2.0 with Scala.

John

On Friday, July 13, 2012, Pascal Robert wrote:

>
> Le 2012-07-13 à 19:39, Lars Sonchocky-Helldorf a écrit :
>
> >
> > Am 13.07.2012 um 22:20 schrieb JR Ruggentaler:
> >
> >> Isn't Tapestry (http://tapestry.apache.org/) a WO like web application
> >> framework? Tapestry integrates with Cayenne
> >> (http://code.google.com/p/tapestry5-cayenne/). Maybe Tapestry +
> Cayenne =
> >> Open WO.
> >
> > I used to do that several years ago in one of my employers projects for
> a customer. Although Tapestry and Cayenne are clearly inspired by WO the
> experience was sup-par (I could go into detail, for instance a repetition
> in a repetition was somewhat of a hairy topic for Tapestry because of
> object reuse, Incompatibility even between minor versions (4.x vs. 4.y not
> to speak of 4.x vs. 5.y). This might have changed over the time but it was
> no more than a "nice try™" at this time.
>
> Someone at WOWODC also said that Tapestry API changes between major
> versions is a PITA. I don't think we want another RoR here :-)
>  _______________________________________________
> Do not post admin requests to the list. They will be ignored.
> Webobjects-dev mailing list      ([email protected])
> Help/Unsubscribe/Update your Subscription:
>
> https://lists.apple.com/mailman/options/webobjects-dev/johnthuss%40gmail.com
>
> This email sent to [email protected]
 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      ([email protected])
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to [email protected]

Reply via email to