InfoQ

News

Web Beans JSR 299 approved by JCP for further development

Posted by Floyd Marinescu on Jun 07, 2006 10:48 AM

Community
Java
Topics
JCP Standards ,
Web Frameworks
Tags
Shale ,
JBoss Seam ,
Web Beans ,
JBoss
The new Web Beans JSR 299 has been approved by the JCP executive committee for further development.  Web Beans aims to enable EJB 3 session and entity beans to be used as JSF managed beans (known as actions in other frameworks) eliminating the dual layers of web actions and EJB's common in web apps. Instead, EJB's will BE the actions. Web Beans was first submitted to the JCP this past May by JBoss,  with support from Oracle, Sun, Borland, and Google. 

A number of people are calling Web Beans as a standardization of JBoss SEAM. Spec lead Gavin King insists that Seam standardizes some of the best features from a nubmer of frameworks, such as some of the first class constructs for modelling user interactions in use within frameworks like JBoss SEAM, Struts Shale, and Oracle ADF.

Some specifics from the proposal include:
  • Changes to EJB 3 that will be needed for EJB's to act as JSF managed beans.
  • Annotations for manipulating contextual variables in a stateful, contextual, component-based architecture.
  • An enhanced context model including conversational and business process contexts.
  • Extension points to allow the integration of business process management engines.
  • Integration of Java Persistence API extended persistence contexts.
EJB, which began as a framework for distributed transactional components. has typically been used by developers as a transactional services layer, completely divorsed from the web tier.  This JSR recognizes that the majority of developers using EJB are using it to build web applications and will attempt to standardize the binding between web and EJB's, which (among other things) will eliminate the 'glue' presentation logic typical in the presentation tier before calling the services layer. Oracle has been doing this for some time with ADF + JDeveloper, and as does the more recent JBoss SEAM.  

Support for this standard among the executive committee was strong and unanimous.  BEA commented that Web Beans "appears to be a sufficient challenge to achieve, but, in light of the overwhelming support at this stage of the process, we are prepared to see it go ahead."

JSR 299 will be the first JSR ever led by JBoss. The expert group for the JSR will be formed over the next few weeks.
I like it by Tomasz Blachowicz Posted Jun 7, 2006 4:34 PM
  1. Back to top

    I like it

    Jun 7, 2006 4:34 PM by Tomasz Blachowicz

    Great news for the community I believe. Gavin King has a huge impact on JPA and EJB3 specification which are important innovations in Java EE. JCP299 seems to be very interesting and innovative initiative. In my humble opinion this one could be the missing piece in the whole Java EE jigsaw seen from the web perspective. What I like most is that such an approach aims to simplify both design and development of Java EE web applications without loosing its strengths.

Educational Content

Bindings, Platforms, and Innovation

This presentation focuses on the Internet and separating myth from fact, history from the future, and the mundane from the imaginative. Bob Frankston presents a vision of what could and should be.

Orchestrating Long Running Activities with JBoss / JBPM

This article explores the use of JBoss and jBPM to implement design solutions that effectively address the issue of orchestrating long running activities.

Neo4j - The Benefits of Graph Databases

This presentation covers the use of graph databases as an optimal solution for data that is difficult to fit in static tables, rapidly evolving data or data that has a lot of optional attributes.

Realistic about Risk: Software development with Real Options

This session introduces Real Options and shows how it can help in running your project. Real Options is a decision-making process that can be used to manage risk.

Communication Flexibility Using Bindings

This article discusses the use of bindings on services and references (including the instance of non-configured bindings) as the means to implement SCA communications in a Web and SOA environment.

Writing DSLs in Groovy

After a short introduction to DSLs, Scott Davis plays with the keyboard showing how to approach the creation of a DSL by typing working snippets of Groovy code that get executed.

Scaling Agile with C/ALM (Collaborative Application Lifecycle Management)

IBM Rational and InfoQ present, Scaling Agile with C/ALM, an eBook showing organizations how to become “finely tuned software delivery machines” by enabling team integration and scaling.

Concurrent Programming with Microsoft F#

Amanda Laucher presents a real life enterprise application written in F#. She shows actual code snippets, explaining design decisions and suggesting how to use some of the F# constructs.