IMS Synchronous Request サンプルの実行

このサンプルをインポートしてデプロイした後、以下の指示に従って実行することができます。

これらのノードがどのように機能し、構成されるかに関する概要は、WebSphere Message Broker 資料の、IBM 情報管理システム (IMS) を参照してください。 このサンプルでは、2 つのサブフローが含まれるメイン・メッセージ・フロー IMSSyncRequestSample を使用します。

サンプルの実行時に問題を検出した場合は、 WebSphere Message Broker 資料の『サンプル実行時の問題の解決』を参照してください。

サンプルを実行するには、次のようにします。

  1. 「ブローカー開発」ビューで、「IMSSyncRequestSampleFlowProject」プロジェクトを展開します。
  2. IMSSyncRequestSuccess.mbtest をダブルクリックして、「テスト・クライアント」でメッセージをオープンし、「エンキュー」をクリックします。
  3. 「詳細プロパティー」パネルで、「メッセージの送信」をクリックします。
    1. WebSphere MQ Request XML メッセージが IMS_SYNC_REQUEST_IN1 キューに入ります。このメッセージは IMSSyncRequestSample メッセージ・フローによって読み取られます。
    2. Mapping ノードを使用して、XML メッセージが IMS バイナリー・フォーマットにマップされます。
    3. Compute ノードを使用して、MQMD がローカル環境に保存されます。
    4. IMSRequest ノードは要求を IMS に送り、トランザクションの実行結果を受け取ります。
    5. 応答は構文解析されて個々のセグメントに分けられ、その内容に基づいて成功または失敗として扱われます (このケースでは成功)。
    6. その後、セグメントの内容に基づいて、メッセージは REXX メッセージまたは COBOL メッセージとして構文解析されます (このケースでは REXX)。
    7. 構文解析された応答は XML フォーマットにマップされて、キューに送られます。
    8. TCPIPClientEmulation フローは要求を IMS_SYNC_REQUEST_OUT1 キューに送ります。
  4. 「デキュー」を選択して、「詳細プロパティー」パネルで「メッセージの取得」をクリックします。
  5. 応答メッセージが WebSphere MQ を介して正常に送られたことを確認するために、XML 構造ビューアーを使って「詳細プロパティー」パネルに応答メッセージを表示します。 以下のような形式の在庫詳細がメッセージに含まれます。
    <msg_INVENTORY>
      <msg_DETAILOUT>
        <do_area>2</do_area>
        <do_dept>59</do_dept>
        <do_proj>060</do_proj>
        <do_div>26</do_div>
        <do_unit_price>0.000</do_unit_price>
        <do_reqmts>  10- </do_reqmts>
        <do_on_order>  0  </do_on_order>
        <do_in_stock>  10-</do_in_stock>
        <do_disb>   136  </do_disb>
        <do_cycle>N</do_cycle>
        <do_back_order_cnt> 0</do_back_order_cnt>
      </msg_DETAILOUT>
      <msg_DETAILOUT>
        <do_area>2</do_area>
        <do_dept>59</do_dept>
        <do_proj>109</do_proj>
        <do_div>26</do_div>
        <do_unit_price>2.000</do_unit_price>
        <do_reqmts>  13  </do_reqmts>
        <do_on_order>  0  </do_on_order>
        <do_in_stock>  13 </do_in_stock>
        <do_disb>     6  </do_disb>
       <do_cycle>N</do_cycle>
        <do_back_order_cnt> 0</do_back_order_cnt>
      </msg_DETAILOUT>
    </msg_INVENTORY>
  6. 失敗の経路を検査するために、IMSSyncRequestFailure.mbtest をダブルクリックして、メッセージをテスト・クライアントで開きます。「エンキュー」を選択します。
  7. 「詳細プロパティー」パネルの「メッセージの送信」をクリックすると、次のようなイベントが発生します。
    1. 成功した場合と同じように処理が続きますが、このケースでは単一セグメントのエラー・メッセージが IMS によって戻されます。
    2. セグメントが 1 つだけ存在するためエラー・メッセージが検出され、適切なメッセージ・タイプを使ってデータが構文解析されます。
    3. エラー・データが XML メッセージにコピーされて IMS_SYNC_REQUEST_OUT1 キューに送られます。
  8. 「デキュー」を選択します。「詳細プロパティー」パネルで、「メッセージの取得」をクリックします。
  9. 応答メッセージが WebSphere MQ を介して正常に送られたことを確認するために、XML 構造ビューアーを使って「詳細プロパティー」パネルに応答メッセージを表示します。 以下のような形式のエラー詳細がメッセージに含まれます。
    <msg_REJECTMESSAGE>
      <reject_reason>Part Number BROKEN not in DataBase</reject_reason>
    </msg_REJECTMESSAGE>

これらすべての手順が正常に完了したら、サンプルは完成です。 メイン・メッセージ・フロー内のノードを調べて、結果がどのように生成されたか確認してください。

サンプルのホームに戻る