メッセージングのみのシナリオで Web サービスを使用する方法
SOAP アダプターの新しい機能強化の 1 つは、コンテンツ ベースのルーティング送信ポートを使用して、メッセージングのみのシナリオで Web サービスを呼び出す機能です。 この機能により、オーケストレーションを作成せずに Web サービスを使用することが可能になります。 また、メッセージがオーケストレーションで処理されないため、Web サービスの使用におけるパフォーマンスが向上します。
メッセージングのみのシナリオで Web サービスを使用するには、次の手順を実行します。
Web サービスを呼び出すためのプロキシ ライブラリおよび XML スキーマを作成します。
Web サービスを使用するための送信ポートおよび受信場所を構成します。
Web サービスを呼び出すためのプロキシ ライブラリおよび XML スキーマを作成するには
Web サービスの URL を決定します。
Visual Studio ソリューションで空のBizTalk Server プロジェクトを開きます。 BizTalk Server プロジェクトを作成する方法の詳細については、「BizTalk プロジェクトを作成する方法」を参照してください。
Note
このチュートリアルでは、BizTalk Server プロジェクトを利用して、Web サービスで使用するプロキシ ライブラリおよび XML スキーマを作成します。 .NET Framework 4.0 SDK の Wsdl.exe と Xsd.exe を同じ目的で使用することもできます。
ソリューション エクスプローラーで、BizTalk Server プロジェクト名を右クリックし、[サービス参照の追加] をクリックします。
[ サービス参照の追加 ] ダイアログ ボックスで、[ 詳細設定] をクリックします。
[サービス参照設定] ダイアログ ボックスの [互換性] セクションの [Web 参照の追加] をクリックします。
[ Web 参照の追加 ] ダイアログ ボックスで、次の操作を行います。
[ URL ] フィールドに Web サービス URL を入力し、[ 移動] をクリックします。
[ Web 参照名 ] フィールドに名前空間の名前を入力し、[ 参照の追加] をクリックします。
Web 参照は、ソリューション エクスプローラーの [Web 参照] ノードの下に表示されます。
ヒント
BizTalk プロジェクトに Web 参照を追加すると、プロジェクト名または [参照] または [Web 参照] を右クリックすると、[Web 参照の追加] コマンドを直接使用できるようになります。
ソリューション エクスプローラーでプロジェクト名を右クリックし、[プロパティ] をクリックして Project Designerを起動します。
[プロジェクト] Designerで、[署名] タブをクリックします。
[ アセンブリに署名する ] オプションを選択し、[ 厳密な名前のキー ファイルの選択] のドロップダウン リストをクリックし、[ 参照] をクリックします。
アセンブリ キー ファイルを参照して選択し、[ 開く] をクリックします。
ソリューション エクスプローラーでプロジェクト名を右クリックし、[ビルド] をクリックします。
ソリューション エクスプローラーでプロジェクト名を右クリックし、[配置] をクリックします。
Web サービスを使用するための送信ポートおよび受信場所を構成するには
BizTalk Server 管理コンソールで、送信ポートを作成します。 詳細については、「 送信ポートを作成する方法」を参照してください。 送信ポートを作成するときは、トランスポートの種類またはトランスポート プロトコルとして SOAP を選択します。
次の設定を使用して、SOAP 送信ポートを構成します。 詳細については、「 SOAP 送信ポートを構成する方法」を参照してください。
プロパティ 目的 以下の設定 次のプロパティを指定するために、このオプションを選択します。 [アセンブリ名] 前の手順で作成したアセンブリを選択します。 アセンブリの完全修飾名は、SOAP アダプターの AssemblyName プロパティに書き込まれます。 型名 呼び出す Web メソッドを含むクラスの名前を指定します。 型名は、SOAP アダプターの TypeName プロパティに書き込まれます。 メソッド名 リスト ボックスでメソッドの 1 つを指定します。 Web メソッドは、Soap Adapter MethodName プロパティに書き込まれます。 Note
コンテンツ ベースのルーティング (CBR) を使用する場合は、送信ポートのフィルターを構成します。 詳細については、「 送信ポートのフィルターを構成する方法」を参照してください。
Note
呼び出された Web サービスからの応答メッセージに対するサブスクライバーがない場合は、ルーティング障害のエラーが発生します。