2.5.2 Oracle TMA TCP for IMSによるIMSクライアント・リクエストの処理の仕組み

  1. IMSトランザクションがクライアント・リクエストを発行するときに、TMA TCP for IMS OTMAクライアントを宛先に指定して、適切にフォーマットされたメッセージをIMSメッセージ・キューに挿入します(所定のIMSユーザー・イグジットの使用による)。

    ノート:

    IMSユーザー・イグジットの詳細は、「JCLおよびユーザー・イグジットのサンプル」を参照してください。
  2. リクエストがメッセージ・キューに挿入されると、リクエスタは事実上、リクエストから切り離されます。つまり、TMA TCP for IMSによるリクエストの処理は、リクエスト元のトランザクションの実行とは非同期に進行します。リクエストには、TMA TCP for IMSによってリクエストに対するレスポンスを処理するようにスケジュールされているレスポンス・トランザクションの名前(トランザクション・コード)が含まれます。
  3. TMA TCP for IMSゲートウェイはIMSからリクエストを取得し、そのフォーマットが正しいか検証します。なんらかのエラーが検出されると、所定の戻りコードを持つ特定のレスポンス・トランザクションがすぐにスケジュールされます。
  4. TMA TCP for IMSのアクセス先のリモート・システムが提供するサービスのディレクトリ内に、リクエスト対象のサービス名があるかどうか検索されます。リクエスト対象のサービスが見つからない場合、または必要なリモート・ゲートウェイが現在アクセス不可能な場合は、エラーが発生しているものとして認識されると同時に、所定の戻りコードを持つレスポンス・トランザクションがスケジュールされます。
  5. リモート・サービスのプロバイダがリクエストを特定できた場合は、リモート・システムとの発信セッションが確立され(まだ使用可能なセッションが1つもない場合)、リクエストは処理先のリモート・システムに送信されます。
  6. レスポンスが要求されている場合、TMA TCP for IMSはレスポンスの受信時に(なんらかのレスポンス・データが格納された)レスポンス・トランザクションを送信するようにスケジュールします。
  7. 最終的にリモート・システムからのレスポンスの受信がない場合、リクエストはタイムアウトし、エラーが発生したものとして認識され、所定の戻りコードを持つレスポンス・トランザクションがスケジュールされます。