Hmmmm.... I find Tapestry to be powerful and robust. It seems to handle resources better than JSF. It is also really easy to create Tapestry components (out of other Tapestry components no less). JSF component creation (true components not composition components ala Facelets) is lacking.
Many things in Tapestry just work the way they should. Many things in JSF don't just work the way they should. For example, in Tapestry when you get an error with a field, that field is automatically highlighted, in JSF you have to do it yourself. There is not reason why h:form could not do it for you. It just doesn't. However.... Tapestry takes a lot more effort to grasp and it takes a lot more effort to learn. It is complicated. It did not get simpler in Tapestry 4. Injection via an abstract getter, anyone? Shudder? I think I have grasped it (but I enjoy complex stuff), but to use it on a large team... YIKES! There is going to be a lot of developer body bags. JSF is far easier to learn and grasp. Back to your original question: "When would you choose to use Tapestry over JSF/Facelets"? I don't get to pick. The pick is usually done before I get there and I merely assist with the choice. I am thankful for this. Both have their issues. However as I breathe, I have an opinion: I think JSF is far superior for internal apps where the look and feel is not extremely important. The main criterion is developer productivity. I think Tapestry is far superior for external apps where the look and feel is critical. The main criterion is look and feel. Also if you are going to create a lot of custom components, Tapestry is a better choice as well. Facelets closes the gap (quite a bit) between Tapestry and JSF, but Tapestry is still a better platform for building components. On the other hand, there are more OTS components available for JSF. The docs for Tapestry are lacking. The amount of information about Tapestry pails in comparison to JSF.... I feel I am qualified to make the above statements having used both. I have not bias towards either. I can make money doing either. I enjoy working with both. "Rick helped us to get our arms around Tapestry, Hibernate, and Spring. We are implementing all new J2EE applications in these technologies. Rick showed us how to pull all of these things together." Wayne Having taught both JSF and Tapestry workshops, I can tell you this. Developers get JSF quickly. Developers stumble with Tapestry. It takes twice as long to do the equiv CRUD lab in Tapestry versus the other. (It takes another two times as long to do it in classic Struts so...). Granted Tapestry is very powerful however that power begets complexity. Tapestry 5 should focus on developer productivity. Well you asked..... -----Original Message----- From: Thomas Hicks [mailto:[EMAIL PROTECTED] Sent: Tuesday, June 20, 2006 12:29 PM To: jug-discussion@tucson-jug.org Subject: Re: [jug-discussion] App Dev Framework choices Hopefully not. I didn't ask "which app framework is better"? I asked a specific question of Rick (and others) from his experience "When would you choose to use Tapestry over JSF/Facelets"? I was hoping for a summary based on his experiences with various frameworks. cheers, -tom At 12:16 PM 6/20/2006, you wrote: >you may have just started the next religious war > >On Jun 20, 2006, at 11:30 AM, Thomas Hicks wrote: > >>Hey Rick, >> >>You raise an issue I've been looking at lately: the pros & cons >>of various web app dev frameworks. I was motivated by my lack >>of knowledge about what's out there and inspired by Matt Raible's >>comparison presentation (http://www.virtuas.com/articles/ >>webframework-sweetspots.html). >> >>In the snippet below you mention JSF/Facelets and Tapestry. >>When do you choose to use Tapestry over JSF/Facelets (or vice versa)? >> >>(Anyone else with experience in the frameworks area, please chime in). >> regards, >> -tom >> >> >>At 11:00 AM 6/20/2006, Rick wrote: >>>..... >>>Nick, >>> >>>I was up your way working on a Tapestry project (a few weeks ago). >>> >>>I've been doing some Tapestry work on the side while doing >>>JSF/Facelets/Spring/Hibernate(iBatis too) for my regular gig. I >>>also updated >>>our Tapestry course to Tapestry 4.0. >>> >>>TTYL >>> >>>--Rick >> >> >> >>--------------------------------------------------------------------- >>To unsubscribe, e-mail: [EMAIL PROTECTED] >>For additional commands, e-mail: [EMAIL PROTECTED] >> > > >--------------------------------------------------------------------- >To unsubscribe, e-mail: [EMAIL PROTECTED] >For additional commands, e-mail: [EMAIL PROTECTED] > > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]