Sunday Dec 19, 2010

It's time to start talking about Java EE 7

Java EE Seven

Update: a Java EE 7 discussion with Roberto Chinnici was posted on the GlassFish Podcast.

It's been one year since Java EE 6 was released (December 2009) and it's now time to start talking about Java EE 7. In fact at JavaOne San Francisco in September, at Devoxx in November and at JavaOne Sao Paulo and Beijing in December, the technical keynotes have gradually introduced what Oracle would like to see addressed in this release. In particular, I would recommend this replay of "The Future Roadmap of Java EE" (subscription required).

The theme for Java EE 7 is "The Cloud" and to be a "little" bit more precise, we're talking about multi-tenancy, application versioning, support for NRDBMS stores but also about modularity, trying to leverage what will be done at the JavaSE level. Of all the APIs up for a new version, JAX-RS and JPA seem to be the closest to being filed as JSRs.

The JAX-RS 2.0 draft JSR mentions a client API, MVC support, asynch support (inspired by Atmosphere), hypermedia support, better integration with @Inject/CDI, and more. Paul Sandoz has his slide decks from Devoxx available here. JPA 2.1 has a long list of potential enhancements, ranging from dynamic definition of PU, more control on persistence context synchronization, mapping between JPQL and criteria queries and much more.

You can also expect a Servlet alignment with the current state of HTML5 and WebSockets, a JSF 2.2 version (HTML5, file upload component, ...), some work on EJB 3.2, a modernization of the JMS API (finally!), and maybe something around a caching API. Of course, all it's still early days and a lot can change once the expert groups form and get to work. Nevertheless, there is a lot to be excited about!