Matt RaibleMatt Raible is a Web Architecture Consultant specializing in open source frameworks.

The JHipster Mini-Book The JHipster Mini-Book is a guide to getting started with hip technologies today: AngularJS, Bootstrap, and Spring Boot. All of these frameworks are wrapped up in an easy-to-use project called JHipster.

This book shows you how to build an app with JHipster, and guides you through the plethora of tools, techniques and options you can use. Furthermore, it explains the UI and API building blocks so you understand the underpinnings of your great application.

For book updates, follow @jhipster-book on Twitter.


Over 10 years ago, I wrote my first blog post. Since then, I've authored books, had kids, traveled the world, found Trish and blogged about it all.

RE: Which is the Hottest Java Web Framework?

The "Break it Down" Blog has a lengthy post on Which is the Hottest Java Web Framework? Or Maybe Not Java? Comparing Java Web Frameworks is hard because so many people are passionate about the framework they know best. Add a couple more like Flex and Ruby on Rails and its downright difficult. Nevertheless, this post is good in that it contains a lot of pretty trend graphs and it looks like the author has done some good research. It's likely the folks that will scream foul are the ones that did poor in the comparison (Tapestry and Stripes, I'm talking about you).

Surprising among the top Java Web Frameworks is the rise of Struts 2:

Google Trends Graph

To quote:

Which is much more interesting I think is how Wicket adoption has stayed almost flat while Struts 2 adoption has spiked. Spring MVC/WebFlow seems to be going no where fast and racing JBoss Seam there.

The popularity of Struts 2 really caught me off guard with it being quite a bit different from Struts 1, I figured it got thrown into the "just another web framework" category, but I guess there is something in a name and it's doing quite well.

Regardless of what you think of the post and trends, you have to appreciate the amount of time the author put into it.

Posted in Java at Jun 10 2008, 10:39:08 PM MDT 14 Comments

Add in JSF and we get this I know JSF is also Joint Strike Fighter, but I doubt a lot of people from India are searching for that :)

Posted by Ashish Vashisht on June 10, 2008 at 11:55 PM MDT #

Ashish, you guessed wrong. Search only for JSF:

And look at the right panel, they are all news about the Joint Strike Fighter. Struts is polluted in the same way:

These stats have some meaning, but they have big noise included.

Posted by Ignacio Coloma on June 11, 2008 at 04:10 AM MDT #

I particularly appreciate 3 points about "some good research" :

  1. Wicket is obviously a common word
  2. only 2/10 "struts 2" news are about Struts 2 !
  3. why not introduce Grails in the trends ?

What are we measuring : buzz ? popularity ? noise ?

Why are people searching "Struts 2" or "" ? What does it mean ?

Has it historically been relevant ?

Note that I just want to add a grain of salt, not to mess up the whole meal !

Posted by Bruno Vernay on June 11, 2008 at 05:43 AM MDT #

Yes, you are right. These graphs are meaningless. ;) (if I add (apache tapestry) | tapestry in to the query it shows it as more popular than everyone listed, which doesn't seem likely with struts in the picture)

Posted by Jesse Kuhnert on June 11, 2008 at 06:23 AM MDT #

Using google trends is fun, but trying to get decent conclusions from an analysis like that is impossible. That those trends are complete rubbish is best shown with the mailing list trends:

Posted by Davide Baroncelli on June 11, 2008 at 06:28 AM MDT #

Just as some readers mentioned, the popularity of the searched term may indicate the number of defects and issues faced by developers when using it in real development.

We are a JSF shop. When we evaluate JSF against Webwork, Spring MVC and Tapestry two years ago, we didn't do many searches. However, we have encountered numerous problems when developing with JSF and constantly have to google JSF in search of a solution...

Secondly, the terms used in the Google Trend by the "Breakt it Down" author are not ideal. Instead of using brackets, double quotes should be used to specify the order of the multiple word search terms.

Posted by Alex on June 11, 2008 at 07:13 AM MDT #

Again, it would be nice to have some kind of Wiki or collaborative effort on Java Web Framework. Because this kind of work is meaningless when it stand alone, but it could be an acceptable add-on if put aside others parameters (books, jobs, mailing list and non quantitative qualities). If I am correct Matt set up some "evaluation criteria", as I referenced in my "Web framework comparisons"

Posted by Bruno Vernay on June 11, 2008 at 07:15 AM MDT #

You have a good point about "wicket" being too common... if you remove "| wicket" from the Trend results from clicking that 2nd image, Wicket drops almost completely off the comparison chart.

It's really hard to tell if that is meaningful or not because most folks might just call it "Wicket". The reason I left "wicket" in there by itself, is because fi you Google the term, all the top results are for the Java web framework, which indicated to me that there is minor levels of confusion around that word. So I *think* the trend is mostly useful information; obviously there is some noise in all of them.

That's a good suggestion unfortunately mailing list traffic can be misleading depending on the source... check our Nabble... Wicket is one of *the* most active mailing lists they maintain for Java:

Posted by Riyad Kalla on June 11, 2008 at 09:18 AM MDT #

Actually, Google Trends shows how often something is searched for, by region. It doesn't show how many results are found, just how many times it is searched for.

If you look at the results for JSF, you will see a LOT of searches from India, and as I said, people from India are unlikely to be searching for Joint Strike Fighter in this volume... Also, did you notice the tell tale Bangalore listing? All the top cities from which people are searching seem to be outside the US.

Posted by Ashish Vashisht on June 11, 2008 at 09:49 AM MDT #

exactly, their mailing list is very active: its upwards trend is even more meaningful for this exact reason! Should that mailing list be populated by 3 poor souls, an upwards trend wouldn't tell anything, but in this case...

Anyway, I would be even more drastic, and I would use this graph:

it clearly shows that:
- JSF is declining
- Tapestry is declining (despite the fact that it's a hugely overloaded word)
- Wicket is rising (slowly)
- GWT is rising (fast)

what else does one need, if trends are that important for evaluating a web framework?

Posted by Davide Baroncelli on June 11, 2008 at 05:07 PM MDT #

BTW, I forgot, be it 1 or 2, struts is *declining* (and with good reason, I'm working a lot with webwork these days and I really don't see why anyone should prefer it to spring mvc or a component-oriented solution like wicket):

Posted by Davide Baroncelli on June 11, 2008 at 05:10 PM MDT #


I had some rather harsh responses to the original post here and here. I would suggest caution in reading too much into these, and would suggest the following job listings based trends being perhaps a little more suggestive of what you might be wanting to look at (even though I would still take it with a grain of salt - albeit lesser salt than google trends.)

Note that discerning readers are likely to better refine the queries - I simply typed them in to the best of my first pass abilities.

Absolute Job Listings

Relative Job Listings


Posted by Dhananjay Nene on June 11, 2008 at 05:30 PM MDT #

So, struts(2) is hot in India and China - I say, good luck with maintaining those old outsourced struts-based apps there :-)

Posted by Soren on June 13, 2008 at 04:36 AM MDT #

I added the word "tutorial" to the search term, and now I can compare "Wicket", "Tapestry", "Seam", "Rails" and "Flex" as well. Please read my blog post: Which is the hottest Java web framework that people want to learn?

Posted by Alex on June 13, 2008 at 08:59 AM MDT #

Post a Comment:
  • HTML Syntax: Allowed