J2EE-Architektur und Enterprise JavaBeans |
![]()
EJB als Teil der Java 2 Enterprise Edition (J2EE)
Die Enterprise JavaBeans Architektur stellt eine logische Erweiterung
des JavaBeans-Komponentmodells um Serverkomponenten
dar. Es sind also Komponenten, die serverseitig ausgeführt werden und einen
großen Teil der Ablauflogik implementieren.
Ein EJB-Server stellt eine effiziente, hochgradig
skalierbare, robuste Ausführungsumgebung bereit, die besonders für
internetfähige Applikationen geignet ist.
Die Enterprise JavaBeans (EJB) Spezifikation ist Teil der J2EE, einer Standardplattform
für Internetbasierte Anwendungen. Zur J2EE gehören neben den EJB noch
weitere Dienste, insbesondere:
Diese Bestandteile stelle ich im Abschnitt J2EE-Technologien noch etwas detaillierter vor.
.
![]()
Die Java 2 Enterprise Edition (J2EE) und ihre Container
Container Services
Container stellen die Schnittstelle
zwischen einer Komponente und der sie unterstützenden umgebenden plattformspezifischen
Funktionalität dar. Sie fungieren als Dienstleister für die immer
gleichen Anforderungen der business objects.
Bevor eine Web-Komponente, eine EJB und ein Application Client ausgeführt
werden können, müssen sie zu einer J2EE-Applikation zusammengesetzt
und in ihre Container deployed werden ('Deploying').
Der Prozess des Zusammensetzens ('Assembling')
erfordert spezifische Einstellungen für jede Komponente einer J2EE Application
und für die J2EE Application selbst.
Am Container müssen dann noch Einstellungen vorgenommen werden, um die Unterstützung durch den J2EE Server zu konfigurieren. Das betrifft z.B. Einstellungen zu Sicherheit, Transaktionsmanagement, Java Naming and Directory Interface (JNDI) lookups und remote connectivity:
Die J2EE-Architektur stellt konfigurierbare Dienste zur Verfügung. Komponenten derselben J2EE Application können sich unterschiedlich verhalten, je nachdem, wohin sie deployed wurden. Beispielsweise können die Sicherheitseinstellungen einer EJB in der einen Produktionsumgebung weitreichende Rechte für den Datanbakzugriff vorsehen, während dieselbe Bean in einer anderern Produktionsumgebung viel restriktiver gehandhabt wird.
Container sorgen daneben noch für Dienste, die nicht konfigurierbar sind, wie beispielsweise das Management des Lebenszyklus von EJBs und Servlets, das Pooling von Datenbankverbindungen, Datenpersistzenz und Zugang zu anderen APIs der J2EE-Plattform. Obwohl die (container-managed) Datenpersistenz nicht konfigurierbar ist, erlaubt die J2EE-Architektur, die continer-manged persistence zu 'überschreiben', indem man entsprechenden Code in der Implemenation der EJB ablegt, der eine 'Handsteuerung' erlaubt. Man kann bean-managed persistence beispielsweise dazu benutzen, um eigene finder-Methoden zu implementieren oder um einen eigenen Datenbank-Cache anzulegen
Durch das Deployen werden Komponenten einer J2EE- Applikation in ihren J2EE-Containern installiert.
![]()
Die Java 2 Enterprise Edition (J2EE) und die Vorgänge bei der Softwareentwicklung
Aus der Struktur des J2EE ergeben sich typische Vorgänge und Rollen
(von denen wir in unserer Übung natürlich die meisten selbst spielen
müssen):
Als nächstes werden wir uns mit den Enterprise JavaBeans genauer befassen.
26.08.2003 Petra Haberer
Version 1.0.1