OrderedSample (BizTalk Server サンプル)
OrderedSample サンプルは、オーケストレーションを使用して、順序付けられた一連のメッセージをラウンド トリップ方式で送受信する方法を示します。
このサンプルの処理
このサンプルでは、サンプルにメッセージを配信する MQSeries キューにメッセージがあることを前提とします。 MQSeries キューのメッセージは、アダプタによって順番に読み取られて BizTalk Server に送信されます。
オーケストレーションの受信ポート mqreceive には、 Ordered Delivery プロパティが True に設定 されています。
送信側では、オーケストレーションによってメッセージが送信され、配信通知の受信後に次のメッセージが送信されます。 送信ポート mqsend には、 配信通知 プロパティが [送信済み] に設定されています。 サンプルをシンプルにするために、オーケストレーションでは無限ループが使用されています。
オーケストレーションでは、メッセージのバッチおよび 1 つのメッセージを受信できます。
このサンプルの場所
<Samples Path>\AdaptersUsage\MQSeriesAdapter\OrderedSample
次の表は、このサンプルのファイルとその目的を示しています。
ファイル | 説明 |
---|---|
OrderedReceiveSend.btproj, OrderedReceiveSend.sln |
アプリケーションのプロジェクトおよびソリューション ファイル。 |
OrderedReceiveSendOrchestration.odx | アプリケーションのオーケストレーション。 |
OrderedSample.snk | 厳密な名前のキー ファイル。 |
Setup.bat | このサンプルを作成および初期化します。 |
サンプルのビルドと実行
サンプルをビルドして展開するには
コマンド ウィンドウで、次のフォルダーに移動します。
<Samples Path>\AdaptersUsage\MQSeriesAdapter\OrderedSample
ファイル Setup.bat を実行すると、次のアクションが実行されます。
プロジェクトの厳密な名前のキー ファイルを作成します。
オーケストレーション プロジェクトをコンパイルして展開します。
MQSeries Server for Windows のインストールに必要なアクセス許可を持っている場合は、アダプターのダイアログ ボックスを使用して MQSeries キューを作成できるため、次の手順を省略できます。 必要なアクセス許可がない場合は、IBM WebSphere MQ エクスプローラーを使用してキューを作成できます。 WebSphere MQ エクスプローラーを使用してキューを作成するには、次の手順を実行します。
WebSphere MQ エクスプローラーを使用した MQSeries キューの作成
WebSphere MQ エクスプローラーを使用して MQSeries キューを作成するには
[スタート] をクリックし、[すべてのプログラム] をポイントし、[IBM WebSphere MQ] をポイントして、[WebSphere MQ エクスプローラー] をクリックします。
[キュー マネージャー] をダブルクリックし、既定のキュー マネージャーをダブルクリックします。 通常、既定のキュー・マネージャーには QM_< という名前が付けられます。ここでmachine_name> machine_nameはコンピューターの名前です。
[ キュー] を右クリックし、[ 新規] をポイントして、[ ローカル キュー] をクリックします。
[ ローカル キューの作成 ] ダイアログ ボックスの [ キュー名] に 「queue1」と入力し、[OK] をクリック します。
[ キュー] を右クリックし、[ 新規] をクリックし、[ ローカル キュー] をクリックします。
[ ローカル キューの作成 ] ダイアログ ボックスの [ キュー名] に 「queue2」と入力し、[OK] をクリック します。
受信場所と MQSeries キューの作成
この手順では、MQSeries へのメッセージ送信および MQSeries からの関連メッセージの受信を行うための送信ポートと受信場所を作成します。 MQSeries キューは、受信場所がまだ作成されていない場合に受信場所を作成したときにも作成されます。
受信場所と MQSeries キューを作成するには
BizTalk Server管理コンソールを開きます。
[BizTalk Server管理] を展開し、[BizTalk グループ] を展開し、[アプリケーション] を展開して、必要なアプリケーションを展開します。
[ 受信ポート] を右クリックし、[ 新規] をポイントして、[ 一方向の受信ポート] をクリックします。
[ 一方向の受信ポートのプロパティ ] ダイアログ ボックスに、「 名前 」ボックスに「 OrderedSampleReceive 」と入力し、[OK] をクリック します。
左側のウィンドウで、[ 受信場所 ] タブをクリックし、[ 新規] をクリックします。
[ 受信場所のプロパティ ] ダイアログ ボックスの [名前 ] ボックスに「OrderedSampleReceiveLocation」と入力します。
[ トランスポートの種類 ] ボックスで、[ MQSeries] を選択します。
[ 受信ハンドラー ] ボックスで、 BizTalkServerApplication を選択します。
[ 受信パイプライン ] ボックスで、[ Microsoft.BizTalk.DefaultPipelines.PassThruReceive] を選択します。
[構成] をクリックします。
[ MQSeries トランスポートのプロパティ ] ダイアログ ボックスの [ ポーリング間隔 ] ボックスに 「10」と入力します。
[ キュー定義 ] ボックスで、 省略記号 (...) ボタンをクリックします。
[ キュー定義 ] ダイアログ ボックスの [ サーバー名 ] ボックスに、コンピューター名を入力します。
[ キュー マネージャー ] ボックスで、 既定のキュー マネージャーを選択します。
[ キュー ] ボックスに「 queue1」と入力し、[ エクスポート] をクリックします。
[ エクスポート ] ダイアログ ボックスで、[ キューの作成] をクリックし、すべてのダイアログ ボックスを終了するまで [OK] または [完了 ] をクリックします。
送信ポートと MQSeries キューの作成
送信ポートと MQSeries キューを作成するには
[ 送信ポート] を右クリックし、[ 新規] をポイントして、[ 静的一方向送信ポート] をクリックします。
[ 静的ポートのプロパティ ] ダイアログ ボックスに、「 名前 」ボックスに「OrderedSampleSend」と入力します。
[ トランスポートの種類 ] ボックスで、[ MQSeries] を選択します。
[ パイプラインの送信 ] ボックスで、[ Microsoft.BizTalk.DefaultPipelines.PassThruTransmit] を選択します。
[構成] をクリックします。
[ MQSeries トランスポートのプロパティ ] ダイアログ ボックスの [ キュー定義 ] ボックスで、 省略記号 (...) ボタンをクリックします。
[ キュー定義 ] ダイアログ ボックスの [ サーバー名 ] ボックスに、コンピューター名を入力します。
[ キュー マネージャー ] ボックスで、 既定のキュー マネージャーを選択します。
[ キュー ] ボックスに「 queue2」と入力し、[ エクスポート] をクリックします。
[ エクスポート ] ダイアログ ボックスで、[ キューの作成] をクリックし、すべてのダイアログ ボックスを終了するまで [OK] または [完了 ] をクリックします。
受信場所を有効にして送信ポートを開始するには
BizTalk Server管理コンソールで、[受信ポート] をクリックします。
詳細ペインで、 MQIn 受信場所を右クリックし、「 使用可能」をクリックします。
詳細ペインで、 MQOut 送信ポートを右クリックし、「開始」をクリックします 。
オーケストレーションをバインドして開始するには
BizTalk Server管理コンソールで、[オーケストレーション] フォルダーを展開します。
OrderedSampleOrchestration オーケストレーションをダブルクリックし、[バインド] をクリックします。
オーケストレーション ポートを、以下の送信ポートおよび受信場所にバインドします。
オーケストレーション ポート メッセージ ポート/受信場所 mqreceive OrderedSampleReceive mqsend OrderedSampleSend [ ホスト] をクリックします。
[ ホスト ] ボックスで、[ BizTalkServerApplication] を選択し、[OK] をクリック します。
[オーケストレーション] を右クリックし、[開始] をクリックします。
サンプルを実行するには
オーケストレーションを開始します。
受信場所で読み取るよう構成した MQSeries キューにメッセージを配置します。
送信ポートでメッセージを送信するよう構成した送信キューのメッセージを WebSphere MQ エクスプローラーで表示します。