手順 8: BTARN データベース内のメッセージの表示
この手順では、SQL Query Analyzer を使用して、Microsoft® BizTalk Accelerator for RosettaNet (BTARN) データベースに格納されている基幹業務 (LOB) メッセージを表示し、ループバック シナリオが正しく動作していることを確認します。
LOB アプリケーション ユーティリティが LOB メッセージを生成して BTARN に送信すると、イニシエーター (ホーム) とレスポンダー (パートナー) に対して次のイベントが発生します。
開始側ワークフロー
SubmitRNIF は、LOB メッセージを BTARN DATA データベースの MessagesFromLOB テーブルに送信します。
SQL アダプター受信場所がメッセージを取得し、MessageBox データベースに配信します。 SQL アダプターは、ストアド プロシージャを実行する一度に 1 つのメッセージを
GetMessagesFromLOB
取得します。プライベート開始側が MessageBox データベースからメッセージを取得し、追加で昇格されたコンテキスト プロパティを付けて MessageBox データベースに再度ドロップします。
パブリック開始側がサブスクリプション フィルターに基づいて、MessageBox データベースからメッセージを取得します。
HTTP 送信ポートがサブスクリプションに基づいて、RNIFSend パイプラインでメッセージを取得します。 メッセージは、否認不可のために BTARN アーカイブ データベースの MessageStorageOut テーブルに保存され、RNIFSend.aspx ページにメッセージが送信されます。
RNIFSend.aspx ページは、メッセージの最終送信先 (取引先組織の URL) を含むクエリ文字列変数付きの MIME でエンコードされたメッセージを受け取ります。
応答側ワークフロー
BTARN は RNIF メッセージを RNIFReceive.aspx ページに送信します。このページでは、MIME でデコードされたラッパーが削除されます。 メッセージは、同期メッセージまたは非同期メッセージのいずれかとして識別された後、同期または非同期の受信場所 (RNIF_Sync_Receive または RNIF_Async_Receive) に転送されます。
HTTP 受信場所は、最初にメッセージのワイヤ形式を MessageStorageIn テーブルに保存して、BTARN アーカイブ データベースを否認しない場合に使用します。 次に HTTP 受信場所は、デコードおよび暗号化の解除を実行して (RNIF 2.0 の場合)、その署名を検証します。次に XML メッセージ部を逆アセンブルし、署名に基づいて承認してから、昇格された正しいプロパティを付けて MessageBox データベースにドロップします。
パブリック応答側が、サブスクリプションに基づいてメッセージ部を取得し、正しい RNIF 規格に基づいてメッセージを検証および処理します。 Service Content 部が、メッセージに正しいコンテキスト プロパティを付けて MessageBox データベースにドロップします。
SQL 送信ポートがサブスクリプション フィルターに基づいてメッセージを取得します。 その後、BTARN DATA データベースの MessagesToLOB テーブルにメッセージを保存します。
Note
レスポンダー側では、パブリック レスポンダーは、受信確認または例外シグナルをイニシエーターに生成する役割を担います。 BTARN は、シグナル メッセージを MessagesFromLOB テーブルに保存しません。 これは、LOB アプリケーションがシグナル メッセージを生成しないためです。 アクション メッセージは Private Responder を通じて続行され、BTARN によって MessagesToLOB テーブルに保存されます。
Note
ダブルアクション PIP の場合、応答側の LOB は応答メッセージの生成を担当します。 BTARN は MessagesFromLOB テーブルにドロップして、イニシエーター側プロセスと同じプロセスを実行します。 この場合、開始側のパブリック開始側プロセスが、応答メッセージの受信確認または例外シグナルを送信します。
BTARN データベース内のメッセージを表示するには
[スタート] ボタンをクリックし、[すべてのプログラム] をポイントし、[Microsoft SQL Server <バージョン>] をポイントして、[SQL Server Management Studio] をクリックします。
[サーバーに接続] ダイアログ ボックスで、[接続] をクリックします。
Note
オブジェクト エクスプローラー ペインで、SQL Server エージェントが開始されていることを確認します。 そうでない場合は、[SQL Server エージェント] を右クリックし、[開始] をクリックします。
Microsoft SQL Server Management Studioで、[新しいクエリ] をクリックします。
空のクエリ ウィンドウに以下を入力します。
use BTARNArchive SELECT * FROM MessageStorageIn ORDER BY TIMECREATED ASC SELECT * FROM MessageStorageOut ORDER BY TIMECREATED ASC use BTARNData SELECT * FROM MessagesFromLOB ORDER BY TIMECREATED ASC SELECT * FROM MessagesToLOB ORDER BY TIMECREATED ASC SELECT * FROM Attachments ORDER BY TIMECREATED ASC
Microsoft SQL Server Management Studioで、[実行] をクリックします。
MessagesFromLOB テーブル内のアクション メッセージが表示されます。数分後 (この時間はシステム構成によって異なります) にクエリを再度実行すると、MessageCategory 値が AsyncAckSignal (25) および AsyncAction (10) である 2 つのメッセージが MessagesToLOB テーブルに生成されて表示されます。