HTTPRequestResponse
HTTPRequestResponse サンプルは、Microsoft BizTalk Server Internet Server Application Programming Interface (ISAPI) フィルターを使用して、ASP.NET アプリケーションがBizTalk Server オーケストレーションと通信できるようにする方法を示しています。
このサンプルの処理
このサンプルでは、ASP.NET アプリケーションが BizTalk Server ISAPI フィルターに要求を送信します。 オーケストレーションは、このメッセージを受信し、同期応答を使用して ASP.NET アプリケーションにメッセージを返します。 BizTalk Server ISAPI フィルターを使用して、BizTalk Server オーケストレーションと ASP.NET アプリケーションの統合を実現します。
このサンプルでは、以下の手順を使用して、BizTalk Server と ASP.NET アプリケーションの間で、注文書 (PO) および PO の受信確認を交換します。
ASP.NET アプリケーションが HTTP 要求を使用して、XML PO メッセージを BizTalk Server に送信します。
BizTalk Server は XML PO メッセージを受け取り、XML PO 受信確認メッセージを構築します。その後、そのメッセージを HTTP 応答で ASP.NET アプリケーションに返します。
ASP.NET アプリケーションは XML PO 受信確認応答を受け取り、応答から抽出されたステータス情報で Web フォームを更新します。
このサンプルの場所
<Samples Path>\AdaptersUsage\HTTPRequestResponse\
次の表は、このサンプルのファイルとその目的を示しています。
ファイル | 説明 |
---|---|
Cleanup.bat | 必要に応じて、アセンブリの展開の解除とグローバル アセンブリ キャッシュ (GAC) からのアセンブリの削除、送信および受信ポートの削除、Microsoft インターネット インフォメーション サービス (IIS) の仮想ディレクトリの削除などを行います。 |
HTTPRequestResponse.btproj、HTTPRequestResponse.sln | HTTP 要求の受信、PO メッセージの処理、および応答の発行を行う BizTalk プロジェクトのプロジェクト ファイルおよびソース ファイルを提供します。 |
HTTPRequestResponseBinding.xml | ポートのバインドなど、自動化されたセットアップを提供します。 |
POAck.xsd、POSchema.xsd | PO 受信確認および PO .xml ファイルのスキーマをそれぞれ提供します。 |
POReceiveOrchestration.odx | PO の受信、PO の処理、および PO 受信確認を行う BizTalk Server オーケストレーションを提供します。 |
Setup.bat | このサンプルを作成および初期化します。 |
\RequestResponse フォルダー内 AssemblyInfo.cs、default.aspx、default.aspx.cs、Global.asax、Global.asax.cs、RequestResponse.csproj、RequestResponse.csproj.webinfo、RequestResponse.sln、Web.config |
このサンプルのドライバーとして機能する ASP.NET アプリケーションを構成するファイル (プロジェクト ファイルとソリューション ファイル、ASPX ファイル、Microsoft Visual C# .NET ソース ファイルなど) を含みます。 |
このサンプルのビルドと初期化
次の手順を使用して、HTTPRequestResponse サンプルをビルドおよび初期化します。
このサンプルを作成および初期化するには
コマンド ウィンドウで、次のフォルダーに移動します。
<サンプル パス>\AdaptersUsage\HTTPRequestResponse
次のアクションを実行するファイル Setup.bat を実行します。
このサンプルを実行する ASP.NET アプリケーションをコンパイルし構成します。
Note
IIS マネージャーでアプリケーション プールを作成するときに、DefaultAppPool .NET Framework バージョンを .Net Framework v4.0 に設定します。
このサンプルで使用する BizTalk Server オーケストレーションをコンパイルし、展開します。
このサンプルの Microsoft Visual Studio プロジェクトをコンパイルしてデプロイします。
必要な BizTalk Server ポートを作成しバインドします。
BizTalk Server オーケストレーションを開始します。
重要
Web アプリケーションを実装するサンプル コード (Default.aspx.cs) を変更して環境を反映する必要があります。
< http:// server name>/virtual dir>/<BTSHTTPReceive.dll。 は
<servername>
投稿先の Web サーバーの名前であり<
、virtual dir>
は、このファイルが存在する仮想ディレクトリです。Note
このサンプルを実行する前に、BizTalk がビルド プロセス中および初期化プロセス中にエラーを報告していないことを確認してください。
Note
ファイル Setup.bat を実行せずにこのサンプルのプロジェクトを開いてビルドする場合は、まず、.NET Framework厳密名ユーティリティ (sn.exe) を使用して厳密な名前キー ペアを作成する必要があります。 このキー ペアは、生成されたアセンブリの署名に使用します。 プロジェクトをビルドする前に、default.aspx.resx および Global.asax.resx への参照を RequestResponse.csproj ファイルから手動で削除する必要もあります。
Note
Setup.bat によって行われた変更を元に戻すには、Cleanup.bat を実行します。 Setup.bat を 2 回目に実行する場合は、その前に Cleanup.bat を実行してください。
Note
HTTP 受信アダプターを使用するように IIS を構成して有効化する必要があります。 詳細については、「 HTTP 受信場所用に IIS を構成する方法」を参照してください。
Setup.bat ファイルを実行すると、このサンプルの仮想ディレクトリが構成され、既定の Web サイトに関連付けられた IIS アプリケーション プールで実行されるよう設定されます。 BizTalk 分離ホスト ユーザーと IIS_IURS ユーザー グループのユーザーのコンテキストで実行するようにこのサンプルの仮想ディレクトリを構成するには、新しい IIS アプリケーション プールで実行するように仮想ディレクトリを構成する必要があります。 仮想ディレクトリを新しい IIS アプリケーション プールで実行するよう構成するには、次の手順を実行します。
Note
別の SDK サンプル用に新しいアプリケーション プールを作成済みの場合は、次の最後の手順に進むことができます。
[スタート] をクリックし、[すべてのプログラム] を指し、[管理ツール] を指し、[インターネット インフォメーション サービス (IIS) マネージャー] をクリックします。
インターネット インフォメーション サービス (IIS) マネージャーで、[アプリケーション プール] フォルダーに移動します。
[アプリケーション プール] フォルダーを右クリックし、[新規]、[アプリケーション プール]の各ボタンをクリックします。
アプリケーション プール ID の名前 (BizTalkSDKSamples など) を入力し、[新しいアプリケーション プールに既定の設定を使用する] オプションが選択されていることを確認し、[OK] をクリックして新しいアプリケーション プールを作成します。
新しいアプリケーション プールを右クリックし、[ プロパティ] をクリックします。
[プロパティ] ダイアログ ボックスの [ ID ] タブをクリックし、このアプリケーション プールを実行する ID を 、BizTalk Isolated Host Users ユーザー グループのメンバーであるユーザーに変更します。 このユーザーは、ローカル IIS_IURS ユーザー グループのメンバーである必要もあります。
この SDK サンプルの仮想ディレクトリを、新しいアプリケーション プールで実行するよう構成します。 [アプリケーション プール] 設定は、[仮想ディレクトリのプロパティ] ダイアログ ボックスの [仮想ディレクトリ] タブで使用できます。 このサンプルで作成される仮想ディレクトリは、HttpRequestResponseSample という名前になります。
このサンプルの実行
次の手順を使用して、HTTPRequestResponse サンプルを実行します。
このサンプルを実行するには
[インターネット エクスプローラー] で、 に移動します。http://localhost/RequestResponse/.
Web フォームで必要なフィールドに入力し、[注文] をクリックして 注文 を送信します。
応答を受信した後、Web フォームが更新される際に注文のステータスを確認します。
説明
このサンプルで使用される BTSHTTPReceiveISAPI 拡張機能は、1 台のコンピューターの既定のインストールで動作するように構成されています。 このサンプルを拡張して追加の構成を行う場合は、「 HTTP アダプター」を参照してください。
このサンプルは、Web フォームまたは一般的な HTTP を介して BizTalk Server にデータを送信するために必要なアプリケーションに拡張できます。 このサンプルの ASP.NET アプリケーションの部分を拡張すると、さらに多くの情報をクエリして、BizTalk Server にデータを送信する前にその他の処理を実行できます。