IMS Synchronous Request サンプルの実行
このサンプルをインポートしてデプロイした後、以下の指示に従って実行することができます。
これらのノードがどのように機能し、構成されるかに関する概要は、WebSphere Message Broker 資料の、IBM 情報管理システム (IMS) を参照してください。
このサンプルでは、2 つのサブフローが含まれるメイン・メッセージ・フロー IMSSyncRequestSample を使用します。
サンプルの実行時に問題を検出した場合は、
WebSphere Message Broker 資料の『サンプル実行時の問題の解決』を参照してください。
サンプルを実行するには、次のようにします。
- 「ブローカー開発」ビューで、「IMSSyncRequestSampleFlowProject」プロジェクトを展開します。
- IMSSyncRequestSuccess.mbtest をダブルクリックして、「テスト・クライアント」でメッセージをオープンし、「エンキュー」をクリックします。
- 「詳細プロパティー」パネルで、「メッセージの送信」をクリックします。
- WebSphere MQ Request XML メッセージが IMS_SYNC_REQUEST_IN1 キューに入ります。このメッセージは IMSSyncRequestSample メッセージ・フローによって読み取られます。
- Mapping ノードを使用して、XML メッセージが IMS バイナリー・フォーマットにマップされます。
- Compute ノードを使用して、MQMD がローカル環境に保存されます。
- IMSRequest ノードは要求を IMS に送り、トランザクションの実行結果を受け取ります。
- 応答は構文解析されて個々のセグメントに分けられ、その内容に基づいて成功または失敗として扱われます (このケースでは成功)。
- その後、セグメントの内容に基づいて、メッセージは REXX メッセージまたは COBOL メッセージとして構文解析されます (このケースでは REXX)。
- 構文解析された応答は XML フォーマットにマップされて、キューに送られます。
- TCPIPClientEmulation フローは要求を IMS_SYNC_REQUEST_OUT1 キューに送ります。
- 「デキュー」を選択して、「詳細プロパティー」パネルで「メッセージの取得」をクリックします。
- 応答メッセージが 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>
- 失敗の経路を検査するために、IMSSyncRequestFailure.mbtest をダブルクリックして、メッセージをテスト・クライアントで開きます。「エンキュー」を選択します。
- 「詳細プロパティー」パネルの「メッセージの送信」をクリックすると、次のようなイベントが発生します。
- 成功した場合と同じように処理が続きますが、このケースでは単一セグメントのエラー・メッセージが IMS によって戻されます。
- セグメントが 1 つだけ存在するためエラー・メッセージが検出され、適切なメッセージ・タイプを使ってデータが構文解析されます。
- エラー・データが XML メッセージにコピーされて IMS_SYNC_REQUEST_OUT1 キューに送られます。
- 「デキュー」を選択します。「詳細プロパティー」パネルで、「メッセージの取得」をクリックします。
- 応答メッセージが WebSphere MQ を介して正常に送られたことを確認するために、XML 構造ビューアーを使って「詳細プロパティー」パネルに応答メッセージを表示します。
以下のような形式のエラー詳細がメッセージに含まれます。
<msg_REJECTMESSAGE>
<reject_reason>Part Number BROKEN not in DataBase</reject_reason>
</msg_REJECTMESSAGE>
これらすべての手順が正常に完了したら、サンプルは完成です。
メイン・メッセージ・フロー内のノードを調べて、結果がどのように生成されたか確認してください。
サンプルのホームに戻る