Nowadays there are a lot of web frameworks for Java web development, and for developers like us it means more to read in order choose the right framework, and then integrate all these pieces together.
E.g. for web application framework there are Spring, Struts, Tapestry, JSF, etc. For O/R database mapping there are Hibernate, OJB, iBatis, or JPA.
Often that we need to study all these frameworks, and then choose the right pieces and glue them together.
Luckily now there are some open source generators available which make it easy to integrate all the tools together.
AppFuse is an open source project and application that uses open source tools built on the Java platform to help you develop Web applications quickly and efficiently. The current version 2.0 supports Maven, which is my favorite build tool. Developer can choose Struts 2, Spring, Tapestry or JPA as the web framework, and Hibernate, iBatis or JPA as the persistence layer.
JAG is an application that creates complete, working J2EE applications. It has a pluggable service tier: ServiceLocator or Spring Framework, and pluggable business/persistence tier: EJB2/3 or Hibernate 2/3. However, it looks like it is not under active development. The last update is May 2006.
Personally I have tried both of these, and currently I am using AppFuse 2.0
You have any other tools to recommend ?