I've just submitted a revised PFD[1] of JSR-299 (now named Contexts and Dependency Injection for the Java EE platform) to the JCP. There are four notable changes in this revision:
- re-use of dependency injection annotations defined by JSR-330
- replacement of the notion of deployment types with the new @Alternative declaration
- removal of the ability to dynamically register event observers
- constructor injection for EJB session beans
The biggest change from a user point of view is that the @Inject annotation is now used to declare bean constructors, initializer methods and injected fields.
I would like to thank Mike Keith from Oracle for his work on alignment of JSR-330 with JSR-299.
Work on the 299 RI and TCK is moving extremely rapidly, and we hope to have a release of the RI that implements PFD2 in a couple of weeks. And before the end of the year you guys should see the release of the at least two application servers with built-in support for 299. (The first application server with built-in support for 299, Resin 4, is already available.)