Top-Fragen
Zeitleiste
Chat
Kontext

Jakarta EE

Spezifikation einer Softwarearchitektur Aus Wikipedia, der freien Enzyklopädie

Remove ads
Remove ads

Jakarta EE, früher Java Platform, Enterprise Edition (Java EE), ist die Spezifikation einer Softwarearchitektur für die transaktionsbasierte Ausführung von in Java programmierten Anwendungen und insbesondere Webanwendungen. Sie ist eine der großen Plattformen, die um den Middleware-Markt kämpfen. Größter Konkurrent ist dabei die .NET-Plattform von Microsoft.

In der Spezifikation werden Softwarekomponenten und Dienste definiert, die hauptsächlich in der Programmiersprache Java erstellt werden. Die Spezifikation dient dazu, einen allgemein akzeptierten Rahmen zur Verfügung zu stellen, um auf dessen Basis aus modularen Komponenten verteilte, mehrschichtige Anwendungen entwickeln zu können. Klar definierte Schnittstellen zwischen den Komponenten und Containern sollen dafür sorgen, dass Softwarekomponenten unterschiedlicher Hersteller interoperabel sind, wenn sie sich an die Spezifikation halten, und dass die verteilte Anwendung gut skalierbar ist.

Bestandteile der "Java Platform, Enterprise Edition" Spezifikation wurden innerhalb des Java Community Process von diversen Unternehmen erarbeitet und schließlich der Öffentlichkeit in Form eines Dokuments und einer Referenzimplementierung zur Verfügung gestellt. Zukünftige Spezifikationen werden als Eclipse Jakarta EE Platform im Rahmen des Eclipse Foundation Projektes EE4J, einschließlich Referenzimplementierung, Technology Compatibility Kit (TCK) und Tutorial zur Verfügung gestellt.[1][2]

Remove ads

Bisherige Versionen

Zusammenfassung
Kontext
Thumb
Jakarta EE

Eclipse Jakarta EE Platform - Versionen Eclipse EE4J

Die "Java Platform, Enterprise Edition, v 8", einschließlich Technology Compatibility Kit (TCK)[3] und Referenzimplementierung GlassFish[4], wurde der Eclipse Foundation von Oracle übergeben[5][6] und dort das Projekt EE4J[7] gegründet.[8] Dieses entwickelt, stimmt ab und veröffentlicht die Eclipse Jakarta EE Platform.[9]

Die Eclipse Foundation und Oracle hatten damals keine Vereinbarung zu den Namensrechten an Java und dem damit verbundenen technischen Namensraum getroffen,[10][11] was 2019 durch die Umbenennung der Version in Jakarta gelöst wurde.

Java Platform, Enterprise Edition - Versionen Java Community Process unter Leitung Oracle

Bis einschließlich zur Version 8 wurde die Java EE Plattform mit dem Java Community Process unter der Spezifikationsleitung von Oracle entwickelt, abgestimmt und veröffentlicht. Weitere Versionen werden mit diesem Prozess und unter dieser Leitung nicht erscheinen.[12]

Die letzte Version der Java-EE-Spezifikation ist die Version 8.0.[13]

Der neue Name für die Spezifikation lautet Java Platform, Enterprise Edition, kurz Java EE [ˈdʒɑːvə ˌiːˈiː]. Dies ersetzt die vorherige Abkürzung J2EE [ˌdʒeɪˈtuː ˌiːˈiː] (Java 2 Platform, Enterprise Edition).

Weitere Informationen Version, Ausführlicher Name ...

Danach folgten die Versionen:

  • Jakarta EE 8 (2019), vollkompatible Version zu Java Platform, Enterprise Edition, v 8
  • Jakarta EE 9 (2020)
  • Jakarta EE 9.1 (2021)
  • Jakarta EE 10 (2022)
Remove ads

Infrastruktur

Zusammenfassung
Kontext
Thumb
Schematischer Aufbau der Architektur, wie sie in der J2EE-Spezifikation 1.4 beschrieben ist

Jakarta-EE-Komponenten erfordern als Laufzeitumgebung eine spezielle Infrastruktur, einen sogenannten Jakarta EE Application Server. Dieser Server stellt technische Infrastruktur bereit wie

Des Weiteren kapselt der Server den Zugriff auf die Ressourcen des zugrundeliegenden Betriebssystems (Dateisystem, Netzwerk, …).

Ein Jakarta-EE-Server wird in diverse logische Systeme unterteilt. Diese werden Container genannt. Die aktuelle Spezifikation erfordert die folgenden Container:

  • einen EJB-Container als Laufzeitumgebung für Jakarta Enterprise Beans
  • einen Web-Container als Laufzeitumgebung für Jakarta Servlets und Jakarta Server Pages (JSP)
  • einen JCA-Container als Laufzeitumgebung für JCA Connectoren. Dieser ist zwar nicht explizit definiert, faktisch jedoch muss jeder Application-Server-Hersteller diesen implementieren. Denn im Jakarta Enterprise Beans (EJB) sowie im Web-Container sind Restriktionen definiert, welche für die JCA-Laufzeitumgebung nicht gelten. Dabei handelt es sich beispielsweise um das Starten von Threads oder das Lesen und Schreiben in Dateien etc.
  • einen JMS-Provider als Verwaltungssystem für Nachrichtenwarteschlangen.

Es sind zahlreiche Implementierungen für Jakarta-EE-Server verfügbar, teils proprietär, teils in Form frei verfügbarer Open-Source-Lösungen (z. B. WildFly). Eine Referenzimplementierung wird von der Eclipse Foundation zur Verfügung gestellt. Zu beachten ist, dass nicht alle Server die Spezifikation von Jakarta EE vollständig abdecken. Jedoch veröffentlichen Oracle und Eclipse für jede Version eine Liste der derzeit zertifizierten Server.[14][15]

