Linda de Michiel, EJB 3 spec lead, just finished her presentation of
the EJB 3 work at TheServerSide symposium.  The Experts Group has
been very busy these past nine months and considering the enthusiastic
response of the audience, it’s been time well spent.  Here are the
salient points of the new specification.

The focus of EJB 3 is ease of development.  Session and
Message-Driven Beans will also benefit from this simplification, but I
think the most interesting developments are for Entity CMP beans. 
EJB3 has learned a lot from the previous version and is taking ideas
introduced in Hibernate and other persistence framework to come up with
a brand new programming model featuring:

  • POJO-based (no more abstract methods, support of new)
  • Simplification of the design (now optional:  homes,
    component interfaces, lifecycle methods, no more EJBLocalObject, etc…)
  • Use of injection to make it easier to test outside the container
  • Use JSR 175 annotations instead of deployment descriptors
  • Support for disconnected access
  • Many EJB QL enhancements (bulk updates, etc…) as well as
    support for native SQL
  • A standard O-R mapping

I am positively thrilled by the direction EJB3 is headed.  The
Experts Group has been extraordinarily active these past nine months
and the activity on the phone calls and on the mailing-list is a
testament to the commitment of the 20+ members to this task.  Of
course, there are still quite a few undecided issues, but the major
items are pretty much agreed upon at this time.

I think EJB3 has the potential to solve the problem of persisting Java
objects to relational databases once and for all.  It took a while
and a lot of errors, but we are finally getting there.

The EJB 3.0 BOF session tomorrow night will be a great opportunity for
us to hear more feedback from the community.