Java EE 8 ready

Apache OpenWebBeans 2.0.0 erschienen: CDI 2.0 mit an Bord

Hartmut Schlosser

Das Apache-Projekt OpenWebBeans ist in der Version 2.0.0 erschienen. Der CDI Container setzt zum ersten Mal auf die neue Version 2.0 der Contexts-and-Dependency-Injection-Spezifikation für Java EE 8 auf.

Im Rahmen des Apache OpenWebBeans-Projekts wird an einer Implementierung des Context-and Dependency-Injection-Standards (CDI) gearbeitet. Mit der Umsetzung der für Java EE 8 vorgesehenen CDI-Spezifikation 2.0 (JSR-365) stellt das Projekt eine Alternative für die CDI-Referenzimplementierung Weld 3.0.0 bereit. Weld 3.0.0 war bereits im Mai 2017 erschienen.

OpenWebBeans 2.0.0 ist modular aufgebaut und kann sowohl in Java SE, innerhalb eines Servlet-Containers wie Tomcat oder als eigenständiger Java-EE-Container genutzt werden. Die Core-Komponente ist mit 500Kb sehr klein und zielt darauf ab, die volle Java-EE-Kompatibilität auch für kleinere „Micro-Lösungen“ bereit zu stellen.

Diesem Zweck dient auch die Server-Lösung Meecrowave, die vor kurzem in der Version 1.0 erschienen ist. Meecrowave besteht aus den folgenden Apache-Projekten:

  • Apache Tomcat (Servlets)
  • Apache OpenWebBeans (CDI)
  • Apache Johnzon (JSON-P und JSON-B)
  • Apache CXF (JAX-RS).

Die Kombination dieser Projekte soll sich insbesondere für Microservices-Anwendungen anbieten.

Geplant ist nun die Integration von OpenWebBeans-2.0.x in eines der nächsten Apache-Meecrowave-Releases. Auch das Apache TomEE 8.x-Projekt soll demnächst aktualisiert werden und Unterstützung für OpenWebBeans 2.0.0 anbieten.

Die Distributionspackages für OpenWebBeans 2.0.0 können via Maven oder unter https://www.apache.org/dyn/closer.lua/openwebbeans/2.0.0/ bezogen werden.

CDI 2.0 in Java EE 8

CDI 2.0 gilt als eines der Kernstücke für das kommende Java EE 8 Release. Es ist eines der wenigen APIs, die mit einem signifikanten Update aufwarten. Neben der Unterstützung für die Neuerungen aus Java 8 wie Lambda-Ausdrücke und Streams werden in CDI 2.0 asynchrone Events eingeführt. Die Asynchronität von Events lässt sich mit der neuen Methode fireAsync() und der Annotation @ObservesAsync bestimmen.

Ebenfalls neu ist, dass sich CDI 2.0 auch im Java-SE-Kontext nutzen lässt. Mehr zum Thema CDI 2.0 lesen Sie in der Kolumne EnterpriseTales von Lars Röwekamp und Arne Limburg: Version 2.0 der CDI Specification auch in Java SE nutzbar.

Mehr zum Thema:

Java EE 8: Finaler Entwurf ist da – das sind die Highlights

Verwandte Themen:

Geschrieben von
Hartmut Schlosser
Hartmut Schlosser
Hartmut Schlosser ist Redakteur und Online-Koordinator bei Software & Support Media. Seine Spezialgebiete liegen bei Java-Enterprise-Technologien, JavaFX, Eclipse und DevOps. Vor seiner Tätigkeit bei S & S Media studierte er Musik, Informatik, französische Philologie und Ethnologie.
Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.