I’ve been spending some quality time with… Java EE 5 and glassfish. It’s been a while since I had the opportunity (or the need) to play with daily builds. And while I agree with Sahoo that IDEs can bring in too much magic (check out his blog entries, they’re well written), I still decided to take on both Java EE and NetBeans 5.5 (daily builds of course).
EJB3’s are simpler to develop than previous versions. The web is full of articles why, just google. Part of it is the use of annotations and the global configuration-by-exception approach. The use of annotations is something you get used to pretty quickly, especially with code completion (including for table names). The interesting part here is that while this may be the first Java EE version you can develop using vi, there’s still plenty of place for IDE value-add. For instance, NetBeans has this nice Java EE verification set of hints (some of which are from the very good “Do’s and Don’ts for JavaEE Resource Injection” entry). As for all the defaults that come into play, you may want to look at this or that resource for troubleshooting (issues faced mostly when not using an IDE).
GlassFish has a nice responsive forum. This open source Java EE 5 application server has now reached the Milestone 6 stage, aka FCS build. The nice thing about GlassFish is that it implements the full Java EE 5 stack, not just EJB 3. You get resource injection at the web and client tiers and full JAX-WS support. There’s also things like load-on demand, call-flow, nio-based grizzly HTTP, java2db, Apache Derby (now supported by Sun) and the full administration/monitoring features (short demo here).
Get glassfish here.