JBoss has submitted "Web Beans"
to the JCP, with support from Oracle, Sun, Borland, and Google. 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.
In addition, the JSR will standardize some of the first class constructs for modelling user interactions in use within frameworks like JBoss SEAM, Struts Shale, and Oracle ADF. Gavin King will be the spec lead.
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.
- Exentsion 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