X12 サンプルの実行
このトピックでは、X12 サンプル・メッセージ・フローを通してテスト・メッセージを書き込む方法を説明します。
入力メッセージ
X12 サンプルには、以下の 3 つのテスト・メッセージが含まれています。
- PurchaseOrder1.mbtest
- PurchaseOrder2.mbtest
- PurchaseOrder_Missing_BEG.mbtest
3 つの入力メッセージはすべて、850 Purchase Order メッセージです。
最初の 2 つの入力メッセージが有効です。
3 番目の入力メッセージは無効です。メッセージに BEG フィールドが欠落しています。
サンプルの実行
サンプルを実行するには、入力キューにメッセージを入れ、出力キューからメッセージを取得することが必要です。
テスト・クライアントのデキュー・セクションを使用して、出力キューからメッセージを取り出すことができます。
想定した出力キュー内にメッセージがない場合、出力キューの名前を、障害キューの名前に変更します。
以下の指示に従ってサンプルを実行してください。
- 入力メッセージの 1 つを X12_TO_XML_IN キューに入れます。
- 「ブローカー開発」ビューで、「X12」メッセージ・フロー・プロジェクトを展開します。.mbtest ファイルの 1 つをダブルクリックして、テスト・クライアントでこれを開きます。
- テスト・クライアントで、「エンキュー」をクリックします。
- 「メッセージの送信」をクリックします。.mbtest ファイル内のメッセージがキューに書き込まれます。
メッセージを X12_TO_XML_IN キューに入れる際、最初のメッセージ・フロー内の X12_TO_XML_IN MQInput ノード (VALIDATINGX122XML.msgflow と呼ばれる) はメッセージを構文解析し、メッセージ・セットに対してそれを妥当性検査します。
- メッセージが有効な X12 メッセージである場合、それは Compute ノードに渡され、そこでは X12 メッセージを XML メッセージに変換します。次いで Compute ノードはメッセージを X12_TO_XML_OUT MQOutput ノードに渡し、それはメッセージを X12_TO_XML_OUT キューに入れます。
- メッセージが有効な X12 メッセージでない場合には、メッセージは X12_FAIL ノードに渡され、それはメッセージを X12_FAIL キューに入れます。
- 「デキュー」を使用して X12_TO_XML_OUT キューから変換後のメッセージを取り出します。
- テスト・クライアントで「デキュー」をクリックします。
- 「メッセージの取得」をクリックして、「X12_TO_XML_OUT」キューからメッセージを読み取ります。
- 「詳細プロパティー」の下で「ソース」が選択されていることを確認します。「ソース」ペイン内のメッセージの内容を右クリックし、「すべて選択」をクリックします。
- メッセージをコピーするには、「ソース」ペインでメッセージの内容を右クリックし、「コピー」をクリックします。
- テスト・クライアントを使用して、ステップ 2 でコピーしたメッセージを XML_TO_X12_IN キューに入れます。
- テスト・クライアントで、「エンキュー」をクリックします。
- 「ソース」ペインでソース・メッセージを右クリックして、「すべて選択」をクリックします。
次に右クリックして「貼り付け」 を選択し、既存のソース・メッセージを置き換えます。
- 「キュー名」フィールドに、XML_TO_X12_IN を入力します。
- 「メッセージの送信」をクリックして、コピーしたメッセージをキューに入れます。
メッセージを XML_TO_X12_IN キューに入れる際、2 番目のメッセージ・フロー内の XML_TO_X12_IN MQInput ノード (VALIDATINGXML2X12.msgflow と呼ばれる) はメッセージを構文解析し、メッセージ・セットに対してそれを妥当性検査します。
- メッセージが有効な XML メッセージである場合、それは Compute ノードに渡され、そこでは XML メッセージを X12 メッセージに変換します。
次いで Compute ノードはメッセージを XML_TO_X12_OUT MQOutput ノードに渡し、それはメッセージを XML_TO_X12_OUT キューに入れます。
- メッセージが有効な XML メッセージでない場合には、メッセージは X12_FAIL ノードに渡され、それはメッセージを X12_FAIL キューに入れます。
- XML_TO_X12_OUT キューからメッセージを取得します。
メッセージは X12 メッセージになっています。
X12_TO XML_OUT または XML_TO_X12_OUT キューにメッセージがない
場合は、WebSphere Message Broker 資料の サンプル実行時の問題の解決を参照してください。
メッセージはまだ入力キュー、X12_FAIL キュー、またはいずれかのシステム・キューにある可能性があります。
PurchaseOrder_Missing_BEG.mbtest メッセージ
BEG フィールドがメッセージにないため、最初のメッセージ・フローを通して
PurchaseOrder_Missing_BEG.mbtest メッセージを入れると、X12_TO_XML_IN MQInput ノード上での妥当性検査が失敗します。
X12_TO_XML_IN MQInput ノードは、メッセージを X12_FAIL キューに入れます。
サンプルのホームに戻る