After trying out the Visual WebPack (it is really amazing, but a little bit proprietary), I was curious about the Netbeans EJB 3 and especially JPA support. My conclusion is:
- The Netbeans 5.5 support for Java EE 5, especially Servlets, JSPs, Filters etc is really good. I like especially the "lean" support without multipage wizards. You can edit the web.xml in XML editor or use a visual, but pragmatic, editor. Servlet/JSP deployment, debugging works very good. The HTTP-Monitor is nice for debugging purposes.
- I tried the deployment with Glassfish V2 and JBoss. Both servers worked great.
- The support for EJB 3 Session Beans is also great. Especially the synchronization between the methods in a SessionBean class and the Remote/Local interface works good as well as deployment, debugging and testing. What I really like: I didn't found (until now) any proprietary extensions - the EJB 3 code remains clean.
- The JPA support is very good. You can generate a JPA-Entity from an existing database with all relations. Or, even better, you can develop an entity and map it to an existing table afterwards. NetBeans checks the column mapping / table mapping for you. With strg+space NB suggests the column and table names. It is similar to Eclipse's Dali but is more stable and worked well without any inconsistencies (Dali has still some issues regarding the generation of DDL and code-completion).
- The database-exlorer is very useful, especially during the development and testing the JPA layer.
- The Server-View is also useful - deployed WARs and EARs with contents are visible.
You should at least try NetBeans 5.5. together with Glassfish at the beginning of every Java EE 5 Project.