Powered By Blogger

Thursday, December 10, 2009

Advent of EE6

Finally after a much anticipated period of time by the java developers across the world Sun Microsystem has finally launched Java EE6 with EJB 3.1 and numerous changes which i myself have to go through yet . the most astonishing feature of the EE6 is the ability to deploy the EJB's in a War file itself seems like those days when a programmer has to prepare a complete ejb-jar.xml for getting their EJB's to take on the container are over now and soon will be forgotten but somehow i still miss the flexibility offerred by the EJB 2.0 Deployment descriptor and have been using it through the 3.0 architecture also lets see how much support sun has provided for the EJB this time here is a sneak preview of the features of the EE 6 technology


here is a snippet from the Sun Microsystem's Official website

Java EE 6 Technologies
  Technologies
JSR
Download
Java Platform, Enterprise Edition 6 (Java EE 6)
JSR 316
Download spec

Web Services Technologies   » Read more

Java API for RESTful Web Services (JAX-RS) 1.1
JSR 311
Download spec

Implementing Enterprise Web Services 1.3
JSR 109
Download spec

Java API for XML-Based Web Services (JAX-WS) 2.2
JSR 224
Download spec

Java Architecture for XML Binding (JAXB) 2.2
JSR 222
Download spec

Web Services Metadata for the Java Platform
JSR 181
Download spec

Java API for XML-Based RPC (JAX-RPC) 1.1
JSR 101
Download spec

Java APIs for XML Messaging 1.3
JSR 67
Download spec

Java API for XML Registries (JAXR) 1.0
JSR 93
Download spec

Web Application Technologies   » Read more

Java Servlet 3.0
JSR 315
Download spec

JavaServer Faces 2.0
JSR 314
Download spec

JavaServer Pages 2.2/Expression Language 1.1
JSR 245
Download spec

A Standard Tag Library for JavaServer Pages (JSTL) 1.2
JSR 52
Download spec

Debugging Support for Other Languages 1.0
JSR 45
Download spec

Enterprise Application Technologies   » Read more

Contexts and Dependency Injection for Java (Web Beans 1.0)
JSR 299
Download spec

Bean Validation 1.0
JSR 303
Download spec

Enterprise JavaBeans 3.1
JSR 318
Download spec

Java EE Connector Architecture 1.6
JSR 322
Download spec

Java Persistence 2.0
JSR 317
Download spec

Common Annotations for the Java Platform 1.1
JSR 250
Download spec

Java Message Service API 1.1
JSR 914
Download spec

Java Transaction API (JTA) 1.1
JSR 907
Download spec

JavaMail 1.4
JSR 919
Download spec

Management and Security Technologies   » Read more

Java Authentication Service Provider Interface for Containers
JSR 196
Download spec

Java Authorization Contract for Containers 1.3
JSR 115
Download spec

Java EE Application Deployment 1.2
JSR 88
Download spec

J2EE Management 1.1
JSR 77
Download spec

Java EE-related Specs in Java SE

Java API for XML Processing (JAXP) 1.3
JSR 206
Download spec

Java Database Connectivity 4.0
JSR 221
Download spec

Java Management Extensions (JMX) 2.0
JSR 255
Download spec

JavaBeans Activation Framework (JAF) 1.1
JSR 925
Download spec

Streaming API for XML (StAX) 1.0
JSR 173
Download spec




Introduction

Enterprise Java Beans (EJB) is a server-side component architecture for the Java Enterprise Edition (Java EE) platform, aiming to enable rapid and simplified development for distributed, transactional, secure and portable applications.
EJB experienced wide adoption in its version 2, reaching a level of maturity which made it capable to embrace the requirements of many enterprise applications. Despite its relative success, there were many critical voices accusing it of being overcomplicated. Lack of a good persistence strategy, long and tedious deployment descriptors, or limited capacity for testing, were some of the many times used arguments, causing a considerable number of developers to look for alternative technologies.
Sun reacted slowly, but it was able to come up with a greatly revised version of the specification, which has considerably enhanced its potential. EJB 3 dealt with most of the existing drawbacks, presenting solutions which got consensual acceptance among the community. EJB became a viable solution again, and many teams which had once put it aside are now using it.
Even though its success, EJB 3 did not go as far as it could. Going back to EJB 2.1, the spec was facing two main challenges: 1) to go through a massive restructuring in order to change existing features, like a powerful persistence framework as a substitute for Entity Beans, support for annotations as a substitute for deployment descriptors, drop of home interfaces, etc; 2) to introduce new solutions for problems not being dealt by the spec like support for Singletons, support for method interception or asynchronous calls to session beans, and to improve existing features like enhancing the Timer Service. Priority was correctly given to the restructuring- "we fist clean and rearrange the house, and only then we bring the new furniture"- even though there were some new features as well, like the support for interceptors. Now that the cleaning is done, it is time to benefit from it and to go one step beyond.
EJB 3.1 introduces a new set of features which intends to leverage the potential of the technology. It is, in my opinion, a release of major importance, which brings capabilities which were most wanted since long ago, making it more able to fulfill the needs of modern enterprise applications, and contributing for an increased adoption.
The EJB 3.1 Proposed Final Draft has been recently released and we are now close to its final version. This article will go through most of the new features, providing a detailed overview about each one of them.

No comments: