Sun has posted the second draft of
Java Specification Request 220, Enterprise JavaBeans 3.0.
This is now divided into two specs, one for the simplified API and one for the persistence API.
According to the overview of the simplified spec, "The EJB 3.0 release of the Enterprise JavaBeans architecture provides a new, simplified API for the
enterprise application developer. This API is targeted at ease of development and is a simplification of
the APIs defined by earlier versions of the EJB specification. The existing EJB 2.1 APIs remain available
for use in applications that require them and components written to those APIs may be used in conjunction
with components written to the new EJB 3.0 APIs." Quoting from section 1.2:

EJB 3.0 is focused on the following goals:

Definition of the Java language metadata annotations that can be used to annotate EJB applications.

These metadata annotations are targeted at simplifying the developer’s task, at reducing the number of program artifacts the developer is required to provide, and at eliminating the need for the developer to provide an EJB deployment descriptor.

Specification of programmatic defaults, including for metadata, to reduce the need for the developer to specify common, expected behaviors and requirements on the EJB container. A “configuration by exception” approach is taken whenever possible.

Encapsulation of environmental dependencies and JNDI access through the use of annotations, dependency injection mechanisms, and simple lookup mechanisms.

Simplification of the enterprise bean types. Enterprise beans are simplified to more closely resemble plain Java objects (“POJOs”) or JavaBeans.

Elimination of the requirement for EJB component interfaces for session beans and entity beans. The required business interface for a session bean can be a plain Java interface, not an EJBObject, EJBLocalObject, or java.rmi.Remote interface. No interfaces are required for entity beans written to the new persistence API [2].

Elimination of the requirement for home interfaces.

Simplification of entity bean persistence. Support for light-weight domain modeling, including inheritance and polymorphism.