Java Reference
In-Depth Information
Methode aufru . Wenn dieser Aufruf über eine direkte Referenz auf das Bean-Objekt erfolgt
(z. B. bei einem Methodenaufruf derselben Klasse und desselben Objekts über this), dann
muss man sich darüber im Klaren sein, dass für die aufgerufene Methode keine automati-
sche Transaktionskontrolle erfolgt. Wenn man das haben möchte, muss man die Methode
stattdessen indirekt über das EJB-Proxy-Objekt aufrufen.
Alternativ kann man bei der Transaktionssteuerung auf die Dienste des EJB-Containers
auch ganz verzichten (Einstellung BEAN als TransactionManagementType in der Klassen-
annotation). Dann muss der Umgang mit Transaktionen explizit in der Bean-Klasse auspro-
grammiert werden.
■
1311 Funktionen eines EJB-Containers
Als eine Form einer Zusammenfassung sollen die Funktionen, die ein EJB-Container
erbringt, im Folgenden aufgezählt werden:
!
Ressourcen-Management: Damit sind primär die Strategien zur Erzeugung und Vernich-
tung von Stateless-Bean-Objekten und zur Passivierung und Aktivierung von State-
ful-Bean-Objekten gemeint, die im Laufe dieses Kapitels demonstriert wurden.
!
Nebenläufi gkeitskontrolle: Hierunter ist die Steuerung bezüglich der Parallelität zu ver-
stehen. Dazu gehört die Strategie zur Festlegung, wie groß der Grad an Parallelität für
eine Stateless Bean sein soll, was sehr eng mit dem Ressourcen-Management zusammen-
hängt, denn ein höherer Grad an Parallelität kann nur durch eine entsprechende Zahl von
Stateless-Bean-Objekten erreicht werden. Weiterhin muss dafür gesorgt werden, dass es
keine Parallelität beim Zugriff auf ein Stateful-Bean-Objekt gibt. Und schließlich müssen
die Lese- und Schreibsperren für Singleton-Bean-Objekte implementiert werden.
!
Namensdienst: Wie gesehen bietet ein EJB-Server einen Namensdienst an. Beim Deploy-
ment einer EJB-Komponente müssen die Beans der Komponente in den Namensdienst
eingetragen werden. Beim Undeployment müssen die Einträge entsprechend wieder ent-
fernt werden.
!
Persistenz: Damit sind die Entities gemeint, die im vorigen Abschnitt skizziert wurden.
!
Transaktionssteuerung: Auch die Transaktionssteuerung wurde im vorigen Abschnitt
behandelt.
!
Zugriff skontrolle: Auf die Zugriff skontrolle wird in diesem Buch nicht näher eingegan-
gen. Sie weist aber viele prinzipielle Ähnlichkeiten mit der Transaktionssteuerung auf.
Auch hier hat man die Wahl, die Kontrolle vom EJB-Container durchführen zu lassen,
indem man die Methoden mit entsprechenden Annotationen versieht (deklarative
Zugriff skontrolle), oder alternativ kann man den Zugriff auf die Dienste eines Beans im
Programmcode kontrollieren.