開始する前に、Video Rental サンプルを事前にインポートしてデプロイしておく必要があります。 このサンプルをインポートすると、.msgflow ファイルに関するいくつかの警告が出ることがあります。 そのような警告は、データベースに関連するものであり、サンプルの実行には影響しません。 また、妥当性検査に関する警告が Toolkit に示されることもあります。この警告は、メッセージ・セット関連のものであり、サンプルの実行には影響しません。
このトピックでは、CWF、XML、および TDS 入力メッセージを Video メッセージ・フローに入れる方法を説明します。 さらに、サンプルが動作して適切な結果を受け取ったことをチェックする方法についても説明します。
サンプルの実行時に問題を検出した場合は、 WebSphere Message Broker 資料の『サンプル実行時の問題の解決』を参照してください。
このサンプルを実行するには、入力キュー上にメッセージを置き、出力キューからメッセージを取得する必要があります。 次の表に示されているように、対応する入力キューにいずれかのメッセージを入れて開始します。サンプルが正しくセットアップされていれば、応答メッセージが VIDEO_OUT キューに入れられます。 その後、他のメッセージの処理を繰り返すことができます。
ファイル | 入力キュー |
---|---|
videomsgcwf.mbtest | VIDEO_CWF_IN |
videomsgxml.mbtest | VIDEO_XML_IN |
videomsgtds.mbtest | VIDEO_TDS_IN |
メッセージを関連するキューに書き込むには、次のようにします。
VIDEO_OUT キューからメッセージを取得するには、次のようにします。
メッセージ・フローにメッセージを入れると、VIDEO_OUT キューにメッセージを受け取ることになります。 そのメッセージは、次のように変換されています。
3 つの入力メッセージの ID フィールドには、顧客の指定した ID の種類を示す 1 文字が含まれています。
メッセージの IdGroup フィールドは、そのパスポート、運転免許証、あるいはクレジット・カードの番号を示すものです。 メッセージがこのように編成される理由については、『メッセージ・モデルの構造』を 参照してください。
XML および TDS メッセージでは、ID タイプとしてパスポートが使用されています。 CWF メッセージの場合の ID はクレジット・カードです。 使用している ID のタイプを運転免許証に変更した場合の影響を確認するには、下の表に示されている変更を加えてから、 通常どおりメッセージを対応する入力キューに入れてください。ワークベンチの中でファイルを編集するには、「ブローカー開発」ビューでそのファイルをダブルクリックしてください。 エディター・ビューでそのファイルが表示されます。変更を加える際には、次の点に注意してください。
ファイル名 | 変更前の値 | 新しい値 |
---|---|---|
videomsgxml.mbtest | <ID>P</ID> | <ID>D</ID> |
<PassportNo>J123456TT</PassportNo> | <DrivingLicenseNo>xxxxxx</DrivingLicenseNo> | |
videomsgtds.mbtest | &ID:P&PassportNo:J123456TT | &ID:D&DrivingLicenseNo:xxxxxx |
videomsgcwf.mbtest | C (Salisbury と J123456TT の間) | D |
未解決の選択項目を CWF パーサーがどう処理するかを調べるには、メッセージ・フローをトレースすることができます。 このサンプルにおける未解決選択処理の詳細については、『Video Rental メッセージ・セットについて』を 参照してください。
未解決の選択項目の処理について調べるには、
(0x0100001B):MRM = ( (0x01000013):Name = ( (0x0300000B):LastName = 'Bloggs ' (0x0300000B):Title = 'Mr ' (0x0300000B):FirstName = 'Fred ' ) (0x01000013)http://www.ibm.com/AddressDetails:Address = ( (0x0300000B):HouseNo = 12 (0x0300000B):Street = 'Willow Avenue ' (0x0300000B):Town = 'Salisbury ' ) (0x0300000B):ID = 'C' (0x0300000B):CreditCardNo = 'J123456TT ' (0x01000013)http://www.ibm.com/BorrowedDetails:Borrowed = ( (0x0300000B):VideoTitle = 'Fast Cars ' (0x0300000B):DueDate = TIMESTAMP '2003-05-23 00:00:00' (0x0300000B):Cost = 3.00 ) (0x01000013)http://www.ibm.com/BorrowedDetails:Borrowed = ( (0x0300000B):VideoTitle = 'Cut To The Chase ' (0x0300000B):DueDate = TIMESTAMP '2003-05-23 00:00:00' (0x0300000B):Cost = 3.75 ) (0x0300000B):Magazine = TRUE