Java Web Framework Comparison

Matt Raible broke down 6 of the more popular Java Web frameworks. Noticeably absent from this list are two of the more recent (and buzz-worthy) frameworks; Grails and Google Web Toolkit. The following is a brief list of Raible’s Pros and cons for each framework:

Framework Pros Cons
Java Server Faces (JSF) Java EE standard. Tag soup for JSP’s
Lots of component libraries Doesn’t play well with REST or Security
Fast and easy to develop with initially No single source for implementation
Spring MVC Lifecycle for overriding binding, validation Configuration intensive
Integrates with many view options (Velocity, tiles, etc) Almost too flexible. No common Parent Controller.
Inversion of control makes it easy to test No built in AJAX support
Struts 2 Simple architecture Docs are poorly organized
Tab libs are easy to customize with Velocity Too much concentration on new features
Controller-based or page based navigation Googling results often returns Struts 1.x docs
Tapestry Very productive once you learn it. Docs are very conceptual
Templates are HTML – good for designers Steep learning curve
Lots of innovation b/w releases Longer release cycles – major releases every few years
Stripes No XML – Convention over Config. Small community
Good docs Not as actively developed
Enthusiastic community Hard-coded URL’s in ActionBeans
Wicket Great for Java developers HTML templates live right next to your Java code
Tight binding b/w pg’s and views Need to have a good grasp of OO. Lot’s of anonymous inner classes.
Active Community The wicket way. Everything done in Java

Checkout the entire Smackdown!.

Print Friendly

Leave a Reply