For those who know Struts, it might be interesting to have a look also at the HyperQbs framework.
About HyperQbs framework
HyperQbs is an open servlet framework for rapid application development of enterprise-scale Web applications based on visual components for the Java 2 platform. HyperQbs encourages application architectures based on the Model-View-Controller (MVC) designs paradigm and complies with the JavaServer Faces (JSR-127) design goals.
HyperQbs increases productivity and allows teamwork, fast prototyping, and incremental life-cycle development from reusable plug-in components. HyperQbs provides support for any J2EE and XML-based application server and development environment. The Configurable Application Flow (CAF) rule engine enables tailor-made component assembly without touching a single line of the component's source code, while the "dynamic face" effect makes your Web application independent of any user interface protocol.