[z/OS]

Ferne WOLA-Arbeitsanforderung in einem EJB-Ziel

Das Feature WOLA-Arbeitsanforderung (WebSphere Optimized Local Adapter) ermöglicht einer Clientanwendung (z. B. Stapel, CICS etc.), eine Verbindung zu einer fernen WAS-Serverinstanz herzustellen, die eine für den Client wichtige Anwendung bereitstellt. Diese Anwendung führt Geschäftslogik aus, deren Ergebnisse für den Client erforderlich sind. Der ferne Aufruf erfolgt über die APIs BBOA1INV/BBGA1INV und BBOA1SRQ/BBGA1SRQ und eine Proxy-Anwendung (RemoteEJBProxy), die mit WebSphere Application Server for z/OS geliefert wird.

Bevor Sie dieses Feature installieren, überprüfen Sie die Voraussetzungen und Konfigurationseinstellungen:
  1. Binden Sie den Namespace der WebSphere Application Server-Instanz in den lokalen z/OS WebSphere Application Server ein, um dem lokalen Server zu ermöglichen, die Anwendung auf dem fernen Server zu suchen. Die ferne Anwendung muss eine Stateless-EJB sein, die eine Methode mit dem Namen execute() implementiert, die eine Bytefeldgruppe als Eingabe akzeptiert und eine Bytefeldgruppe als Ausgabe zurückgibt, wie von der Schnittstelle "com.ibm.websphere.ola.Execute" definiert. Außerdem muss sie, wenn sie die Spezifikation EJB 2.1 oder frühere Spezifikationen verwendet, den Namen com.ibm.websphere.ola.ExecuteHome für die EJB-Home-Schnittstelle und com.ibm.websphere.ola.Execute für die ferne Schnittstelle angeben. Wird die Spezifikation EJB 3.0 verwendet, muss sie die Annotation @RemoteHome mit der Angabe com.ibm.websphere.ola.ExecuteHome definieren. Diese Schnittstellen sind während der Ausführung in WebSphere Application Server for z/OS und WebSphere Application Server für verteilte Plattformen verfügbar. Für die Entwicklung ferner Anwendungen werden die genannten Schnittstellen als Teil des Assembliertools "ola_apis.jar" mit WebSphere Application Server for z/OS geliefert. Packen Sie diese Schnittstellen nicht zusammen mit Ihrer EAR-Datei.
  2. Installieren Sie OLA-Proxy-EAR-Datei (ola_proxy.ear), die die Anwendung "RemoteEJBProxy" enthält, auf der lokalen z/OS WebSphere Application Server-Serverinstanz Die EAR-Datei befindet sich im Verzeichnis $(WAS_INSTALL_ROOT)/installableApps des WebSphere Application Server for z/OS-Dateisystems.

    Die Anwendung "remoteEJBProxy" wird standardmäßig an den JNDI-Namen ejb/com/ibm/ws390/ola/jca/RemoteEJBProxyHome gebunden. Wenn der Standardwert aus irgendeinem Grund geändert werden muss, kann der JNDI-Name der Zielressource der Proxy-Anwendung über die Seite der Administrationskonsole unter Anwendungen > ola_proxy > EJB-JNDI-Name > JNDI-Name für alle Schnittstellen angepasst werden. Wenn der JNDI-Name aktualisiert wird, muss diese Änderung der WebSphere-Laufzeit mitgeteilt werden. Dies geschieht über eine entsprechende Einstellung der Umgebungsvariable "ola_remote_ejb_proxy_jndiname", wie im Artikel "Umgebungsvariablen für optimierte lokale Adapter" erläutert.

    Beachten Sie, dass die Änderung des JNDI-Standardnamens der Anwendung "remoteEJBProxy" ein optionaler Schritt ist. Dieser Schritt ist nur erforderlich, wenn der Name geändert werden muss.

  3. Starten Sie alle Server erneut.

Die Aufrufprozeduren für die APIs "Aufrufen" (BBOA1INV/BBGA1INV) und "Anforderung senden" (BBOA1SRQ/BBGA1SRQ) stimmen im Prinzip mit denen Prozeduren für lokale Aufrufe überein, mit dem einzigen Unterschied, dass der Parameter für die Aufrufanforderungstyp (requesttype) auf den Wert "2" gesetzt werden muss, wie im Artikel "Optimierte lokale Adapter für z/OS-APIs" erläutert.

Der Servicename (JNDI-Name), der beim Aufruf der API "Aufrufen" oder "Anforderung senden" angegeben wird, muss mit dem Namen übereinstimmen, den der lokale WebSphere Application Server for z/OS verwenden würde, um die ferne Anwendung unter Angabe des eingebundenen JNDI-Namespace für den fernen Server zu suchen. Wenn der Namespace des fernen Servers beispielsweise im Verzeichnis remote/server5 eingebunden und die Anwendung mit dem JNDI-Namen ejb/myRemoteApp auf dem fernen Server installiert wird, wäre der in der API "Aufrufen" oder "Anforderung senden" angegebene Servicename remote/server5/ejb/myRemoteApp.

Dieses Feature bietet auch die Möglichkeit, die ferne Anwendung in einer vom Client initialisierten globalen Transaktion aufzurufen. Bei Verwendung eines CICS-Clients in einer globalen Transaktion könnte ein Absturz vom Typ ABEND ASP3 eintreten, wenn CICS feststellt, dass die Transaktion rückgängig gemacht wurde, als sie einen Befehl zum Festschreiben der globalen Transaktion abgesetzt hat. Dieser Fall ist zu erwarten, wenn im genannten Szenario CICS eingesetzt wird. Das Rollbackverhalten ist ebenfalls zu erwarten in den Fällen, in denen bei der Verarbeitung des EJB-Aufrufs eine Fehlerbedingung eintritt, die einen Rollback unumgänglich macht.


Symbol, das den Typ des Artikels anzeigt. Referenzartikel



Symbol für Zeitmarke Letzte Aktualisierung: 25.05.2016
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=cdat_ola_remotequest
Dateiname:cdat_ola_remotequest.html