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--