Context and Dependency Injection (CDI, Kontext- und Abhängigkeitsinjektion) für die Java™ EE-Plattform ist eine Implementierung, die auf der
Spezifikation JSR 299 basiert. Sie können Anwendungen erstellen, die CDI in Ihren
Java EE-Projekten implementieren.
CDI-Anwendungen werden aktiviert, wenn die Datei
beans.xml im Verzeichnis
WEB-INF eines Webarchivs (WAR) oder im Verzeichnis
META-INF anderer Archivtypen vorhanden ist, die in der Spezifikation
JSR 299 definiert sind. Wenn der Container aktiviert ist, stellt er beispielsweise die folgenden Services
bereit:
- Kontextmanagement.
- Typsichere Abhängigkeitsinjektion: Eine CDI-verwaltete Bean wird bei Bedarf
instanziiert und injiziert.
- Decorators, die eine oder mehrere Bean-Schnittstellen implementieren und Geschäftslogik enthalten können.
Decorators sind standardmäßig inaktiviert. Sie können mehrere
Decorators pro Bean haben. Die Reihenfolge wird durch die Beans definiert.
- Interceptor-Bindings. Interceptors, die manuell in der Datei
beans.xml aktiviert werden, werden mit einem Interceptor-Binding-Typ
gebunden.
- Ereignismodell.
- Integration in JSF- (JavaServer Faces) und JSP-Dateien (JavaServer Pages)
unter Verwendung der Ausdruckssprache (Expression Language, EL).
Weitere Informationen zu den CDI-Annotationen finden Sie unter
Package javax.inject
und Package javax.enterprise.context .
Weitere Informationen zur Verwendung von CDI in WebSphere Application Server finden Sie unter
Contexts and Dependency Injection (CDI).