![[z/OS]](../images/ngzos.gif)
WebSphere Application Server-Transaktionen BBOC, BBO$, BBO#
In diesem Artikel wird beschrieben, wie die optimierten lokalen Adapter im Produkt Customer Information Control System (CICS), einschließlich der eingeführten Transaktionen von WebSphere Application Server, BBOC, BBO$ und BBO#, unterstützt werden.
Der Adapter wurde zur Ausführung als Ressourcenmanager in einer CICS-Region entworfen. In CICS ist der taskbezogene Benutzerexit (TRUE, Task Related User Exit) das Hauptmittel, das von Ressourcenprovidern verwendet wird. Die TRUE-Unterstützung sorgt für eine Abgrenzung zwischen CICS-Anwendungsthreads und den Threads des externen Ressourcenmanagers. Derzeit werden DB2-, WebSphere MQ- und TCP/IP-Sockets in CICS über die TRUE-Unterstützung ausgeführt. TRUE wird auch von den optimierten lokalen Adaptern unterstützt.
Anwendungen, die in CICS ausgeführt werden und die APIs für optimierte lokale Adapter verwenden, rufen dazu die bereitgestellten Stubroutinen auf. Die Stubroutinen rufen das Schnittstellenmodul des CICS-Ressourcenmanagers auf und übergeben dabei den Namen der TRUE-Routine für die optimierten lokalen Adapter sowie die spezifischen Parameter für jede API. CICS teilt den taskbezogenen Benutzerexit in einem der von CICS verwalteten OPENAPI-TCBs zu und führt ihn so lange aus, bis der API-Aufruf abgeschlossen ist. Anschließend wird der Aufruf mit den Ausgabeparametern an CICS zurückgeliefert. Die TRUE-Unterstützung in CICS stellt auch Benachrichtigungen über Transaktionsgrenzen hinweg bereit, z. B., wenn die Anwendung normal beendet oder abnormal beendet wird oder einen expliziten SYNCPOINT-Aufruf an CICS absetzt. Ausführliche Informationen dazu, wie diese Unterstützung für die Weitergabe des Transaktionskontexts an WebSphere Application Server verwendet wird und über das zweiphasige Commit finden Sie im Abschnitt über die Weitergabe von Transaktionen in diesem Artikel. Es wird ein PLTPI-Programm (Program List Table Post-Initialization) bereitgestellt, mit dem das TRUE-Programm automatisch während des CICS-Starts gestartet werden kann. Wenn Sie das PLTPI-Programm nicht verwenden, wird eine CICS-Transaktion (BBOC) bereitgestellt. Diese Transaktion kann verwendet werden, um die Traceerstellung für das TRUE-Modul zu starten, zu stoppen, zu aktivieren und zu inaktivieren.
WebSphere Application Server-Steuertransaktion BBOC für CICS
Die Transaktion BBOC ist die WebSphere-Steuerungs- bzw. operative Transaktion für die Adapterunterstützung unter CICS. Sie wird verwendet, um den taskbezogenen Benutzerexit (TRUE) von WebSphere Application Server zu aktivieren und zu starten und um die Tracestufen für das Debugging der APIs und des Schnittstellencodes von WebSphere Application Server festzulegen. BBOC definiert auch Registrierungen und Registrierungsaufhebungen und startet und stoppt WebSphere Application Server-Link-Server-Tasks in CICS. Diese Server-Tasks unterstützen den Aufruf vorhandener CICS-Programme und die Übergabe von Daten mit Kommunikationsbereichen (COMMAREA) oder Containern mit den Eingabeparametern über die Adapter. Dies ist eine CICS-terminalbasierte Transaktion, die in einem 3270-Terminal oder einem sequenziellen SDSCI-Terminal abgesetzt werden kann. Die Syntax von BBOC ist im Folgenden beschrieben:
BBOC<Operationsname><durch_ein_oder_mehrere_Leerzeichen_getrennte_Parameter>.
- Registrierungsname - RGN
Der Parameter RGN ist der zwölfstellige Registrierungsname.
- Dämongruppenname - DGN
DGN ist der achtstellige Name der Dämongruppe, bei dem die Registrierung erfolgt.
- Link Sync-on-return - LSYNC
Über LSYNC wird gesteuert, ob die Option SYNCONRETURN verwendet wird, wenn unter dem Link-Server eine Verbindung zum Zielprogramm hergestellt wird. Bei LSYNC=Y wird die Option SYNCONRETURN an CICS übergeben, wenn das Zielprogramm eine Verbindung zu EXEC CICS LINK herstellt und verwendet. Diese Option ist hilfreich, wenn sich das Zielprogramm in einer anderen CICS-Region befindet. Der Standardwert ist LSYNC=N.
- Kurzname des Knotens (Node Short Name) - NDN
NDN ist der achtstellige Kurzname des Knotens, bei dem die Registrierung erfolgt.
- Serverkurzname (Server Short Name) - SVN
SVN ist der achtstellige Kurzname des Zielservers.
- Servicename - SVC
SVC ist der Servicename mit maximal acht Zeichen. Ein * (Stern) kann als Maske für den Servicenamen verwendet werden. Dieser Parameter unterstützt *, abc*, *abc, abc*xyz, abc*xy*z usw.
- Mindestanzahl Verbindungen (Minimum Connections) - MNC
MNC gibt die Mindestanzahl an Verbindungen an. Wenn kein Wert angegeben wird, wird standardmäßig 1 verwendet.
- Maximale Verbindungsanzahl (Maximum Connections) - MXC
MXC ist die maximale Verbindungsanzahl. Der Maximalwert ist 99999. Wenn kein Wert angegeben wird, wird standardmäßig 10 verwendet.
- Sicherheitsweitergabe (Security Propagation) - SEC
SEC legt die Sicherheitsweitergabe fest. Die gültigen Werte sind Y (für Ja) und N (für Nein). SEC=N ist die Standardeinstellung. Wenn SEC=N festgelegt ist und der Aufruf von CICS an WebSphere Application Server erfolgt, wird die Benutzer-ID der CICS-Region weitergegeben. Wenn SEC=N festgelegt und der Aufruf von WebSphere Application Server an CICS unter dem Link-Server (Task BBO$) erfolgt, wird die Link-Task unter der Benutzer-ID ausgeführt, unter der der Link-Server gestartet wurde. Wenn SEC=Y festgelegt ist und der Aufruf von CICS an WebSphere Application Server erfolgt, wird die Benutzer-ID auf Taskebene an WebSphere Application Server weitergegeben. Wenn SEC=Y festgelegt ist und der Aufruf von WebSphere Application Server an CICS erfolgt, versucht der Link-Server, die Link-Task (BBO#) mit der weitergegebenen Benutzer-ID aus WebSphere Application Server zu starten. Dies funktioniert nur, wenn die richtige SURROGAT-SAF-Konfiguration vorgenommen wurde, die der Benutzer-ID, unter der der Link-Server ausgeführt wird, erlaubt, EXEC CICS START TRAN('BBO#') USERID(<weitergegebene_ID) abzusetzen.
- TXN
TXN beschreibt das Transaktionsverhalten der Registrierung, das durch die Transaktion BBOC generiert wird.
Wenn BBOC eine Registrierung mit der Operation REGISTER erstellt, bedeutet TXN=Y, dass alle im WebSphere Application Server gestarteten Java EE-Anwendungen, die diese Registrierung verwenden, mit der aktuellen CICS-Einheit verknüpft werden sollen. Dadurch wird eine globale Transaktion zwischen CICS und WebSphere Application Server erstellt, die mit dem Protokoll für zweiphasiges Commit ausgeführt wird, wenn die CICS-Anwendung einen EXEC CICS SYNCPOINT ausgibt oder wenn ein Synchronisationspunkt beteiligt ist, z. B. beim Beenden der CICS-Task.
Wenn BBOC verwendet wird, um mit der Funktion START_SRVR einen Link-Server zu erstellen, bedeutet TXN=Y, dass die Task des CICS-Link-Servers beim Aufruf eines Service mit der aktuellen WebSphere Application Server-Transaktion verknüpft werden muss. Wenn eine Java EE-Anwendung eine lokale Transaktion des Ressourcenmanagers startet und ein CICS-Programm mit dem JCA-Connector für die optimierten lokalen Adapter aufruft, wird die Link-Task mit der lokalen Transaktion verknüpft und die Link-Task ruft dann das CICS-Zielprogramm auf. Aktualisierungen, die im CICS-Programm durchgeführt werden, werden erst festgeschrieben bzw. zurückgesetzt, wenn die Jave EE-Anwendung die lokale Transaktion des Ressourcenmanagers mit der Commit- oder Rollback-API ausführt.
- CICS-Transaktions-ID für den Link-Server
- STX
STX ist der vierstellige Name der zu verwendenden CICS-Transaktions-ID für den Link-Server. Der Standardwert für STX ist BBO$.
- Link-Tasktransaktions-ID - LTX
LTX ist der vierstellige Name der CICS-Transaktions-ID für das Linkprogramm. Der Standardwert für LTX ist BBO#. Wenn diese Transaktionsnamen durch benutzerdefinierte Namen ersetzt werden, müssen sie mit demselben Programmnamen und denselben Programmattributen wie BBO$ (für STX) und BBO# (für LTX) definiert werden.
- Trace - TRCDie Traceerstellung wird während der Verarbeitung der in der Tabelle aufgelisteten Befehle aktiviert und konfiguriert. Es gibt drei Tracestufen:
- 0 = Keine Traceerstellung und nur Ausgabe von Fehlernachrichten
- 1 = Basis
- 2 = Detailliert
- Warteschlange mit transienten Daten (Transient Data Queue) - TDQ
Tracedaten unter CICS werden in eine angeforderte partitionsübergreifende Warteschlange mit transienten Daten geschrieben. Der Parameter TDQ gibt den vierstelligen Namen der partitionsübergreifenden CICS-Warteschlange mit transienten Daten an, in die die Adapternachrichten geschrieben werden sollen. Wenn kein Name angegeben ist, werden standardmäßig BBOQ und DD BBOOUT verwendet. Sollte beim Schreiben in die ausgewählte Warteschlange mit transienten Daten ein Problem auftreten, werden die Nachrichten stattdessen in die Standardausgabe der CICS-Region (tdq CESO dd CEEOUT) geschrieben.
- Wiederverwendung (Reuse) - REUWenn sichergestellt ist, dass der Link-Server mit "SEC=N" ausgeführt werden kann, wird die beste Leistung erzielt, wenn auch der Parameter REU=Y BBOC START_SRVR angegeben wird. Der Parameter "REU=Y" bewirkt, dass der Link-Server die Program-Link-Aufruftasks (BBO#-Transaktionen) in Programmaufrufanforderungen wiederverwendet.Wichtig: Wenn Sie den Link-Server in dieser Konfiguration ausführen, ist die JCA-Unterstützung optimierten lokalen Adapter für die Übergabe einer separaten LINK-Transaktions-ID für einzelne Anforderungen inaktiviert, und eine entsprechende Anforderung für dazu, dass eine Ausnahme des Typs ResourceException an die Anwendung zurückgegeben wird. Wenn Sie versuchen "REU=Y" und "SEC=Y" verwenden, wird außerdem die Option für Wiederverwendung auf No gesetzt, da der Link-Server eine neue Program-Link-Task für jede Anforderung mit der Identität starten muss, die weitergegeben und zugesichert wurde.
- Anzahl wiederverwendete Anforderungen - REUC Geben Sie die Anzahl der Anforderungen ein, bis zu deren Erreichen die CICS-Link-Task (BBO#) aktiv bleiben und wiederverwendet werden soll. Wenn diese Zahl erreicht ist, wird die Link-Task beendet. Der Maximalwert ist 2147483648.Wichtig: Bei einem transaktionsorientierten Szenario wird die Link-Task beendet, nachdem die Zahl erreicht und das nächste Commit vom Anwendungsserver empfangen wurde.
- Zeit für Wiederverwendung - REUT Geben Sie die Anzahl der Sekunden ein, die die CICS-Link-Task (BBO#) aktiv bleibt und wiederverwendet wird. Wenn dieses Zeitintervall abgelaufen ist, wird die Link-Task nach dem Empfang und der Verarbeitung der nächsten Anforderung beendet. Der Maximalwert ist 2147483648.Wichtig: Bei einem transaktionsorientierten Szenario wird die Link-Task beendet, nachdem die angegebene Zeit abgelaufen ist und das nächste Commit vom Anwendungsserver empfangen wurde.
- LTSQ-Namen auflisten
LTSQ (Link Servers Temporary Storage Queue, temporäre Speicherwarteschlange für Link-Server) gilt nur für die Operation LIST_SRVR. LTSQ ist der Name einer temporären CICS-Speicherwarteschlange, in die die Liste der Link-Server und die zugehörigen Informationen geschrieben werden. Der Name kann eine Zeichenfolge mit bis zu 8 Zeichen sein. Eine C-Headerdatei, in der das Format der Ausgabedatensätze enthalten ist, befindet sich im Verzeichnis /<Installationsstammverzeichnis>/AppServer/util/zos/OLASamples/bboaapic.h und ist im Struct tsq_record beschrieben.
Operationsname | Abkürzung | Langform, Beschreibung |
Parameter |
---|---|---|---|
START_TRUE | STR | Taskbezogenen Benutzerexit (TRUE) von WebSphere Application Server starten | TRC=0/1/2 TDQ=<TDQ-Name> |
STOP_TRUE | PTR | Taskbezogenen Benutzerexit (TRUE) von WebSphere Application Server stoppen | TRC=0/1/2 TDQ=<TDQ-Name> |
REGISTER | REG | Registrierung bei der Dämongruppe, beim Knoten und beim Server für optimierte lokale Adapter von WebSphere Application Server | RGN=<Name> DGN=<Name> NDN=<Name> SVN=<Name> MNC=<minimale_Anzahl_von_Verbindungen> MXC=<maximale_Anzahl_von_Verbindungen> SEC=<yes|no> TXN=<yes|no> TRC=0|1|2 TDQ=<TDQ-Name> |
UNREGISTER | Registrierung bei optimierten lokalen Adaptern von WebSphere Application Server aufheben | RGN=<Name> | |
START_SRVR | STA | WebSphere Application Server-Task für den übergebenen Registrierungsnamen starten. | RGN=<Name> DGN=<Name> NDN=<Name> SVC=<Name> SVN=<Name> MNC=<minimale_Anzahl_von_Verbindungen> MXC=<maximale_Anzahl_von_Verbindungen> SEC=<yes|no> STX=<Transaktions-ID_des_CICS-Link-Servers> LTX=<Transaktions-ID_des_CICS-Link-Servers TRC=0|1|2 TDQ=<TDQ-Name> REU=<yes|no> REUC=<Anforderungsanzahl> REUT=<Sekundenanzahl> |
STOP_SRVR | STP | WebSphere Application Server-Task für den Registrierungsnamen stoppen. | RGN=<Name> TRC=0/1/2 TDQ=<TDQ-Name> |
LIST_SRVR | LST | Alle Link-Server auflisten, die mit dem übergebenen Registrierungsnamen übereinstimmen. Diese Parameter, einschließlich des Registrierungsnamens, sind alle optional. Werden keine Parameter angegeben, wird eine Liste aller Link-Server zurückgegeben. Sie können den Parameter RGN (Registrierungsname) auch mit Platzhalterzeichen angeben. Ein Stern (*) gibt an, dass ab diesem Platzhalterzeichen alle Zeichen gültig sind. Ein Fragezeichen (?) bedeutet, dass dieses einzelne Zeichen für ein beliebiges Zeichen steht. Die Ausgabe der Operation LIST_SRVR wird standardmäßig in die Warteschlange BBOQ oder in die mit dem Parameter TDQ explizit angegebene Warteschlange mit transienten Daten geschrieben. Wird der Parameter LTSQ angegeben, wird die Liste der aktiven Link-Server in die benannte temporäre CICS-Speicherwarteschlange geschrieben. | RGN=<Name> LTSQ=<TSQ-Name> TRC=<0/1/2> TDQ=<TDQ-Name> |
BBOC-Befehl automatisch während des CICS-Starts und -Stopps ausführen
Sie können den Link-Server eines optimierten lokalen Adapters automatisch starten, wenn CICS gestartet wird. Auf diese Weise wird eine BBO$-Transaktion mit langer Laufzeit gestartet, die aktiv bleibt, bis der Link-Server gestoppt wird. Es gibt zwei CICS-PLTPI-Programme (Program List Table Post-Initialization), die in der vom Script copyZOS.sh erstellten Ladebibliothek bereitgestellt werden und die Sie zum Ausführen der BBOC-Befehle während des CICS-Starts verwenden können. Diese Ladebibliothek können Sie zum Ausführen von BBOC-Befehlen beim CICS-Start verwenden. Fügen Sie BBOACPLT Ihrer CICS-Programmlistentabelle als Eintrag der Phase 2 oder der Phase 3 hinzu, wenn Sie den taskbezogenen Benutzerexit für die optimierten lokalen Adapter während des CICS-Starts aktivieren möchten.
INITPARM=(BBOACPL2='STA RGN=PAYROLL DGN=DAE1 NDN=NODE1 SVN=SERVER1 SVC=*')
Die Befehlszeichenfolge
kann ein beliebiger BBOC-Befehl sein. Wenn Sie eine Registrierung mit dem Namen "WASAPPS" mit mindestens 10 und maximal
100 Verbindungen während des CICS-Starts konfigurieren möchten, geben Sie Folgendes an:
INITPARM=(BBOACPL2='REG RGN=WASAPP DGN=DAE1 NDN=NODE1 SVN=SERVER1 MNC=10 MXC=100')
Wenn Sie diesen Befehl verwenden, dürfen Sie die API "Register" (Registrieren)
nicht in Ihren Anwendungen verwenden. Stattdessen können Sie sofort die anderen APIs verwenden, z. B.
Invoke (Aufrufen),
Connection Get (Verbindung abrufen) und
Send Request (Anforderung senden) usw. Quelle und JCL für die bereitgestellten PLTPI-Programme BBOACPLT und BBOACPL2 sind in den Dateien bboacplt.jclsamp und bboacpl2.jclsamp unter /<Installationsstammverzeichnis>/AppServer/util/zos/OLASamples zu finden. Außerdem wird ein weiteres PLTPI-Programm bereitgestellt. /<Installationsstammverzeichnis>/AppServer/util/zos/OLASamples/bboacpl3.jclsamp enthält ein Beispiel, das zeigt, wie mehrere BBOC-Befehle während des CICS-Starts abgesetzt werden.
Außerdem wird in /<Installationsstammverzeichnis>/AppServer/util/zos/OLASamples/DFHPLTOL.jclsamp eine Beispiel-JCL bereitgestellt, die zeigt, wie Sie Ihre PLT (Programmlistentabelle) mit diesen Programmen assemblieren.
Bevor CICS beendet wird, müssen alle aktiven Link-Server gestoppt werden und ihre Registrierung muss zurückgenommen werden. Andernfalls könnte der Beendigungsprozess nicht fortgesetzt werden. Sie können eine der folgenden Aktionen ausführen, um vor oder während der CICS-Beendigung einen Link-Server zu stoppen und seine Registrierung zurückzunehmen:
- Führen Sie für alle CICS-Link-Server BBOC STOP_SERVER aus, bevor CICS beendet wird.
- Fügen Sie das von IBM® bereitgestellte PLTSD-Programm (Program List Table Shutdown) BBOACPLS Ihrer Programmlistentabelle (PLT) hinzu. Dieses PLTSD-Programm führt BBOC LIST_SRVR aus, um alle aktiven Link-Server in der Region zu ermitteln. Anschließend setzt es für jeden dieser Server die Operation STOP_SRVR ab. In /<Installationsstammverzeichnis>/AppServer/util/zos/OLASamples/DFHPLTO2.jclsamp ist eine Beispiel-JCL enthalten, die zeigt, wie Sie dieses Programm Ihrer PLT-Beendigungsliste hinzufügen können.
- BBO$-Tasks löschen
- Schreiben Sie ein eigenes PLT-Beendigungsprogramm, das für jeden Link-Server den EXEC CICS LINK-Aufruf für BBOACNTL ausführt und die Zeichenfolge STOP_SERVER übergibt.
- Setzen Sie den Befehl CEMT P SHUT,IMMED ab.
BBOC-Befehl über ein Programm mit EXEC CICS LINK PROGRAM('BBOACNTL') ausführen
BBOC-Operationen können über Programme gesteuert werden, indem EXEC CICS LINK PROGRAM('BBOACNTL') ausgeführt und die Befehlszeichenfolge im Kommunikationsbereich (COMMAREA) übergeben wird. Wenn die im COMMAREA übergebene Befehlszeichenfolge weniger als 268 Zeichen hat, wird eine Zeichenfolge zurückgegeben, die nur das Ergebnis der Befehlsausführung enthält. Wenn die Befehlszeichenfolge größer-gleich 268 Zeichen ist, stellt BBOC/BBOACNTL eine ganzzahlige Version, einen ganzzahligen Rückgabecode und einen ganzzahligen Ursachencode in den Bytes 256 - 268 bereit. Der in der Version 1 zurückgegebene Bereich hat die folgende Struktur:
/* Version 1 DFHCOMMAREA - for EXEC CICS LINK to BBOACNTL */
struct inputCommarea {
char command[256];
};
struct outputCommarea_v1 {
char message[256];
int version;
int returnCode;
int reasonCode;
};
struct BBOACNTL_Commarea {
union {
struct inputCommarea input;
struct outputCommarea_v1 output;
};
};
Wird ein Kommunikationsbereich (COMMAREA) als Eingabe an BBOACNTL übergeben, der größer-gleich 268 Bytes ist, wird in den ersten 256 Bytes eine Nachricht zurückgegeben, gefolgt von dem zuvor gezeigten Bereich mit Version, Rückgabecode und Ursachencode aus der von BBOC/BBOACNTL ausgeführten Operation. Nachfolgend sind die Rückgabecode und Ursachencodes aufgeführt, die von EXEC CICS LINK für BBOACNTL unterstützt werden:
RC 0 RSN 0
Request process successfully. The response message in the first 256 bytes provides more information. Search the Information Center with the returned message id for further information about the response.
RC 4 RSN 0
No Link Servers match the requested registration name or no Link Servers are running in this region. The response message in the first 256 bytes provides more information. Search the Information Center with the returned message id for further information about the response.
RC 8 RSN 0 or higher
An error occurred in processing the request. The response message in the first 256 bytes provides more information. Search the Information Center with the returned message id for further information about the response.
RC 12 RSN 0 or higher
An severe error occurred in processing the request. The response message in the first 256 bytes provides more information. Search the Information Center with the returned message id for further information about the response.
Wird der Parameter LTSQ in der Befehlszeichenfolge für den EXEC-CICS-LINK-Aufruf für BBOACNTL übergeben, wird eine Liste mit übereinstimmenden aktiven Link-servern a die temporäre CICS-Speicherwarteschlange geschrieben, die im Parameter LTSQ übergeben wird. Das Ausgabedatensatzformat für jeden Link-Server in der Liste ist im Header unter /<Installationsstammverzeichnis>/AppServer/util/zos/OLASamples/bboaapic.h dokumentiert und im Struct tsq_record beschrieben.
WebSphere Application Server LINK-Server-Task für CICS, BB0$
Die CICS-Transaktion BBO$ wird verwendet für die WebSphere Application Server-Unterstützung abgehender Anrufe an CICS. Sie wird im Hintergrund als Nicht-Terminaltransaktion ausgeführt und stellt eine Instanz einer Server-Task dar, die über die Operation BBOC START_SRVR für einen benutzerdefinierten Registrierungsnamen und Servicenamen gestartet wird. Diese Server-Task stellt eine LINK-Aufruffunktion für Programme bereit bzw. ermöglicht den Aufruf eines vorhandenen CICS-Programms durch WebSphere Application Server über die APIs für optimierte lokale Adapter. Der Name dieser Transaktion kann durch einen benutzerdefinierten Namen überschrieben werden, der mit dem Befehl BBOC START_SRVR (STX=xxxx) angegeben wird. In diesem Fall muss der bereitgestellte Transaktionsname in CICS mit demselben Programmnamen und denselben Attributen wie BBO$ definiert sein.
WebSphere Application Server-LINK-Aufruftask für CICS, BBO#
Die CICS-Transaktion BBO# wird verwendet für die WebSphere Application Server-Unterstützung abgehender Anrufe an CICS. Sie ist eine Nicht-Terminaltransaktion, die eine Instanz einer Task darstellt, die von der Server-Task BBO$ für die Adapter von WebSphere Application Server gestartet wurde, um einen LINK-Aufruf für ein Programm durchzuführen. Die BBO$-Transaktion startet eine BBO#-Transaktion für jede CICS-Programmlinkanforderung einer Anwendung, die in WebSphere Application Server implementiert ist.
Der Name dieser Transaktion kann durch einen benutzerdefinierten Namen überschrieben werden, der mit dem Befehl BBOC START_SRVR angegeben wird, z. B. LTX=xxxx. In diesem Fall muss der bereitgestellte Transaktionsname in CICS mit demselben Programmnamen und denselben Attributen definiert sein wie die Transaktion BBO#. Alternativ dazu kann der vierstellige Name der Link-Transaktion von WebSphere Application Server über die Anwendung übergeben werden, die JCA verwendet. In diesem Szenario verwendet die Anwendung, die den Adapter verwendet, die Methode "setLinkTaskTransid".
Benutzeridentität von WebSphere Application Server an CICS zusichern
Diese Server-Task unterstützt die Weitergabe der Benutzeridentität in einem WebSphere Application Server-Aufruf an CICS sowie die Zusicherung dieser Identität. Die Zusicherung erfolgt nur, wenn die Registrierungstask mit der Einstellung SEC=Y für den Sicherheitsparameter durchgeführt wurde. Dies wird mit EXEC CICS START TRANSACTION(‘BBO#') USERID(<Benutzer-ID>) implementiert.
Es muss eine SAF-SURROGAT-Klassendefinition definiert werden, um sicherzustellen, dass die Benutzer-ID, unter der die BBO$-Transaktion ausgeführt wird, berechtigt ist, eine Transaktion für die übergebene Benutzer-ID zu starten.
Wenn Sie BBOC STRT_SRVR mit SEC=N ausführen, ist die Benutzer-ID, die den eingehenden Anforderungen für CICS zugeordnet ist, die Benutzer-ID, mit der die Transaktion BBOC ausgeführt wurde.
BBOC-Beispielaufrufe
- CICS-TRUE-Programm für den Adapter starten:
bboc start_true
- CICS-TRUE-Programm für den Adapter stoppen.
bboc stop_true
- Registrierung mit dem Namen CICS-HR1 in der Dämongruppe SY1 mit dem Knoten
SY1 und mit dem Server BBOS001 mit einer maximalen Verbindungsanzahl von 10 und einer minimalen Verbindungsanzahl von 10 durchführen.
Parameter für Transaktionsunterstützung auf no und den Parameter für Sicherheitsweitergabe auf yes setzen:
bboc register rgn=CICS-HR1 svn=bbos001 dgn=sy1 ndn=sy1 mnc=5 mxc=10 txn=n sec=y
- Registrierung mit dem Namen CICS-HR1 zurücknehmen:
bboc unregister rgn=CICS-HR1
- Servertransaktion mit BBO$ für alle Service- und Programmnamen unter dem Registrierungsnamen
CICSPAYR mit einer Dämongruppe, einem Knoten und einem Server mit maximal 10 Verbindungen und mindestens 5 Verbindungen starten.
Parameter für Transaktionsunterstützung auf no und den Parameter für Sicherheitsweitergabe auf yes setzen:
bboc start_srvr rgn=CICSPAYR svn=bbos001 dgn=sy1 ndn=sy1 mnc=5 mxc=10 sec=y
- BBO$-Servertransaktion stoppen, die unter dem Registrierungsnamen CICSPAYR ausgeführt wird:
bboc stop_srvr rgn=CICSPAYR
- Servertransaktion mit BBO$ für Service- und Programmnamen, die mit PAYR beginnen, unter dem Registrierungsnamen
CICSPAY1 mit einer Dämongruppe, einem Knoten und einem Server mit maximal 10 Verbindungen und mindestens 5 Verbindungen starten.
Parameter für die Transaktionsunterstützung auf no und den Parameter für die Sicherheitsweitergabe auf
yes setzen:
bboc start_srvr rgn=CICSPAY1 svn=bbos001 dgn=sy1 ndn=sy1 mnc=5 mxc=10 sec=y svc=PAYR*
- Servertransaktion unter der Transaktions-ID PAY2 starten und mit dem Namen
PAYROLL2 für alle Service- und Programmnamen in einer Dämongruppe, einem Knoten und einem Server mit maximal
10 Verbindungen und mindestens 5 Verbindungen starten.
Den Parameter für die Transaktionsunterstützung auf yes, den Parameter für die Sicherheitsweitergabe auf
yes und die Tracestufe auf 1 setzen:
bboc start_srvr rgn=PAYROLL2 svn=bbos001 dgn=sy1 ndn=sy1 mnc=5 mxc=10 sec=y stx=PAY2 trc=1
- Servertransaktion unter der Transaktions-ID PAY3 starten und der Link-Transaktions-ID PY3L starten.
Mit dem Namen PAYROLL3 für Service- und Programmnamen, die mit PAYRL3 beginnen, in einer Dämongruppe, einem Knoten und einem Server
mit maximal 10 Verbindungen und mindestens 5 Verbindungen registrieren.
Den Parameter für die Transaktionsunterstützung auf yes, den Parameter für die Sicherheitsweitergabe auf
yes und die Tracestufe auf 1 setzen:
bboc start_srvr rgn=PAYROLL3 svn=bbos001 dgn=sy1 ndn=sy1 mnc=5 mxc=10 sec=y svc=PAYRL3* stx=PAY3 ltx=PY3L trc=1
- Alle in dieser CICS-Region ausgeführten Link-Server auflisten:
bboc list_srvr
- Alle in dieser CICS-Region ausgeführten Link-Server mit dem Registrierungsnamen CICSPAY1 auflisten:
bboc list_srvr rgn=CICSPAY1
- Alle in dieser CICS-Region ausgeführten Link-Server mit einem
CICSRegistrierungsnamen auflisten und die Liste in die temporäre Speicherwarteschlange
mit dem Namen MYSRVRS kopieren:
bboc list_srvr rgn=CICS* ltsq=MYSRVRS
- Alle in dieser CICS-Region ausgeführten Link-Server auflisten,
deren Registrierungsname folgende Kriterien erfüllt: Er beginnt mit
"CICS", gefolgt von einem beliebigen Zeichen, anschließend
enthält er die Zeichen "ZZZ", danach folgen beliebige Zeichen:
bboc list_srvr rgn=CICS?ZZZ*
Unterstützung für CICS-Kanäle und -Containerobjekte
Bei Nachrichten, die größer sind als 32 K, müssen CICS-Anwendungsprogramme, die über WebSphere Application Server aufgerufen werden, in der Lage sein, CICS-Kanäle und -Container zu verwenden, um Daten zu empfangen und Antwortdaten zu senden. Anwendungen, die in WebSphere Application Server ausgeführt werden, können die bereitgestellte JCA-Programmierschnittstelle verwenden, um den Namen und den Typ (BIT|CHAR) des CICS-Containers anzugeben, der verwendet wird, um die Daten an das Zielprogramm zu übergeben, und den Namen und den Typ des Containers, der zum Empfangen der Antwort von der Anwendung verwendet wird.
- Wenn Sie einen einzelnen Container übergebe und einen einzelnen Container empfangen, können die Methoden setLinkTaskReqContid, setLinkTaskRspContid, setLinkTaskReqContType(bit|char) und setLinkTaskRspContType(bit|char) verwendet werden. Sowohl für die Anforderung als auch für die Antwort wird der Kanalname IBM-WAS-ADAPTER verwendet. Dieser Kanalname ist festgelegt.
- Alternativ dazu kann die JCA-Schnittstelle "MappedRecord" verwendet
werden, um einen oder mehrere Container von einem CICS-Zielprogramm zu senden und zu empfangen. Wenn Sie die Schnittstelle
"MappedRecord" verwenden, verwenden Sie die Methoden "setLinkTaskChanID()" und "setLinkTaskChanType()" der API "ConnectionSpecImpl",
um den Kanalnamen, der zum Speichern der Anforderungs- und Antwortcontainer verwendet wird, sowie und den Typ (Bit oder Char)
der im Kanal enthaltenen Container festzulegen.
Die Namen der einzelnen Anforderungscontainer werden durch Hinzufügen von Daten zur Schnittstelle "MappedRecord" mit der Methode "put()" festgelegt.
Die Schlüssel der Schnittstelle "MappedRecord" entsprechen den CICS-Containernamen und die entsprechenden Werte werden verwendet, um den Container in CICS zu füllen. Der Schlüssel muss ein Zeichenfolgeobjekt mit einer Länge von 1 bis 16 Zeichen sein. Der Wert kann ein byte[]- oder ein RecordBytes-Objekt sein, das von Tools wie Rational Application Developer generiert wird.
Die Namen der Antwortcontainer werden aus dem Kanal extrahiert, wenn die CICS-Anforderung abgeschlossen ist, und in einer neuen MappedRecord-Schnittstelle eingetragen, die an den Client zurückgegeben wird.