Als weitere Infrastrukturkomponente kommt für die persistente Speicherung von Daten ein Datenbankmanagementsystem (DBMS) zum Einsatz. Hierbei kann es sich um ein relationales System handeln, oder aber auch um ein vergleichbares System wie beispielsweise ein OODBMS. Die Anbindung der Datenbankmanagementsysteme erfolgt meist über einen JDBC-Treiber.

Der clientseitige Zugriff auf eine Jakarta-EE-Anwendung erfolgt oft über einen Browser, daneben sind aber auch Applikations-Clients (Java-Applikationen, CORBA-Komponenten, Webservice-Clients) verbreitet.

Remove ads

Wichtige APIs

Zusammenfassung
Kontext

Die Jakarta-EE-APIs beinhalten verschiedene Technologien, die die Funktionalität des Basis-Java-SE-APIs erweitern bzw. ersetzen.[16] Neben den aktuellen Bezeichnungen werden in der Tabelle die alten Benennungen ergänzend genannt.

Weitere Informationen Name und Abkürzung, Beschreibung ...
Remove ads

Implementierungen

Zusammenfassung
Kontext

Eine Implementierung des Jakarta-EE-Standards kann zusätzlich von Oracle für die jeweilige Version zertifiziert werden. Dadurch wird die grundsätzliche Kompatibilität der Anwendungen zwischen den Servern bestätigt. Jedoch zeigt sich in der Praxis oft, dass eine Portierung einer Applikation von einem Jakarta-EE-Server zum anderen mit Problemen verbunden ist. So werden teilweise unbewusst Hersteller-abhängige Bibliotheken genutzt.

Komplette Jakarta-EE-Server

Der derzeitige Stand der Zertifizierung (nach dem Oracle TCK) steht in Klammern dahinter.

Open Source Server

Kommerzielle Server

Verbreitung der Jakarta-EE-Server

Im Jahr 2007 wurden die folgenden Nutzerzahlen bekannter Java-EE-Server veröffentlicht. Unter Nutzer findet sich die Anzahl der Unternehmen und Organisationen, die den jeweiligen Server lizenziert oder, im Falle von JBoss, einen Wartungsvertrag abgeschlossen haben. JBoss schätzt, dass es insgesamt 10.000 Nutzer der JBoss Enterprise Application Platform gibt.[17]

Weitere Informationen Anzahl Nutzer ...

Separate Web-Container (Servlet-/JSP-Container)

Separate EJB-Container

  • Apache OpenEJB – Open Source
Remove ads

Weitere Java-Plattformen

Siehe auch

Literatur

  • Alexander Salvanos: Professionell entwickeln mit Java EE 8. Rheinwerk Verlag, 2018, ISBN 978-3-836-24353-7.
  • Alexander Salvanos: Professionell entwickeln mit Java EE 7. Galileo Press, 2014, ISBN 978-3-8362-2004-0.
  • Bill Shannon, Mark Hapner, Vlada Matena: Java 2 Platform, Enterprise Edition. Addison-Wesley, 2000, ISBN 0-201-70456-0.
  • Inderjeet Singh, Beth Stearns, Mark Johnson: Designing Enterprise Applications with the J2EE Platform. 2. Auflage. Addison-Wesley, 2002, ISBN 0-201-78790-3.
  • Inderjeet Singh, Sean Brydon, Greg Murray: Designing Web Services with the J2EE 1.4 Platform. Addison-Wesley, 17. Juni 2004, ISBN 0-321-20521-9.
  • Jason Hunter, William Crawford: Java Servlet Programming. 2. Ausgabe. O’Reilly, 1. April 2001, ISBN 0-596-00040-5.
  • Bruce W. Perry: Java Servlet & JSP Cookbook. O’Reilly, 1. Januar 2004, ISBN 0-596-00572-5.
  • Hans Bergsten: JavaServer Pages. 3. Ausgabe. O’Reilly, 1. Dezember 2003, ISBN 0-596-00563-6.
  • Marty Hall, Larry Brown: Core Servlets and JavaServer Pages. Prentice Hall PTR, 2004, ISBN 0-13-089340-4.
  • Richard Monson-Haefel, Bill Burke, Sacha Labourey: Enterprise JavaBeans. 4. Ausgabe. O’Reilly, 30. Juni 2004, ISBN 0-596-00530-X.
  • Kevin Boone: Applied Enterprise JavaBeans Technology. Prentice Hall PTR, 1. Dezember 2002, ISBN 0-13-044915-6.
  • Richard Monson-Haefel, David A. Chappell: Java Message Service. O’Reilly, 1. Dezember 2000, ISBN 0-596-00068-5.
  • Rahul Sharma, Beth Stearns, Tony Ng: J2EE Connector Architecture and Enterprise Application Integration. Addison-Wesley, 1. Dezember 2000, ISBN 0-201-77580-8.
  • Jonathan Bruce, Jon Ellis, Maydene Fisher: JDBC API Tutorial and Reference. 3. Auflage. Addison-Wesley, 2003, ISBN 0-321-17384-8.
  • Rosanna Lee, Scott Seligman: JNDI API Tutorial and Reference. Addison-Wesley, 1. Juni 2000, ISBN 0-201-70502-8.
  • Steve J. Perry: Java Management Extensions. O’Reilly, Juli 2002, ISBN 0-596-00245-9.
  • Genender: Enterprise Java Servlets. Addison-Wesley, ISBN 0-201-70921-X.
Remove ads
Remove ads

Einzelnachweise

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads