Dependency Injection in Java EE 6 - finale Verabschiedung verschiebt sich

Die finale Spezifikation für das nächste Enterprise-Java verschiebt sich wohl auf den November 2009, da die Expert Group jetzt auch den neuen Dependency-Injection-JSR mit aufnehmen möchte.

In Pocket speichern vorlesen Druckansicht 25 Kommentare lesen
Lesezeit: 2 Min.
Von
  • Alexander Neumann

Der Zeitplan für die die finale Veröffentlichung der Java Enterprise Edition (Java EE) 6 verschiebt sich ein wenig nach hinten. Der Grund dafür liegt in der Entscheidung der Expert Group für die Enterprise-Java-Spezifikation, noch kleine Änderungen im Java Specification Request (JSR 299) – Contexts and Dependency Injection – vorzunehmen und vor allem den erst kürzlich in den Java Community Process (JCP) eingebrachten JSR 330 – Dependency Injection for Java – mit in die Java EE aufzunehmen.

Release-Manager Roberto Chinnici geht aber davon aus, dass die Verzögerung nur gering ausfällt, da die JSR 330 Expert Group ihm versichert habe, dass sie ihren Beitrag schnellstmöglich durch den Prozess bringen werde. Zuletzt noch für September 2009 geplant, visiert Chinnici nun den November als neuen Veröffentlichungstermin an.

Der JSR 299 war initialisiert worden, die innovativen Konzepte des JBoss-Seam-Projekts in die Java EE zu integrieren. Seam integriert unterschiedliche Ansätze wie Ajax, JavaServer Faces (JSF), Enterprise JavaBeans (EJB) und Java-Portlets in ein Programmiermodell, das sich an EJB 3.0 orientiert. Im Januar war der JSR umbenannt worden, zuvor lief er unter dem Namen Web Beans. Der Umbenennung folgte das Ziel, nicht mehr ein neues Komponentenmodell zu erstellen, sondern Services zu definieren, die alle Enterprise-Java-Komponententypen abdecken. Die jetzt vorzunehmenden Änderungen betreffen die Anforderung, dass der JSR 299 auch die Annotations des JSR 330 verwenden können soll.

Den JSR 330 hatten Google und SpringSource gemeinsam eingebracht, die beide ein Java-basiertes "Dependency Injection"-Framework am Start haben: Google mit Guice, SpringSource mit dem Spring Framework. Dependecy Injection (DI) ist ein Pattern, das sich dem Problem widmet, dass in großen Anwendungen zu viele direkte Abhängigkeiten zwischen Objekten bestehen. Es setzt auf dem Prinzip "Inversion of Control" (IoC) auf, geht aber nur auf das Erzeugen und Initialisieren von Objekten ein. Die Funktionen bleiben trotz der Kontrollumkehr als Einfügung enthalten. Mit DI ist es möglich, einfach Abhängigkeiten zu erkennen. Zum jetzigen Zeitpunkt befindet sich der JSR 330 im Early-Draft-Status und soll in weiteren Schritten die Anforderungen des JSR 299 berücksichtigen können.

Siehe dazu auch:

(ane)