次の方法で共有


BizTalk WCF サービス発行ウィザードを使用してオーケストレーションを WCF サービスとして発行する方法

BizTalk WCF サービス発行ウィザードを使用して、オーケストレーションを WCF サービスとして発行します。

BizTalk WCF サービス発行ウィザードを実行する前に、BizTalk プロジェクトをビルドする必要があります。 BizTalk プロジェクトには、型修飾子がパブリックである受信ポートが少なくとも 1 つ含まれているオーケストレーションを含める必要があります。 この型修飾子は、ポートの作成時にオーケストレーションのプロパティに存在します。

オーケストレーションを WCF サービスとして発行するには

  1. [ スタート] をクリックし、[ すべてのプログラム] をポイントし、[BizTalk Server] をポイントして、[ BizTalk WCF サービス発行ウィザード] をクリックします。

    WCF アダプターを使用して BizTalk オーケストレーションとスキーマを WCF サービスとして作成および発行するには、BizTalk WCF サービス発行ウィザードを使用します。 オーケストレーションとスキーマを SOAP アダプターを使用して Web サービスとして発行するには、BizTalk Web サービス発行ウィザードを使用します。

  2. [BizTalk WCF サービス発行ウィザードへようこそ] ページで、[次へ] をクリックします。

  3. [ WCF サービスの種類] ページで、[ サービス エンドポイント ] オプションを選択して、BizTalk アセンブリ内の選択した BizTalk オーケストレーションに WCF サービスを発行します。

    WCF サービスの種類ページ

  4. [ WCF サービスの種類 ] ページで、[ メタデータ エンドポイントを有効にする ] チェック ボックスをオンにして、インターネット インフォメーション サービス (IIS) によってホストされている分離された WCF 受信場所が、HTTP/GET 要求を使用して取得するためにサービス メタデータを発行するかどうかを示します。 このチェック ボックスを有効にすると、<serviceMetadata> 要素の httpGetEnabled 属性が true に設定されている Web.config が生成されます。 メタデータ インポート ツール (SvcUtil.exeなど) を使用して、開発環境でこのサービスを呼び出すために必要なクライアント コードを生成できます。 メタデータが発行されるアドレスは、エンドポイント アドレスと ?wsdl クエリ文字列です。

    機密性の高い可能性のあるサービス メタデータが意図せずに漏えいしないようにするには、運用環境でこの動作を無効にすることをお勧めします。 これを行うには、httpgetenabled を false に設定するか、MEX 仮想ディレクトリを削除します。

  5. [ WCF サービスの種類] ページの [ アダプター名 (トランスポートの種類)] ドロップダウン リストで、WCF サービスを発行する分離された WCF アダプターを選択します。 次のいずれかのアダプターを選択できます。

    • WCF-BasicHttp。 WCF-BasicHttp アダプターは、ASMX ベースのサービスなどの WS-I Basic Profile 1.1 準拠 Web サービスと通信できます。

    • WCF-WSHttp。 WCF-WSHttp アダプターは、HTTP および HTTPS 経由で WS-* 標準を介してサービスと通信できます。

    • WCF-CustomIsolated。 WCF-CustomIsolated アダプターを使用すると、HTTP トランスポート経由で Windows Communication Foundation (WCF) の機能拡張機能を使用できます。

  6. [ WCF サービスの種類 ] ページで、[ 次のアプリケーションで BizTalk 受信場所を作成 する] チェック ボックスをオンにして、[ アダプター名 ] ドロップダウン リストで選択した WCF アダプターに対して生成された各 .svc ファイルに対応する受信ポートと場所を作成します。 受信場所が既に存在する場合は、置き換えされません。 このオプションを選択した後、 BizTalk アプリケーション名 ドロップダウン リストで受信ポートと場所が生成されるアプリケーションを選択し、[ 次へ] をクリックします。

  7. [ WCF サービスの作成 ] ページで、[ BizTalk オーケストレーションを WCF サービスとして発行] を選択し、[ 次へ] をクリックします。

    WCF サービスの作成ページ

  8. [ BizTalk アセンブリ] ページの BizTalk アセンブリ ファイル (*.dll) テキスト ボックスに、BizTalk アセンブリ ファイルの名前を入力するか、[ 参照 ] をクリックして発行するオーケストレーションを含むアセンブリを参照し、[ 次へ] をクリックします。

    BizTalk アセンブリ ファイルを選択する前に、すべての依存アセンブリを BizTalk アセンブリと同じフォルダーにコピーするか、依存アセンブリをグローバル アセンブリ キャッシュ (GAC) にインストールします。

    BizTalk アセンブリ ファイルを GAC にインストールした場合は、[ BizTalk アセンブリ] ダイアログ ボックスで選択するアセンブリで GAC 内のアセンブリが更新されていることを確認します。 GAC 内のアセンブリの完全修飾名が同じである場合、BizTalk WCF サービス発行ウィザードでは、選択したアセンブリ ファイルではなく GAC 内のアセンブリ ファイルが使用されます。

    260 文字を超えるパスでは、パスが長すぎるというエラー メッセージが表示されることがあります。

    BizTalk アセンブリ ページ

  9. [ オーケストレーションとポート] ページで、プラス記号 (+) をクリックして、各アセンブリとオーケストレーションのツリー ノードを展開します。 対応するツリー ノードのチェック ボックスをオンにして、発行するオーケストレーションとポートを選択します。 受信ポートごとに 1 つの WCF サービスではなく、選択したすべての受信ポートに対して 1 つの WCF サービス (.svc ファイル) を作成する場合は、[ 選択したすべてのポートを 1 つの WCF サービスにマージ する] オプションを選択し、[ 次へ] をクリックします。

    選択したすべてのポートを 1 つの WCF サービスにマージすると、選択したすべてのポートのポートの種類が同じになり、ポート内の操作名が一意になります。

    操作とポートページ

  10. [WCF サービスのプロパティ] ページの [WCF サービスのターゲット名空間] テキスト ボックスに、WCF サービスのターゲット名前空間を入力し、[次へ] をクリックします。

    WCF サービスのプロパティ ページ

  11. [ WCF サービスの場所 ] ページの [ 場所 ] テキスト ボックスに、WCF サービスが生成される Web ディレクトリ名を入力します。 既定の場所 (http://localhost/<BizTalk Assembly Name>) をそのまま使用するか、[場所 ] テキスト ボックス に WCF サービスの場所を入力するか、[ 参照 ] をクリックして Web ディレクトリを選択します。 次のいずれかのオプションを選択します。

    • 既存のプロジェクトを上書きします。 このオプションは、Web ディレクトリが既に存在する場合にのみ使用できます。 このオプションを選択した場合にのみ、同じ場所に発行できます。 それ以外の場合は、別のプロジェクトの場所を入力する必要があります。

    • WCF サービスへの匿名アクセスを許可します。 このオプションは、作成された仮想ディレクトリに匿名アクセスを追加します。 既定では、仮想ディレクトリは親仮想ディレクトリまたは Web サイト (最上位の仮想ディレクトリの場合) からアクセス特権を継承します。

      このページが完了したら、[ 次へ] をクリックします。

      WCF サービスの場所ページ

    プロジェクトの場所は、別のサーバーに存在できます。 WCF サービスを別のサーバーに発行するには、プロジェクト名を http://<servername>/<WCF service ___location>として入力します。

    プロジェクトの場所は、既定以外の Web サイトに存在できます。 既定以外の Web サイトに発行する場合は、URL に Web サイトのポート番号を含めます。 たとえば、http://<servername>:8080/<WCF service ___location> のようにします。

    ウィザードを使用して受信場所を作成する場合、ウィザードは既定値を使用して受信場所を作成します。 受信パイプラインの既定値は 、Microsoft.BizTalk.DefaultPipelines.PassThruReceive パイプラインです 。 発行された WCF サービスを介して受信したメッセージに特別なパイプライン処理 (検証、関連付け/プロパティの昇格、受信/送信マップなど) が必要な場合は、BizTalk Server 管理コンソールを使用して、受信パイプラインを Microsoft.BizTalk.DefaultPipelines.XMLReceive またはカスタム パイプラインに設定する必要があります。

    このページに到達した後に [WCF サービスとしてのオーケストレーションの発行 ] オプションを使用しない場合は、[ WCF サービスの作成 ] ページで、発行オプションを変更する前に選択した BizTalk アセンブリのサービス名とメソッド名が Web サービスの説明 に表示される場合があります。 これは、発行方法が変更されたときにメモリ内 Web サービスの説明がクリアされないためです。

  12. [WCF サービスの概要] ページで、WCF サービスの設定を確認します。

  13. [ 作成 ] をクリックして WCF サービスを作成します。

  14. [ 完了] をクリックして、BizTalk WCF サービス発行ウィザードを完了します。

  15. BizTalk WCF サービス発行ウィザードを使用して WCF サービスを発行した後、それらを適切に構成する必要があります。 分離 WCF 受信アダプターを構成する方法については、「 BizTalk WCF サービス発行ウィザードを使用して発行された WCF サービスを構成する方法」を参照してください。

こちらもご覧ください

BizTalk WCF サービス発行ウィザードを使用して発行された WCF サービスを構成する方法
チュートリアル: WCF-BasicHttp アダプターを使用した WCF サービスの発行
BizTalk WCF サービス発行ウィザードを使用してスキーマを WCF サービスとして発行する方法