Verwenden Sie die WOLA-Aufruf-API,
um Aufrufe von einem externen Adressraum an eine Stateless Session-Bean abzusetzen, die in einem lokalen
Liberty-Server für z/OS implementiert ist.
Vorbereitende Schritte
Um Ihre Enterprise-Bean als ein potenzielles Ziel für einen OLA-Aufruf zu identifizieren,
muss Ihre EJB-Anwendung (Enterprise-Bean) die Schnittstelle "com.ibm.websphere.ola.ExecuteLocalBusiness" als lokale Geschäftsschnittstelle
implementieren. Die Schnittstelle befindet sich in der Datei
wlp/dev/api/ibm/com.ibm.websphere.appserver.api.zosLocalAdapters_1.0.0.jar.
Der Liberty-Server muss in demselben
z/OS-Image aktiv sein, von dem die Registrierungsanforderung stammt.
Stellen Sie sicher, dass der aktuelle Adressraum bereits registriert ist und mit der Registrierungs-API
an die OLA-Zielgruppe gebunden wurde. Weitere Informationen zum Registrieren eines externen
Adressraums finden Sie unter Externen Adressraum bei einem lokalen Liberty-Server mit optimierten lokalen Adaptern registrieren.
Informationen zu diesem Vorgang
Die hier beschriebene Methode für den Aufruf einer Enterprise-Bean ist ein vereinfachter Weg, wenn Sie die Länge des Antwortbereichs kennen, bevor Sie die Bean aufrufen.
Wenn Sie die Länge des Antwortbereichs nicht kennen oder mehr Flexibilität
beim Aufruf der Bean wünschen, lesen Sie den Abschnitt
OLA-APIs in Liberty zum Aufrufen einer Enterprise-Bean über einen externen Adressraum verwenden.
Vorgehensweise
- Legen Sie fest, welche Parameter beim Aufruf der Bean über die Aufruf-API (BBOA1INV) verwendet werden sollen.
Der API akzeptiert Parameter für die folgenden Elemente:
- Registrierungsname, den Sie beim Aufruf der Registrierungs-API angegeben haben
- Anforderungstyp, der für lokale EJB-Arbeitsanforderungen auf 1 gesetzt werden muss
- Name des aufzurufenden Service, der der JNDI-Name (Java™ Naming and Directory Interface) des
lokalen Geschäftsschnittstellenpfads der Stateless-Session-Bean sein muss
- Länge des Servicenamens
- Verweis auf die Adresse des Beginns der zu sendenden Anforderungsdaten
- Länge der zu sendenden Anforderungsdaten
- Verweis auf die Adresse des Beginns des Antwortdatenbereichs
- Länge der zu sendenden Antwortdaten
- Anzahl der Sekunden bis zum Ablauf der Verbindung
Weitere Informationen zu den API-Parametern finden Sie unter APIs für optimierte lokale Adapter in Liberty für z/OS.
- Rufen Sie die Aufruf-API für Ihren Caller mit den ausgewählten Parametern
über eine Anwendung in Landessprache im Clientadressraum auf. In der EJB-Zielanwendung (Enterprise JavaBeans) wird die Ausführungsmethode ausgeführt und startet dann die erforderliche Geschäftslogik,
bevor die Antwortdaten als serialisiertes Byte-Array wieder an den Caller in Landessprache
zurückgegeben werden.
- Sehen Sie sich die Antwortdaten an. Der Rückgabecode und Ursachencode 0 weist darauf hin, dass der Clientaufruf der Aufruf-API
erfolgreich abgeschlossen wurde und die Antwortdaten sowie die Länge der Antwortdaten in vom Caller angegebenen Bereichen
gespeichert werden.
- Die Clientanwendung wiederholt diesen Schritt mit demselben Registrierungsnamensaufruf, wobei sooft wie nötig so viele
Stateless Session-Beans wie nötig aufgerufen werden.
Achtung: Mit der Aufruf-API werden die drei primitiven Funktionen "Send_Request", "Receive_RespLen" und
"Get_Data" ausgeführt. Der aufrufende Thread wird so lange geblockt, bis die Antwortdaten empfangen und in den Antwortbereich
kopiert wurden.
Ergebnisse
Der Client startet eine Stateless Session-Bean über den
Liberty-Server mit der OLA-Aufruf-API.