Folks get ready to savor the brand new flavor of coffee – Java EE 6 (JSR 316). The new specification for Java Platform Enterprise Edition is now ready and it promises some very exciting new features. Following is an overview of some of the proposed changes in Java EE specifications.
Profiles (Making Java EE lean and mean)
An application loaded with features is a delight but increase in complexity is a hassle. The platform has become pretty huge and complex and we don’t need all the functionalities all the time. So the concept of profiles has been introduced.
Profiles are designed to break the platform in relevant modules. The new specification includes only Web Profile later there will be separate JSR for different profiles. The Web Profile instead of having complete Java EE stack will only have APIs relevant to most web applications like Servlets, JSP, JSF, EJB Lite etc., APIs like Java Mail, JAX-WS, JAX-RS, JAXB will not be included in Web Profile.
Pruning (Getting rid of outdated APIs)
Lots of APIs in the platform have become irrelevant because either they are not well deployed or some new APIs have replaced them. So in Java EE 6 some of these APIs will be removed. The APIs marked for removals in new specification are JAX-RPC, EJB 2.x Entity Beans CMP, JAXR.
New versions of EJB, Servlet, JPA.
Things are bound to get better and better. The platform will have new versions of EJB,Servlet and JPA APIs.
EJB 3.1 (EJB 3 Reloaded)
Version 5 made us forget about dark days of EJB 2.x by introducing EJB 3. Java EE 6 will have an enhanced version of EJB which will further simplify the Business Component Development model. Some of the features of EJB 3.1 are.
EJB 3.1 Lite has been introduced in Version 6 which is aimed at Web Profile. EJB 3.1 Lite will have features like transaction & security but will not have advanced features like remoting, scheduling & messaging.
Business interfaces will be optional for Session Beans.
EJB 3.1 will support cron-style scheduling.
Servlet 3.0 (Finally Servlets will also enter into @notaion World)
We have been using Servlets for a long time now. Servlets API is a mature and powerful API. Version 6 will make Servlet API more dynamic by introducing annotations like @WebServlet, @ServletFilter and @WebServletContextListener and also Servlet 3.0 will allow to programmatically add Servlets, Filters and Listeners through the ServletContext.
JPA 2.0 (Persistence gets better)
JPA 2.0 will enhance the power of JPA 1.0 by providing following new features.
JPA 2.0 will have @ElementCollection annotation which will allow using collections, maps and lists that do not represent entity relationships.
JPA 2.0 will allow unidirectional one-to-many relationships.
JPA 2.0 will add a Criteria API similar to Criteria API in Hibernate.
Apart from the above mentioned features there are some other features which will be introduced in Version 6 like Web Beans 1.0, JAX-RS 1.1, JSF 2.0, EJB Lite etc.
Dave Holland is the CEO of Deeho Ltd, a Search Engine Optimization consultancy working with Microsoft training, experts who will save you a lot of money.