[z/OS]

Vorhandene IMS-Transaktionen mit optimierten lokalen Adaptern über OTMA aufrufen

Vorhandene unveränderte IMS-Transaktionen, die als MPPs (Message Processing Programs, Nachrichtenverarbeitungsprogramme) oder Fast-Path-Programme (IFPs) ausgeführt werden, können mit den optimierten lokalen Adaptern von WebSphere Application Server for z/OS über die Unterstützung von Open Transaction Manager Access Callable Interface (OTMA C/I) aufgerufen werden. Diese Unterstützung wird von einer neuen Gruppe nativer Module bereitgestellt, die mit den optimierten lokalen Adaptern, die IMS OTMA C/I verwenden, eingeführt wurden.

Anwendungen, die unter WebSphere Application Server for z/OS implementiert werden und vorhandene IMS-Transaktionen aufrufen müssen, verwenden die Dateiola.rar, um die OTMA-C/I-Schnittstellenmodule aufzurufen. Es sind mehrere neue Verbindungsfactory-Attribute vorhanden, mit denen Anwendungen den Namen des IMS-Zielsystems und die zugehörigen OTMA-XCF-Informationen angeben können. Außerdem wurde ein Attribut hinzugefügt, mit dem die Anwendung die für den Austausch verwendete Synchronisationsebene festlegen kann. Nähere Informationen zu diesen Parametern finden Sie im Artikel "Hinweise zu Verbindungsfactorys für optimierte lokale Adapter".

Globale IMS-Transaktionen werden in den Versionen 8.5.0.2 und höher unterstützt. Anwendungen können die IMS-Transaktionen im Kontext derselben globalen Transaktion enthalten, wenn die Anwendungen in einer globalen Transaktion ausgeführt werden und WebSphere Application Server als Koordinator für Festschreibungen (Commit) verwenden, der vorhandene IMS-Anwendungen über die WOLA-over-OTMA-Unterstützung aufruft.

Weitere Informationen zu dieser Unterstützung finden Sie unter Globale Transaktionen - Websphere-Anwendungen rufen IMS-Anwendungen auf.

Anforderungen an das Nachrichtenformat

Vor Version 8 und bevor Mehrsegmentnachrichten unterstützt wurden, mussten die Anforderungs- und Antwortnachrichten Einzelsegmentnachrichten sein mit einer Sende- und Empfangssegmentgröße von maximal 32760 Byte, einschließlich des Nachrichtenheaders.

Nachfolgend ist das Nachrichtenformat aufgeführt, das für Aufrufe von IMS aus Anwendungen in WebSphere Application Server erwartet wird:
<----------------- HEADER ---------------->   <------ DATEN ------>
LL        + ZZ        + IMS-Transaktionsname + Nachrichtenanforderungsdaten
(2 Byte) | (2 Byte) | (8 Byte)            | (bis zu 32744 Byte)

Der Transaktionsname in der Nachricht wird für den Aufruf von OTMA C/I verwendet. Hierbei muss es sich um eine Transaktion handeln, die in einem IMS MPR oder in einer Fast-Path-abhängigen Region definiert und erreichbar ist.

Vor Version 8 wurden Antwortdaten immer im folgenden Format zurückgegeben:
<----- HEADER ----->   <------------------ DATEN ----------------->
LLLL                  + Nachrichtenantwortdaten
(4 Byte)             | (bis zu 32756 Byte) 
Der CICS/IMS-Assistent für Java-Datenbindung (Data Binding) in Rational Application Developer wird verwendet, um Helper-Klassen mit setter- und getter-Methoden zu erstellen. Diese können verwendet werden, um die Zuordnung von Daten zu und aus Java-Objekten und Binärformaten zu steuern. Diese Datenzuordnung gilt sowohl für Nachrichten, die von WebSphere Application Server an IMS gesendet werden, als auch für Antwortdaten.
Achtung: Vor Version 8, in der nur Einzelsegmentnachrichten unterstützt wurden, wurde der Antwortnachricht immer eine 4-Byte-Integer-Nachrichtenlänge vorangestellt, gefolgt von der Antwortnachricht, bei der es sich um den vom Assistenten für Datenbindung zugeordneten Bereich handelte.

Unterstützung von Mehrsegmentnachrichten

IMS-Mehrsegmentnachrichten unterstützen Anforderungs- und Antwortnachrichten, die größer sind als die früher für Anforderungsnachrichten festgelegten 32744 Byte und die für Antwortnachrichten festgelegten 32756 Byte. Ein einzelnes Segment darf jedoch nicht größer sein als 32768 Byte, einschließlich des Nachrichtenheaders.

Mit dieser Unterstützung werden zwei Verbindungsfactory-Attribute hinzugefügt:
  • OTMAMaxSegments

    OTMAMaxSegments stellt die größte Anzahl an Segmenten dar, die für das Senden und Empfangen von IMS-Nachrichten über die aktuelle Verbindung unterstützt wird. Wird kein Wert angegeben, ist der Standardwert 1.

  • OTMAMaxRecvSize

    OTMAMaxRecvSize stellt die größtmögliche Nachricht dar, die IMS mit der WebSphere-Unterstützung für optimierte lokale Adapter über OTMA zurückgeben kann. Wird kein Wert angegeben, ist der Standardwert 32768.

Diese beiden Attribute können für eine Verbindung dynamisch mit den zugehörigen Methoden setOTMAMaxSegments() und setOTMAMaxRecvSize() geändert werden.

Globale Transaktionen - Websphere-Anwendungen rufen IMS-Anwendungen auf

