Wednesday, April 04, 2007

Pruning: How deprecation in Java EE will happen

Back when the Java EE 5 specification was developed, I was wondering if application server vendors were required to support both the old-style beans and the new-style beans. Well, it turned out that they should support both, which I also think was kind of essential for all the upgrading customers with legacy applications. But for new-comers to Java EE, there is a huge legacy of old APIs, which in Java EE 5 was replaced with lightweight versions that are easier to use.

Now, in the new JSR 313 for Java EE 6, there is a proposal for something called "Pruning". An Umbrella Expert Group shall look at and decide which parts of the specification, that are to be deemed ready for pruning. This will then be noted in the current specification. The Umbrella Export Group for the next release of the Java EE specification will then decide, if the--by the former specification named--features shall be marked as "optional" in that specification. If a feature is marked "optional", the vendors are free to not include it in their products.

The specification currently under development for Java EE 6 will consider technologies, which can be marked as optional in the future Java EE 7 specification. Features already mentioned are "EJB CMP" and "JAX-RPC".

With Java EE 6 targeted for 2008 and who knows when for the Java EE 7 specification, the old "EJB CMP" specifications will definitely be with us for a long time.

No comments: