VRaptor is a Model-View-Controller web application framework that tries to implement the best features from the following state of art MVC frameworks: WebWork 2, Spring Framework and Struts. It is highly focused on the Inversion of Control principles, using the Constructor Injection philosophy brought by the PicoContainer.
This framework uses a more imperative approach, instead of having lots of xml files to configure lifecycle and other properties. Most of the settings go inside plain Java objects, so the team knows exactly what is going on, and where. A big effort is done to avoid too much magic .