Bei der Umsetzung von UML in EJB wird eine Klasse mit dem Stereotyp <<Service>> in eine containergesteuerte Session-Bean ohne Status (Stateless) oder in eine containergesteuerte Session-Bean mit Status (Stateful) umgesetzt. Der Name der Session-Bean ist derselbe wie der Name der UML-Quellenklasse. Bei der Umsetzung werden immer die folgenden Java-Klassen für Session-Beans generiert:
Die Umsetzung generiert die folgenden Java-Klassen, wenn Sie auf der Registerkarte Session auf Nur ferne Schnittstellen klicken:
Die Umsetzung generiert die folgenden Java-Klassen, wenn Sie auf der Registerkarte Session auf Nur lokale Schnittstellen klicken:
Die Umsetzung generiert die folgenden Java-Klassen, wenn Sie auf der Registerkarte Session auf Lokale und ferne Schnittstellen klicken:
Bei der Umsetzung werden alle Klassen in dem Paketordner generiert, der für das übergeordnete Paket der UML-Quellenklasse generiert wurde. Wenn Sie ein UML-Modell ohne Pakete erstellen, wird bei der Umsetzung ein Standardpaket mit dem Namen 'ejbs' erstellt.
Bei der Umsetzung wird die Beanklassendatei in der Quellenbaumstruktur des EJB-Zielprojekts generiert.
Bei der Umsetzung werden die vier Schnittstellendateien in der Quellenbaumstruktur des Clientprojekts des EJB-Zielprojekts generiert. Wenn kein Clientprojekt vorhanden ist, werden die Schnittstellendateien bei der Umsetzung im EJB-Zielprojekt generiert.
Bei der Umsetzung werden Daten, die die Session-Bean definieren, zum Implementierungsdeskriptor (ejb-jar.xml) hinzugefügt.
Jede UML-Klasse mit einem Stereotyp <<Service>> verfügt über eine Stereotypeigenschaft mit dem Namen "hasState". Wenn der Wert von "hasState" "false" (falsch) ist, wird die betreffende UML-Klasse bei der Umsetzung als Session-Bean ohne Status (Stateless) generiert. Wenn der Wert von "hasState" umgekehrt "true" (wahr) ist, wird die UML-Klasse bei der Umsetzung als Session-Bean mit Status (Stateful) generiert.
Hinweis: Die Stereotypeigenschaft wirkt sich nur auf die UML-Klassen aus, die bei der Umsetzung als neue Session-Beans generiert werden.
Standardmäßig hat die Eigenschaft "hasState" den Wert "false". Dies entspricht den Standardeinstellungen im Assistenten für die Erstellung von Session-Beans.
Wenn die UML-Quellenklasse für die Session-Bean eine Generalisierungsbeziehung (wie z. B. eine Erweiterungsbeziehung) mit einer anderen UML-Klasse mit dem Stereotyp <<Service>> aufweist und dieser Stereotyp denselben Eigenschaftswert "hasState" enthält, wird die Session-Bean, die die Klasse darstellt, die EJB-Superklasse für die zu generierende Session-Bean.
Wenn die UML-Quellenklasse für die Session-Bean Realisierungsbeziehungen (zum Beispiel Implementierungsbeziehungen) zu Schnittstellenelementen aufweist, werden die Schnittstellen, die die Quellenschnittstellen darstellen, durch die vier Schnittstellen (fern, Home, lokal, lokales Home) implementiert.
Bei der Umsetzung werden Attribute der UML-Quellenklasse in Java-Eigenschaften der Beanklasse umgesetzt. Weitere Informationen zur Umsetzung der Attribute finden Sie in der Dokumentation zur Umsetzung von UML in Java.
Wenn der Typ des Attributs zu einer anderen Enterprise-Bean gehört, wird bei der EJB-Umsetzung weder ein Feld noch eine Zuordnung für die Session-Bean generiert. Stattdessen wird bei der Umsetzung eine Nachricht in die Protokolldatei geschrieben, die angibt, dass das Quellenattribut nicht umgesetzt wird.
Bei der Umsetzung werden Operationen für die UML-Quellenklasse in Geschäftsmethoden der Session-Bean umgesetzt. Anfangs wird die Operation auf dieselbe Weise umgesetzt wie eine Operation für eine unmarkierte UML-Klasse. Die umgesetzte Operation wird mit einigen Änderungen zu den Klassen hinzugefügt, die in der folgenden Tabelle aufgelistet sind.
Klasse |
Änderungen an der Methode |
Beanklasse |
Keine Änderung |
Lokale Schnittstelle |
Schnittstellenmethode |
Ferne Schnittstelle |
Schnittstellenmethode, löst java.rmi.RemoteException aus |
Ignoriert.
Ignoriert.
Nutzungsbedingungen
| Rückmeldungen
(C) Copyright IBM Corporation 2004. Alle Rechte vorbehalten.