次の方法で共有


SOAP の受信場所を構成する方法

SOAP 受信場所は、プログラムから、または BizTalk Server 管理コンソールを使用して構成できます。

プログラムから SOAP の受信場所を構成する方法

BizTalk エクスプローラー オブジェクト モデルを使用すると、プログラムで受信場所を作成および構成できます。 BizTalk エクスプローラー オブジェクト モデルは、TransportTypeData の読み取り/書き込みプロパティを持つIReceiveLocation 受信場所構成インターフェイスを公開します。 このプロパティでは、名前と値の組の XML 文字列の形式で SOAP の受信場所の構成プロパティ バッグを指定できます。 BizTalk エクスプローラー オブジェクト モデルでこのプロパティを設定するには、IReceiveLocation インターフェイスの InboundTransportLocation プロパティを設定する必要があります。

IReceiveLocation インターフェイスの TransportTypeData プロパティを設定する必要はありません。 このプロパティを設定しない場合、SOAP アダプターでは、次の表に記載されている SOAP 受信場所の構成の既定値が使用されます。

次の表に、BizTalk エクスプローラーのオブジェクト モデルで SOAP 受信場所用に設定できる構成プロパティを示します。

プロパティ名 Type 説明
URI String 展開サーバーの Web サービスを含んでいる仮想ディレクトリです。
AddressableURI String 呼び出し可能な URL 全体を含むパブリック アドレス フィールドです。

既定値: 空白
UseSSO Boolean SOAP アダプターが、この受信場所で受信するメッセージにシングル サインオン チケットを発行するかどうかを指定します。

既定値: False

これらのプロパティを設定するには、以下の形式を使用します。

receiveLocation.TransportTypeData = "<CustomProps><UseSSO vt=\"11\">-1</UseSSO></CustomProps>";  

URI プロパティと AddressableURI プロパティは、受信場所オブジェクトの Address プロパティと PublicAddress プロパティを使用して設定されます。

次のコードは、SOAP 受信場所の作成方法を示しています。

// Use BizTalk Explorer object model to create new SOAP receive location.  
string server = System.Environment.MachineName;  
string database = "BizTalkMgmtDb";  
string connectionString = string.Format("Server={0};Database={1};Integrated Security=true", server, database);  
//requires project reference to \Program Files\Microsoft BizTalk Server 2009\Developer Tools\Microsoft.BizTalk.ExplorerOM.dll  
BtsCatalogExplorer explorer = new Microsoft.BizTalk.ExplorerOM.BtsCatalogExplorer();  
explorer.ConnectionString = connectionString;  

// Add a new Request-Response port  
ReceivePort receivePort = explorer.AddNewReceivePort(true);  
receivePort.Name = "SampleReceivePort";  
receivePort.SendPipeline = explorer.Pipelines["Microsoft.BizTalk.DefaultPipelines.PassThruTransmit"];  

// Add primary SOAP receive location  
ReceiveLocation receiveLocation = receivePort.AddNewReceiveLocation();  
receiveLocation.Name = "SampleReceiveLocation";  
receiveLocation.Address = "/PurchaseOrder/POOrchestration.asmx";  
receiveLocation.TransportType = explorer.ProtocolTypes["SOAP"];  
receiveLocation.TransportTypeData = "<CustomProps><UseSSO vt=\"11\">-1</UseSSO></CustomProps>";  
receiveLocation.ReceivePipeline = explorer.Pipelines["Microsoft.BizTalk.DefaultPipelines.PassThruReceive"];  
foreach (ReceiveHandler receiveHandler in explorer.ReceiveHandlers)  
{  
if (receiveHandler.TransportType.Name == receiveLocation.TransportType.Name)  
{  
receiveLocation.ReceiveHandler = receiveHandler;   
}  
}  

// Save  
explorer.SaveChanges();   

BizTalk Server 管理コンソールを使用して SOAP の受信場所を構成する方法

SOAP の受信場所のアダプタ変数は、BizTalk Server 管理コンソールで設定できます。 プロパティが受信場所に設定されていない場合は、BizTalk Server 管理コンソールで設定された既定の受信ハンドラーの値が使用されます。

Note

次の手順を実行する前に、受信ポートを追加しておく必要があります。 詳細については、「 受信ポートを作成する方法」を参照してください。

