for me I will answer this question based on my experience.
so if I'm gonna start new project I will use the following technologies:
-
AndroMDA as MDA framework.
- Spring (DI, Interceptors, Quartz, ACEGI, ... etc).
- Hibernate.
- JSF.
off course you might need to play with some helper frameworks/libraries such as:
- Velocity.
- CAS; if you need SSO.
- JXLs; if you need small and easy library for generating Excel files using XLS templates.
- Drools; which is Artificial Intelligence a Rule Engine that uses the Rule Based approached to implement an Expert System and is more correctly classified as a Production Rule System.
in terms of testing I will consider the following frameworks:
- TestNG; you may want to use JUnit in the part of Unit Testing but TestNG is more than a unite testing framework;
- WATIR or SELENIUM as web testing;
Can anybody else suggest other options?
Here are just a few answers to your question that can be found on StackOverflow.
- Best Java framework?
- What is the most commonly used Java web framework?
- Best java mvc framework implementation for web apps
- What are the best MVC web frameworks on the market?
- What are the best Java social networking frameworks?
- Best server-side framework for heavy AJAX Java application
- What Web Application Framework for Java is Recommended?
- Java Validation Frameworks
- Validation Framework in Java
- Java 2D Game Frameworks
- What are good docking frameworks for Java/Swing?
- Which framework should I choose - Seam, Wicket, JSF or GWT?
- Java Frameworks War: Spring and Hibernate
- Recommended framework for Java Web Services
- Java Desktop application framework
- Alternate Java GUI Frameworks
- What’s the best mock framework for Java?
- Java configuration framework
You can do this search yourself via Google