Skip to main content

Java Web Framework Comparison

Wikipedia has listed over 85 web applications frame works with Java based on the top – 28. Below table lists of most widely used web Application Frameworks products available today.

Product

what type of project is best fit?

Struts 2

The new version Struts 2.0 is a combination of the Sturts action framework and Webwork (a total redesign). Struts2 may a good fit for an enterprise application when there is existing Struts resource and projects of medium complexity.

Spring MVC

Good choice for medium sized project. Convention-based defaults for controllers, model object names, and view resolves. Spring MVC addresses request-driven processing at the HTTP level. It does not aim to provide a component model like JSF.

Stripes

An open source web application framework based on MVC pattern. It aims to be a more lightweight framework than Struts by using annotations and generics that were introduced in Java 1.5, to achieve "convention over configuration".

JSF

JSF will be a better fit if the need is to build a complex web application with lots of user interaction and traffic. JSF is the choice when you want to build desktop-like functionality to the browser within the standard specification and large amounts of third-party features. JSF places heavy emphasis on being able to scale requirements and complexity well. JSF may be too heavy weight for small to medium web applications.

GWT

Google Web Toolkit is an open source a development toolkit for building and optimizing complex browser-based applications. GWT is used by many products at Google, including Google Wave and Google AdWords.

Tapestry5

Tapestry emphasizes simplicity, ease of use, and aims to avoid forcing programmers to create enormous blocks of "glue code", using Convention over Configuration paradigm.

Popularity Analysis

Below is a trend analysis that shows the requirement for major Web Application frame work (source: http://www.indeed.com ) over the last 5 years.

job-trends-stripes-gwt-tapstry

job-trends-struts-spring-jsf

Java Server Face (JSF) is NOT a good fit for all web applications.JSF will be a better fit if the need is to build a complex web application with lots of user interaction and traffic.

JSF can be an over kill for small web applications because of it complexity and learning curve.

Popularity analysis shows that new frame works like GWT, Spring MVC and Struts2 has better industry acceptance than JSF.

Comments