Enterprise JavaBeans-Anwendungen verwenden, die lokale EJB-Komponenten in einer anderen Anwendung aufrufen
Die Enterprise JavaBeans (EJB)-Spezifikation setzt voraus, dass lokale Clientansichten für EJB-Komponenten unterstützt werden, die in derselben Anwendung gepackt sind. Dazu gehören die Ansicht für lokale Home-Schnittstellen, die Ansicht für lokale Geschäftsschnittstellen und die Ansicht ohne Schnittstellen. Lokale Clientansichten werden auch für EJB-Komponenten unterstützt, die nicht in derselben Anwendung gepackt sind, aber dazu sind weitere Konfigurationseinstellungen erforderlich.
Informationen zu diesem Vorgang
Das Produkt unterstützt mit gewissen Einschränkungen den Zugriff auf lokale Clientansichten für EJB-Komponenten, die in eine
separate Anwendung gepackt sind:
- Die lokale Schnittstelle und alle Parameter-, Rückgabe- oder Ausnahmetypen, die von der lokalen Schnittstelle verwendet werden, müssen für das Klassenladeprogramme der aufrufenden Anwendung und der EJB-Zielanwendung sichtbar sein. Die Sichtbarkeit kann durch die Verwendung einer gemeinsam genutzten Bibliothek, die einem Serverklassenladeprogramm zugeordnet ist, oder durch die Verwendung einer allgemeinen Bibliotheksreferenz für beide Anwendungen sichergestellt werden.
- Wenn die EJB-Zielanwendung gestoppt wird, müssen alle zwischengespeicherten Referenzen auf die EJB beim Neustart der aufrufenden Anwendung aktualisiert werden. Die einfachste Lösung ist der Neustart der aufrufenden Anwendung, wenn Sie eine EJB-Zielanwendung neu starten, von der die Anwendung abhängig ist.
Vorgehensweise
Fügen Sie die Konfiguration der Datei server.xml hinzu, z. B.:
<library id="ejbInterfaceLib">
<file name="${server.config.dir}/lib/ejbInterfaceLib.jar"/>
</library> <webApplication id="ejbClient" location="ejbClient.war">
<classloader commonLibraryRef="ejbInterfaceLib"/>
</webApplication>
<ejbApplication id="ejbApp" location="ejbApp.ear">
<classloader commonLibraryRef="ejbInterfaceLib"/>
</ejbApplication>