Ab Version 8.5.0.2 kann eine WebSphere-Anwendung, wenn sie im Kontext einer globalen Transaktion ausgeführt wird, vorhandene IMS-Programme über die WOLA-over-OTMA-Unterstützung aufrufen und die vom IMS-Programm ausgeführten Aktualisierungen von derselben globalen Transaktion koordinieren lassen. Wenn Sie diese Funktionalität verwenden möchten, müssen Sie Folgendes sicherstellen:
  • Die Anwendung, die eine Verbindung verwenden soll, ist für OTMA konfiguriert und das Attribut RRSTransactional der verwalteten Verbindungsfactory ist auf True (oder 1) gesetzt. Indem Sie das Attribut RRSTransactional auf True (oder 1) setzen, aktivieren Sie die RRS-Transaktionen für Verbindungen.
  • Auf dem Server mit WebSphere Application Server for z/OS ist die Umgebungsvariable ola_rrs_context_propagate_otma installiert und auf True (oder 1) gesetzt.
  • In der IMS-Umgebung ist RRS=YES konfiguriert.

Wenn Sie eine oder mehrere der genannten Konfigurationseinstellungen implementieren müssen, müssen Sie den Server mit WebSphere Application Server for z/OS und Ihre IMS-Umgebung erneut starten, damit der Transaktionskontext von Anwendungen, die in einer globalen Transaktionen mit WebSphere Application Server ausgeführt werden, mit den in IMS ausgeführten Anwendungen koordiniert wird.

Anforderungen an das Format von Mehrsegmentnachrichten

Für Mehrsegmentnachrichten ist LLZZ die Standardeinstellung für Anforderungen von optimierten lokalen Adaptern von WebSphere an IMS. Die Standardeinstellung LLLL+Nachrichtendaten für Antworten von IMS an WebSphere Application Server bleibt unverändert.

Für diese Unterstützung werden Methoden bereitgestellt, mit denen diese Standardeinstellungen geändert werden können. Mit den Methoden setOTMARequestLLZZ() und setOTMARequestLLLL() kann die Längenpräfixdarstellung für Nachrichtenanforderungen von WebSphere Application Server an IMS festgelegt werden. Mit den Methoden setOTMAResponseLLZZ() und setOTMAResponseLLLL() kann für Antwortnachrichten die Nachrichtenpräfixdarstellung LLZZ oder LLLL festgelegt werden. Im folgenden Beispiel ist das Nachrichtenformat aufgeführt, das für Aufrufe von IMS aus Anwendungen in WebSphere Application Server erwartet wird.

LLZZ-Anforderungen (setOTMARequestLLZZ(1) und setOTMARequestLLLL(0)):
<----------------- HEADER ------------------>   
LL        + ZZ        + IMS-Transaktionsname +
(2 Byte) | (2 Byte) | (8 Byte)
<-------------------------- DATENSEGMENT 1 ---------------------->
Daten des Nachrichtensegments 1
(bis zu 32756 Byte)
<-------------------------- DATENSEGMENT 2 ---------------------->
+ LL        + ZZ      + Daten des Nachrichtensegments 1
(2 Byte) | (2 Byte) | (bis zu 32764 Byte)
…
<-------------------------- DATENSEGMENT N ---------------------->
+ LL        + ZZ      + Daten des Nachrichtensegments N
(2 Byte) | (2 Byte) | (bis zu 32764 Byte)
LLLL-Anforderungen (setOTMARequestLLLL(1) und setOTMARequestLLZZ(0)):
<----------------- HEADER ------------------>   
LLLLZZ    + IMS-Transaktionsname +
(6 Byte) | (8 Byte)
<-------------------------- DATENSEGMENT 1 ---------------------->
Daten des Nachrichtensegments 1
(bis zu 32754 Byte)
<-------------------------- DATENSEGMENT 2 ---------------------->
+ LLLLZZ    + Daten des Nachrichtensegments 1
(6 Byte) | (bis zu 32762 Byte)
…
<-------------------------- DATENSEGMENT N ---------------------->
+ LLLLZZ    + Daten des Nachrichtensegments 1
(6 Byte) | (bis zu 32762 Byte)
LLZZ-Antworten (setOTMAResponseLLZZ(1) und setOTMAResponseLLLL(0)):
<----- HEADER ----->   <----------- DATENSEGMENT 1 ------------>
+ LL        + ZZ      + Daten des Nachrichtensegments 1
(2 Byte) | (2 Byte) | (bis zu 32764 Byte)
<-------------------------- DATENSEGMENT 2 ---------------------->
+ LL        + ZZ      + Daten des Nachrichtensegments 2
(2 Byte) | (2 Byte) | (bis zu 32764 Byte)
…
<-------------------------- DATENSEGMENT N ---------------------->
+ LL        + ZZ      + Daten des Nachrichtensegments N
(2 Byte) | (2 Byte) | (bis zu 32764 Byte)
LLLL-Antworten (setOTMAResponseLLLL(1) und setOTMAResponseLLZZ(0)):
-- HEADER -->   <----------- DATENSEGMENT 1 ------------>
+ LLLLZZ    + Daten des Nachrichtensegments 1
(6 Byte) | (bis zu 32762 Byte)
<-------------------------- DATENSEGMENT 2 ---------------------->
+ LLLLZZ    + Daten des Nachrichtensegments 2
(6 Byte) | (bis zu 32762 Byte)
…
<-------------------------- DATENSEGMENT N ---------------------->
+ LLLLZZ    + Daten des Nachrichtensegments N
(6 Byte) | (bis zu 32762 Byte)

Symbol, das den Typ des Artikels anzeigt. Konzeptartikel



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_callexisttrans
Dateiname:cdat_callexisttrans.html