Re: Project activity
Onno Scheffers <[email protected]> Fri, 19 Aug 2005 08:53:07 +0200
| Newsgroups | gmane.comp.java.enhydra.barracuda.general |
|---|---|
| Message-ID | <[email protected]> |
This is a multi-part message in MIME format... ------------=_1124434402-15681-22 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit James Carnegie wrote: > I would recommend taking a look at Tapestry or Wicket. Both are > component based but are better supported than Barracuda. Struts is > basically JSP based and therefore suffers from many of the same > problems as JSP. Hi there, I just finished reviewing Wicket, Tapestry and Barracuda for internal use for a customer who currently uses Struts only. The aim was to get rid of JSPs all together (so I didn't look at JSF, which usually comes down to using JSPs still). Each frameworks has their own strengths and weaknesses. Although I personally liked Barracuda best from a technical point of view, I decided to recommend Tapestry for these reasons: - Barracuda lacks proper documentation and books, while there are about 3 Tapestry books and lots of examples/tutorials and a very active community. (Hint: If there was just one good Barracua book, that could have made a lot of difference in my recommendation!) - It is based on the DOM API, which is a pretty powerful API. But it is also pretty resource-hungry and quite complex for newbies. - The customer frequently hires external developers and there are very few people out there who have Barracuda knowledge, while there are plenty of people having Tapestry knowledge. Wicket is going to be very powerful, but is not yet as mature as either Barracuda or Tapestry. But it is fast becoming one of the most popular web based frameworks. I think it is really a framework to keep an eye on for the future. It takes a lot of ideas from Tapestry, but tries to keep it all simpler and does much more in code (where Tapestry requires lots of XML configuration files). My reasons for personally liking Barracuda best: - It is possible to get a 100% seperation of HTML and Java code. This really makes the framework stand out from the others. Web-designers can now create the templates and make them 100% (X)HTML compliant and they can even validate them with the W3C validators. Tapestry or Wicket will require you to insert special attributes into the templates, which will still keep them editable by a webdesigner, but it will break the compliancy and generate a lot of warnings in the validators. - Using XMLC, it is possible to compile your HTML into classes, creating getters/setters from all HTML-elements that have an id set. This means much more problems appear at compile-time (when they are supposed to show up), while Tapestry and Wicket (just like JSP's) show most problems at runtime. Also if a webdesigner removes or duplicates an ID, you will notice on compile-time, where in Tapestry/Wicket you'll get runtime errors. - In spite of what previous posters said, I consider Barracuda to be quite easy to learn once you know the DOM API. It just takes a while because the documentation is lacking. And although I recommended Tapestry, it's far from perfect as well: One big warning I put under my recommendation is that if you're going with Tapestry for new projects, make sure the people on that project either already know Tapestry or you reserve enough time to get them to learn it first, because Tapestry _really_ has a very steep learning curve and I would advise against using it without at least reading through the entire 'Tapestry in Action' book. Offcourse that won't do you much good if you're going for the latest (beta) release, since so much has changed. And I don't really like the fact that they've hidden all documentation for the previous release, while the beta-release is not production-ready yet and its new documentation is not finished yet. Because of the active community though, there are eBooks available that are constantly updated to the latest Tapestry releases and you can buy them. The full books will be released after Tapestry 4 is released. Tapestry 4 is getting much more powerful though, especially combined with Java5/Annotations. After reviewing all of these web frameworks I started playing around to create a new framework from scratch myself, since I still don't thing the perfect web framework exists. I'll try to combine the best features of each framework. But I do that mostly for fun and I don't know if I will ever finish it or publish it (there are already so many out there and the number is likely to grow). Regards, Onno ------------=_1124434402-15681-22 Content-Type: text/plain; name="message-footer.txt" Content-Disposition: inline; filename="message-footer.txt" Content-Transfer-Encoding: 8bit -- Barracuda mailing list [email protected] http://www.objectweb.org/wws/lists/projects/barracuda ------------=_1124434402-15681-22--