Wednesday, November 18, 2009

Java EE 6 coming soon

Attended a presentation on Java EE 6 at NYJavaSIG by Alexis Roos & Eric Bruno.

JSR 316: Java EE 6 Specification is up for final approval ballot and should be finalized by end of this month. Java EE 6 looks very promising & exciting; it's main features are pruning and profiles.

Pruning will be remove APIs which are no longer relevant/supported/useful/popular. This implies that the pruned APIs need need not be supported by application server vendors. For example, EJB 2.x Entity Beans CMP have been axed in favor of the lighter and simpler POJO based JPA persistence model introduced as part of EJB 3 in Java EE 5. Similarly, the enhanced & more robust, feature-rich and popular JAX-WS API supercedes JAX-RPC for Web Services.

Profiles allow users to take only the components they want instead of being forced to take the whole stack. This reduces the footprint & the costs. Currently only two profiles are included - Web Profile & Full Profile. However, there is scope for creating custom profiles as well.

There are major changes to GlassFish - it is now lighter and comes up faster. It now also supports redeployment with session retention - this is a huge plus for testing/debugging complex applications.

A new glue layer called Web Beans 1.0 has been introduced which will intergrate the persistence & web layers. The persistance layers (EJB 3.0, JTA, JCA and JPA) and the presentation layers (Servlets, JSP and JSF) were segregated and featured no closed interaction. This gap has been filled with Web Beans 1.0 which are designed to be compatible with both the tiers. The Web Beans have been equipped with beans that could interact with multiple tiers and are influenced by the popular frameworks JBoss Seam and Google Guice.

Apart from these major changes, there are a lot of small things that I liked:
  • EJB 3.1 now supports CRON like scheduling from inside the container
  • EJB 3.1 now do not require business interfaces to be created - developers can now write session beans without business interfaces
  • War structure has been simplified and EJB components can be packaged directly in a WAR file instead of creating an intermediate JAR file
  • EJB Lite has been introduced as a lighter & simpler version of EJB - supports only Session Beans & JPA
  • Servlets 3.0 introduces annotations such as such as @WebServlet, @ServletFilter, etc. to reduce web.xml configuration
  • Servlets now support Asynchronous processing to support AJAX calls
  • JSF 2.0 has major enhancements and new features like request processing lifecycle is now AJAX-aware, bookmarkable JSF pages and a mechanism to easily access persistent store
  • Very good support for REST programming through JAX-RS
  • Better support for AJAX

Check out the Release Notes and the good Tutorial for Java EE 6.

1 comment:

allan Gering said...

Java EE 6 will be the next edition of the enterprise platform that powers quite a lot of (web) applications.Java EE itself consists out of a lot of sub specifications, with JSF (web) and EJB (business) being major parts of that. New for this release will be Webbeans, a specification that integrates JSF and EJB more tightly than was possible before.
Hannah Montanah Games


Related Posts Plugin for WordPress, Blogger...