SOAP の受信場所の変数を構成するには

  1. BizTalk Server管理コンソールで、[BizTalk Server管理] を展開し、[BizTalk グループ]、[アプリケーション] の順に展開し、受信場所を作成するアプリケーションを展開します。

  2. BizTalk Server管理コンソールの左側のウィンドウで、[受信ポート] ノードをクリックします。 次に右ウィンドウで、既存の受信場所に関連付けられているか、新しい受信場所に関連付ける受信ポートを右クリックし、[ プロパティ] をクリックします。

  3. [ 受信ポートのプロパティ ] ダイアログ ボックスの左側のウィンドウで [ 受信場所] を選択し、右側のウィンドウで既存の受信場所をダブルクリックするか、[ 新規] をクリックして新しい受信場所を作成します。

  4. [受信場所のプロパティ] ダイアログ ボックスの [種類] の横にある [トランスポート] セクションで、ドロップダウン リストから [SOAP] を選択し、[構成] をクリックします。

  5. [ SOAP トランスポートのプロパティ ] ダイアログ ボックスで、次の操作を行います。

    プロパティ 目的
    [仮想ディレクトリと Web サービス .asmx ファイル] Microsoft BizTalk Web サービス公開ウィザードで作成された .asmx ファイルを示します。

    このメッセージの形式は次のようになります。

    /PurchaseOrder/POOrchestration.asmx

    .asmx ファイルの完全な場所 http://localhost/PurchaseOrder/POOrchestration.asmx. メモ: 送信ポートまたは受信場所の URI は 256 文字を超えることはできません。
    パブリック アドレス この受信場所の完全修飾 URI を指定します。 このプロパティの値は、サーバー名と仮想ディレクトリの組み合わせです。 指定した URI は、取引先から BizTalk Server へのメッセージの送信時に接続するためのパブリック Web サイト URL を示す必要があります。

    この情報は省略可能で、BizTalk Server では使用されません。 このパラメーターを使用すると、管理者は、受信場所が関連付けられているパブリック URL を記述できます。
    シングル サインオンの使用 SOAP アダプターがエンタープライズ シングル サインオンを使用することを示します。 メモ:BizTalk Web サービス発行ウィザードでは、シングル サインオンSharePoint Portal Server使用できます。このプロパティでは、エンタープライズ シングル サインオンのみが有効になります。
  6. [OK] をクリックします。

  7. [ 受信場所のプロパティ ] ダイアログ ボックスで、受信場所の構成を完了するための適切な値を入力し、[ OK] を クリックして設定を保存します。 [ 受信場所のプロパティ ] ダイアログ ボックスの詳細については、「 受信場所を作成する方法」を参照してください。

    SOAP の受信場所で使用されるセキュリティ設定は IIS で設定します。 既定では、SOAP の受信場所は、匿名認証を使用するように設定されていません。

    SOAP クライアントが Web サービスを呼び出すと、SOAP アダプターでは、匿名認証、基本認証、ダイジェスト認証、または Windows 統合認証を使用して SOAP クライアントを認証します。 ユーザーが確認されると、受信ハンドラーにユーザー コンテキストが渡されます。

Note

同一プロセスを共有する SOAP と HTTP を使用する IIS 構成は無効です。 プロセスごとに 1 つの分離受信場所のみを指定できます。

ASP.NET 4.0 を使用するように仮想ディレクトリを更新するには

  1. インターネット インフォメーション サービス (IIS) マネージャーを起動します。 [ スタート] ボタンをクリックし、[ すべてのプログラム] をクリックして、[ インターネット インフォメーション サービス (IIS) マネージャー] をクリックします。

  2. リモート IIS サーバーに接続する必要がある場合は、[ インターネット インフォメーション サービス ] ノードを右クリックし、[ 接続] をクリックします。

  3. リモートの IIS サーバーのコンピューター名を入力し、必要な場合は資格情報を入力します。

  4. 設定を更新する Web サイトまたは仮想ディレクトリをホストしているサーバー名を展開します。

  5. [ サイト] を展開します

  6. [既定の Web サイト] を展開します

  7. 規定の Web サイトを展開し、Web サイトの下にある仮想ディレクトリを表示します。

  8. ASP.NET 4.0 を使用するように更新する仮想ディレクトリを右クリックし、[ アプリケーションの管理] をクリックし、[ 詳細設定] をクリックします。 [ アプリケーション プール ] フィールドには、選択した仮想ディレクトリのアプリケーション プール セットが表示されます。 [OK] をクリックします。

  9. [インターネット インフォメーション サービス (IIS) マネージャー] ウィンドウで、[ アプリケーション プール] をクリックします。 詳細ペインに、サーバーのアプリケーション プールの一覧が表示されます。

  10. 手順 8 で設定したアプリケーション プールを右クリックし、[ 基本設定] をクリックします。

  11. [ アプリケーション プールの編集 ] ダイアログ ボックスで、次のように変更します。

    • バージョンを4.0 に.NET Frameworkする

    • マネージド パイプライン モード から クラシック

  12. [OK] をクリックして変更を適用します。

参照

Web サービスの利用