Matt Raible has been building web applications for most of his adult life. He started tinkering with the web before Netscape 1.0 was even released. For the last 16 years, Matt has helped companies adopt open source technologies (Spring, Hibernate, Apache, Struts, Tapestry, Grails) and use them effectively. Matt has been a speaker at many conferences worldwide, including Devoxx, Jfokus, ÜberConf, No Fluff Just Stuff, and a host of others. Matt is a DZone MVB and is not an employee of DZone and has posted 149 posts at DZone. You can read more from them at their website. View Full User Profile

My Comparing JVM Web Frameworks Presentation from Devoxx 2010

  • submit to reddit

This week, I've been having a great time in Antwerp, Belgium at the Devoxx Conference. This morning, I had the pleasure of delivering my Comparing JVM Web Frameworks talk. I thoroughly enjoyed giving this presentation, especially to such a large audience. You can view the presentation below (if you have Flash installed) or download it here.

Unlike previous years, I chose to come up with a spreadsheet matrix that shows why I chose the 5 I did. This spreadsheet and rankings given to each framework are likely to be debated, as I don't know all the frameworks as well as I'd like to. Also, the missing column on this spreadsheet is a "weighting" column where you can prioritize certain criteria like I've done in the past when Comparing Ajax Frameworks. If you believe there are incorrect numbers, please let me know and I'll try to get those fixed before I do this talk again at The Rich Web Experience.

One thing that doesn't come across in this presentation is that I believe anyone can use this matrix, and weightings, to make any of these frameworks come out on top. I also believe web frameworks are like spaghetti sauce in The Ketchup Conundrum. That is, the only way to make more happy spaghetti sauce lovers was to make more types of spaghetti sauce. You can read more about this in my There is no "best" web framework article.

Update: If you disagree with the various ratings I gave to web frameworks in this presentation, please provide your opinions by filling out this survey. Thanks to Sebastien Arbogast for setting this up.

Update: Sebastien has posted his survey results at JVM Web Framework Survey, First Results.

Update 12/6: A video of this presentation is now available on


Published at DZone with permission of Matt Raible, author and DZone MVB.

(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)



Jacek Furmankiewicz replied on Fri, 2010/11/19 - 9:26am

If this included Rails, why didn't you include Django on Jython?

Henk De Boer replied on Fri, 2010/11/19 - 4:51pm

The talk itself was nice, kudos for that :)

An interesting detail though was that people were asked to raise their hand when they used a specific framework. An -overwhelming- majority used JSF(*). Simply because of that, it's probably interesting to include JSF anyway, whether it's in your top 5 or not. It's simply something that's of interest to a lot of developers. Many of the other frameworks, especially Wicket, had an embarrassingly low number of hands raised.

One small detail I noticed is that you mentioned JSF component sets do not mix, and gave IceFaces and RichFaces as an example. This however is not entirely true. In general component sets do mix, as that is pretty much the entire idea of having a component model in the first place.

For IceFaces and RichFaces it's indeed true that they don't mix, but this is mainly because they each come with their own implementation of an AJAX extension. In JSF 2.0 the infrastructure for these kinds of things is added to the base frameworks. AJAX component sets for JSF 2.0 should thus mix pretty well.

*To be honest you immediately asked afterward to those using JSF who really like it and a lot of hands were lowered. However, you didn't ask this for the other frameworks, so it's hard to compare really. Maybe for the wicket guys only 33% of programmers using it really likes it (only 2 people would have needed to lower their hands).

Devi Lustrek replied on Sat, 2010/11/20 - 7:41am

Oracle ADF should be included.

Gabriel Belingueres replied on Sat, 2010/11/20 - 11:30am

What about Seam and Spring Web Flow?

Marko Milicevic replied on Mon, 2010/11/22 - 3:14pm

I'm curious how Grails and Lift get no points (zero) for their "Multi-language Support (Groovy / Scala)"?

Btw Matt, i really appreciate your ongoing thoughtful analysis of webframeworks.


Andrew McVeigh replied on Mon, 2010/11/22 - 5:16pm

hmm, dice shows 1771 jobs for struts, around 750 for jsf.  they are still being actively used.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.