How can i choose a J2EE framework?
What shall i use, Struts, JSF, Sofia, Spring....etc i want to take a decision.
In this article we hope to give you the advice in this situation. Also show the advantages and disadvantages of each framework through members experience.
Now, we want to compare between the different J2EE framework to make it clear for you.
| |[Struts|http://struts.apache.org/]| [JSF|http://java.sun.com/j2ee/javaserverfaces/]| [Sofia|http://salmonllc.com/website/Jsp/vanity/Sofia.jsp]| [WebWork|http://sourceforge.net/projects/webwork/]| [Spring|http://www.springframework.org/]
|Tiles Support|Yes|Yes|No|
|Validation Support|Yes|Yes|No|
|OpenSource|Yes|Yes|Yes|
|User Controls|No|Many|Many|
|HTML Tags|Yes |Yes | Yes|
|Bean Tags|Yes |Yes | Yes|
|Form Field Validation |Yes |Yes | |
|Event handeling|No|Yes|Yes|No|No
|License|[Apache license|http://www.apache.org/licenses/LICENSE-2.0.html] |[Apache license |http://www.apache.org/licenses/LICENSE-2.0.html]|GNU GPL ||[Apache license |http://www.apache.org/licenses/LICENSE-2.0.html]
Supported IDE's
| |[Struts|http://struts.apache.org/]| [JSF|http://java.sun.com/j2ee/javaserverfaces/]| [Sofia|http://salmonllc.com/website/Jsp/vanity/Sofia.jsp]| [WebWork|http://sourceforge.net/projects/webwork/]| [Spring|http://www.springframework.org/]
|BEA Workshop| Yes|Yes|No|No|No
|Eclipse|Yes|Yes|Yes|No|Yes
|IntelliJ|[Yes|http://plugins.intellij.net/plugins/view/?id=Struts%20Plugin]|No|Yes|No|No
|Dreamwaver Integration| No |No| Yes|No|No
|NetBeans IDE 5.0|Yes |Yes|No|No|No
|JBuilder Enterprise|Yes|Yes|No|No|NO
|JDeveloper|Yes|Yes|No|No|No
__How can I decide?__
*Frist, you should know what do you really need from the framework, do you need Action based framework or event based, do you need ORM?
*Take care about the learning and experience, when you work with a framework in a project ask yourself, Do I have the experience, Is our team contain an expert in this framework? How can I learn it?
__Resources__
*[IBM:JSF conversion and validation|http://www-128.ibm.com/developerworks/java/library/j-jsf3/]
*[Comparing Web Frameworks|https://equinox.dev.java.net/framework-comparison/WebFrameworks.pdf]
*[IntelliJ Idea|http://plugins.intellij.net/plugins/]
*[NetBeans 5 |http://www.netbeans.org/community/releases/50/]
*[Oracle JDeveloper|http://www.oracle.com]
*[JBuilder Enterprise 2006| http://www.borland.com/us/products/jbuilder/index.html]
*[IntelliJ Idea Features |http://www.jetbrains.com/idea/features/newfeatures.html]
*[MyEclipse|http://www.myeclipseide.com/]
*[Sofia & InteliJ|http://www.salmonllc.com/website/Jsp/vanity/Sofia.jsp]