Recently the Java Community Process (JCP) reached a significant milestone when they approved the specification for the next generation of Enterprise Java; JSR 316: JavaTM Platform, Enterprise Edition 6 (Java EE 6). We believe that the approval of this specification starts a new chapter in the story of Java. We are proud to have contributed and acted in a leadership role in the formation of this standard which aims to make enterprise Java easier to use and more appealing to more developers, while still maintaining the benefits of open standards. Specifically, we support the new Web Profile and have led in the creation of two key features and reference implementations that will be included in the Java EE 6 platform; JSR 299: Contexts and Dependency Injection for Java EE, and JSR 303: Bean Validation.

The JCP is how the Java community collaborates in driving the future of the Java platform and it is based on Java Specification Requests (JSRs) which are proposed additions to the Java platform. The adoption of both JSR 299 and 303 provide an opportunity to reiterate Red Hat’s leadership position and objective within the JCP–to simplify Java EE in order to make it more broadly appealing, allowing developers to benefit from a simple and standardized enterprise programming model. We’ve done this previously with Hibernate and Java EE 5 by reducing historical complexities associated with Enterprise Java Beans (EJBs) and persistence. Our work with Java EE 6 builds upon our previous work to help Java reach a greater level of simplification and adoption

The inclusion of JSR 299 in the Java EE platform itself stems from the power and productivity benefits offered by the JBoss Seam Framework. For several years, JBoss Seam Framework has allowed our customers to build next generation Web 2.0 applications by unifying and integrating technologies such as Asynchronous JavaScript and XML (AJAX), Java Server Faces (JSF), Enterprise Java Beans (EJBs), Java Portlets and Business Process Management (BPM). Through Red Hat’s leadership these concepts were standardized via JSR 299 which will lead to a simpler programming model for web-based Java applications. The reference implementation of JSR 299 is called Weld.

The other specification that Red Hat led is JSR 303: Bean Validation. This is an important specification that simplifies how data is validated across presentation, business and data access tiers of an Enterprise Java application. JSR 303 represents a significant inclusion because enterprise customers often struggle with poor data quality, inconsistencies and additional maintenance burdens. JSR 303 aims to solve this common business problem through the reference implementation called, Hibernate Validator 4.

Additionally, Red Hat became early adopters of the Java EE Web Profile, which is included in the Java EE 6 platform in order to better address the needs of modern application development. The Java EE Web Profile is a subset of Enterprise Edition with a specific focus on the needs of web application developers. It provides the same portability and vendor choice as Java EE but presents a smaller learning curve for those new to the Java platform.

Red Hat’s community project, JBoss Application Server 6, is intended to be our target for implementing these Java EE 6 features and more, you can download it here. JBoss AS 6 will form the basis of our commercially supported Java application servers in the future: JBoss Enterprise Application Platform and JBoss Enterprise Web Platform. The enhanced APIs and new technologies are designed to simplify the Java development and improve portability of Java EE applications.

We are happy to have helped lead these features within the JCP. You can learn more about Java EE 6 through these Q&A sessions with some of our lead developers, or check out a video blog of one of our lead developers discussing JSR 299.

Congratulations to the Java Community!