[z/OS]

OTMA を介した最適化されたローカル・アダプターを使用した、既存の IMS トランザクションの呼び出し

メッセージ処理プログラム (MPP) またはファスト・パス・プログラム (IFP) として実行する、既存の未変更の IMS™ トランザクションは、 WebSphere® Application Server for z/OS® の最適化されたローカル・アダプターを使用して、Open Transaction Manager Access 呼び出し可能インターフェース (OTMA C/I) サポートを介して使用することで、呼び出すことができます。 このサポートは、IMS OTMA C/I を使用する最適化されたローカル・アダプターで導入されている、一連の新しいネイティブ・モジュールによって提供されます。

WebSphere Application Server for z/OS にデプロイされていて、既存の IMS トランザクションを呼び出す必要のあるアプリケーションは、ola.rar ファイルを使用して OTMA C/I インターフェース・モジュールに到達します。アプリケーションが、ターゲットの IMS システムの名前、および関連付けられている OTMA XCF 情報を提供できるようにする、複数の新規接続ファクトリー属性があります。また、アプリケーションが、交換用に使用される同期レベルを設定できるようにするための追加属性もあります。これらのパラメーターについて詳しくは、トピック『最適化ローカル・アダプターの接続ファクトリーに関する考慮事項』を参照してください。

IMS グローバル・トランザクションは、バージョン 8.5.0.2 以降でサポートされています。グローバル・トランザクションで、OTMA を介した WOLA サポートを使用して既存の IMS アプリケーションを呼び出すコミット・コーディネーターとして WebSphere Application Server を使用して実行されるアプリケーションは、同じグローバル・トランザクション・コンテキスト内に IMS トランザクションを含むことができます。

このサポートについて詳しくは、セクション『グローバル・トランザクション - IMS アプリケーションを呼び出す Websphere アプリケーション』を参照してください。

メッセージ・フォーマットの要件

バージョン 8 では複数セグメント・メッセージがサポートされるようになりましたが、それより前のバージョンでは、要求および応答メッセージは、最大送受信セグメント・サイズがメッセージ・ヘッダーも含めて 32760 バイト以下の、単一セグメントにする必要があります。

以下は、WebSphere Application Server でアプリケーションからの IMS に対する呼び出しに想定されるメッセージ・フォーマットです。
<----------------- HEADER ---------------->   <------ DATA ------>
LL        + ZZ        + IMS Transaction Name + Message request data
(2 bytes) | (2 bytes) | (8 bytes)            | (up to 32744 bytes)

メッセージ中の Transaction Name は OTMA C/I への呼び出しに使用され、IMS の MPR またはファスト・パス従属領域で定義され、到達可能なトランザクションである必要があります。

V8 より前のバージョンでは、応答データは常に以下のフォーマットで返されます。
<----- HEADER ----->   <------------------ DATA ----------------->
LLLL                  + Message response data
(4 bytes)             | (up to 32756 bytes)
Rational® Application Developer の CICS/IMS Java™ データ・バインディング・ウィザードは、Java オブジェクトとバイナリー形式との間のデータのマッピングを処理するために使用できる setter および getter メソッドを持つヘルパー・クラスの作成に使用されます。 このデータのマッピングは、WebSphere Application Server から IMS に送信されたメッセージと応答データの両方に適用されます。
重要: バージョン 8 より前のバージョンでは、単一セグメント・メッセージのみがサポートされていましたが、応答メッセージの前には常に 4 バイトの Integer のメッセージ長があり、その後にデータ・バインディング・ウィザードによってマップされた領域である応答メッセージが続きます。

複数セグメント・メッセージのサポート

IMS 複数セグメント・メッセージでは、要求および応答メッセージが、それぞれ前のバージョンの 32744 バイトおよび 32756 バイトより大きくなるようにサポートされています。ただし、単一セグメントは、メッセージ・ヘッダーを含めて 32768 バイト以下にする必要があります。

このサポートでは、接続ファクトリーの属性が 2 つ追加されています。
  • OTMAMaxSegments

    OTMAMaxSegments は、現在の接続での IMS メッセージの送受信でサポートされるセグメントの最大数を表します。値が指定されていない場合、デフォルトは 1 になります。

  • OTMAMaxRecvSize

    OTMAMaxRecvSize は、OTMA でサポートされる WebSphere の最適化されたローカル・アダプターを使用して IMS から返されるうち、最大のメッセージを表します。値が指定されていない場合、デフォルトは 32768 になります。

これらの属性はどちらも、関連付けられたメソッド、setOTMAMaxSegments() と setOTMAMaxRecvSize() を使用する接続用に、動的に変更できます。

グローバル・トランザクション - IMS アプリケーションを呼び出す Websphere アプリケーション

バージョン 8.5.0.2 以降では、WebSphere アプリケーションがグローバル・トランザクションで実行中の場合に、そのアプリケーションが、OTMA を介した WOLA サポートを使用して既存の IMS プログラムを呼び出し、WebSphere アプリケーションが参加している同じグローバル・トランザクションによって調整される IMS プログラムによって更新が実行されます。この機能を使用する場合は、以下のことを確認する必要があります。
  • アプリケーションは、OTMA を使用するように構成された接続を使用するように構成され、RRSTransactional 管理接続ファクトリー属性が True (または 1) に設定されている。RRSTransactional 属性を True (または 1) に設定すると、接続に RRS トランザクションが使用可能になります。
  • WebSphere Application Server for z/OS サーバーが、ola_rrs_context_propagate_otma 環境変数がインストールされ、True (または 1) に設定された状態で稼働中である。
  • IMS 環境が、RRS=YES が構成された状態で稼働中である。

これらの構成設定のいずれを実装する場合でも、WebSphere Application Server を使用してグローバル・トランザクションで実行されるアプリケーションのトランザクション・コンテキストが、IMS で実行されるアプリケーションに合わせて調整される前に、WebSphere Application Server for z/OS サーバーおよび IMS 環境を再始動する必要があります。

複数セグメント・メッセージのメッセージ・フォーマット要件

複数セグメント・メッセージでは、WebSphere の最適化されたローカル・アダプターから IMS に要求する場合のデフォルトは LLZZ です。IMS から WebSphere Application Server への応答用のデフォルトの LLLL+message データには変更はありません。

このサポートには、これらのデフォルトを変更できるメソッドが提供されています。setOTMARequestLLZZ() および setOTMARequestLLLL() メソッドでは、WebSphere Application Server から IMS へのメッセージ要求の長さ接頭部のスタイルを設定できます。メソッド、setOTMAResponseLLZZ() および setOTMAResponseLLLL() では、メッセージ応答に関して、メッセージ接頭語のスタイルを LLZZ または LLLL に設定できます。以下の例は、WebSphere Application Server のアプリケーションから IMS への呼び出しとして想定されているメッセージ・フォーマットです。

LLZZ 要求 (setOTMARequestLLZZ(1) および setOTMARequestLLLL(0)):
<----------------- HEADER ------------------>   
LL        + ZZ        + IMS Transaction Name + 
(2 bytes) | (2 bytes) | (8 bytes)            
<-------------------------- DATA SEGMENT 1 ---------------------->
Message segment 1 data  
(up to 32756 bytes)    
<-------------------------- DATA SEGMENT 2 ---------------------->
+ LL        + ZZ      + Message segment 1 data 
(2 bytes) | (2 bytes) | (up to 32764 bytes)
…
<-------------------------- DATA SEGMENT N ---------------------->
+ LL        + ZZ      + Message segment N data 
(2 bytes) | (2 bytes) | (up to 32764 bytes)
LLLL 要求 (setOTMARequestLLLL(1) および setOTMARequestLLZZ(0)):
<----------------- HEADER ------------------>   
LLLLZZ    + IMS Transaction Name + 
(6 bytes) | (8 bytes)            
<-------------------------- DATA SEGMENT 1 ---------------------->
Message segment 1 data  
(up to 32754 bytes)    
<-------------------------- DATA SEGMENT 2 ---------------------->
+ LLLLZZ  + Message segment 1 data 
(6 bytes) | (up to 32762 bytes)
…
<-------------------------- DATA SEGMENT N ---------------------->
+ LLLLZZ  + Message segment 1 data 
(6 bytes) | (up to 32762 bytes)
LLZZ 応答 (setOTMAResponseLLZZ(1) および setOTMAResponseLLLL(0)):
<----- HEADER ----->   <----------- DATA SEGMENY 1 ------------>
+ LL        + ZZ      + Message segment 1 data 
(2 bytes) | (2 bytes) | (up to 32764 bytes)
<-------------------------- DATA SEGMENT 2 ---------------------->
+ LL        + ZZ      + Message segment 2 data 
(2 bytes) | (2 bytes) | (up to 32764 bytes)
…
<-------------------------- DATA SEGMENT N ---------------------->
+ LL        + ZZ      + Message segment N data 
(2 bytes) | (2 bytes) | (up to 32764 bytes)
LLLL 応答 (setOTMAResponseLLLL(1) および setOTMAResponseLLZZ(0)):
-- HEADER -->   <----------- DATA SEGMENT 1 ------------>
+ LLLLZZ        + Message segment 1 data 
(6 bytes)  | (up to 32762 bytes)
<-------------------------- DATA SEGMENT 2 ---------------------->
+ LLLLZZ   + Message segment 2 data 
(6 bytes) | (up to 32762 bytes)
…
<-------------------------- DATA SEGMENT N ---------------------->
+ LLLLZZ  + Message segment N data 
(6 bytes) | (up to 32762 bytes)

トピックのタイプを示すアイコン 概念トピック



タイム・スタンプ・アイコン 最終更新: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=cdat_callexisttrans
ファイル名:cdat_callexisttrans.html