レッスン 2: HRApplicationServices ワークフロー サービスの配置

目標: Visual Studio でワークフロー サービスの配置設定を設定し、配置パッケージ (*.zip ファイル) を作成する方法を学習します。さらに、インターネット インフォメーション サービス (IIS) 管理ツールを使用して、IIS 上でパッケージを展開します。

目的: WCF サービスまたは WF サービス、またはその両方が含まれているアプリケーションを配置します。

前提条件

このレッスンを開始する前に、次の要件に注意してください。

  • AppFabric をインストールして構成する必要があります。詳細については、「レッスン 1: はじめに」を参照してください。

  • チュートリアル ファイルをインストールする必要があります。詳細については、「レッスン 1: はじめに」を参照してください。

配置パッケージの作成

Visual Studio で配置の値を設定するには

  1. Visual Studio 2010 を開き、管理者として実行します。[スタート] メニューで [すべてのプログラム] をクリックし、[Visual Studio 2010] フォルダーを開き、[Microsoft Visual Studio 2010] を右クリックして、[管理者として実行] をクリックします。

  2. ソリューションをビルドします。[ビルド] メニューで [ソリューションのビルド] をクリックするか、F6 キーを押します。

  3. [HRApplicationServices] ノードを展開します。このノードには、配置するワークフロー サービスが含まれています。

  4. [Web.config] ノードを展開します。2 つのサブ ノードがあることに注意してください。[Web.Debug.config] と [Web.Release.config] です。

  5. [Web.Release.config] ファイルを開き、内容を確認します。既定のファイルには 4 つの要素だけが含まれています。<xml><configuration><system.web>、および **<compiliation>**です。ただし、完了している構成ファイルには次のコードが含まれています。

    <configuration xmlns:xdt=
           "http://schemas.microsoft.com/XML-Document-Transform">
      <!--Modify the BaseURI key -->
      <appSettings>
        <add key="BaseURI"
             value="http://localhost/HRApplicationServices"
             xdt:Transform="SetAttributes(value)"
             xdt:Locator="Match(key)"/>    
      </appSettings>
      <system.serviceModel>
        <client>
          <!--Modify the endpoint addresses for production -->
          <endpoint
            address="http://localhost/HRApplicationServices/SubmitApplication.xamlx"
            binding="basicHttpBinding"
            bindingConfiguration="BasicHttpBinding_IApplicationService"
            contract="IApplicationService"
            name="BasicHttpBinding_IApplicationService"
            xdt:Transform="SetAttributes(address)" xdt:Locator="Match(name)"/>
        </client>
      </system.serviceModel>
      <system.web>
        <compilation xdt:Transform="RemoveAttributes(debug)" />
      </system.web>  
    </configuration>
    

    <appSettings> 要素に注意してください。

    <appSettings>
        <add key="BaseURI"
             value="http://localhost/HRApplicationServices"
             xdt:Transform="SetAttributes(value)"
             xdt:Locator="Match(key)"/>    
      </appSettings>
    

    MSDeploy を使用して配置した場合、変換によって MSBuild プロセスにより <appSettings> XML 要素の BaseURI が検索され、属性値が http://localhost/HRApplicationServices に定義されている値と置換されます。

    プロジェクトがビルドされ、構成ファイルが作成されると、変換された web.config に次の行が表示されます。

    <appSettings>
        <add key="BaseURI" value="http://localhost/HRApplicationServices" />
      </appSettings>
    
  6. この構成には、サービスへの接続に必要な Windows Communication Foundation (WCF) の値を定義する <system.ServiceModel> 要素も含まれています。要約すると、このセクションには、サービスのアドレス、バインド、およびコントラクト情報が提供されています。詳細については、「構成ファイルを使用したサービスの構成」を参照してください。

  7. Visual Studio のツールバーで、構成を [デバッグ] から [リリース] に切り替えます。

    Visual Studio: [リリース] の切り替え

  8. ソリューション エクスプローラーで、HRApplicationServices プロジェクトを右クリックし、[パッケージ化/発行の設定] をクリックします。プロジェクトのプロパティ ページの「Web のパッケージ化/発行」セクションが開きます。

  9. [配置する項目 (すべての配置方法に適用)] で、[このアプリケーションの実行に必要なファイルのみ] が選択されていることを確認します。

  10. [Web 配置のパッケージ化の設定] で、[ZIP ファイル形式で配置パッケージを作成する] がオンになっていることを確認します。

  11. パッケージを作成する場所をクリップボードにコピーします。既定では、次の場所です。

    Obj\Release\Package\<solution name.zip>

  12. 使用する IIS Web サイト/アプリケーションの名前を移行先サーバーに設定します。

  13. ソリューション内のすべてのファイルを保存します。

配置パッケージを作成するには

  • [HRApplicationServices] を右クリックし、[配置パッケージの作成] をクリックします。処理が完了した時点で、左下隅に状態として [発行は成功しました] が表示されます。

IIS へのアプリケーションのインポート

このセクションでは、アプリケーションを配置して、[バインド] 設定を編集し、AppFabric で通信に net.pipe プロトコルを使用できるようにします。

HRApplicationServices アプリケーションをインポートするには

  1. [スタート] > [ファイル名を指定して実行] の順にクリックし、「inetmgr」と入力して、IIS マネージャーを起動します。

  2. [サーバー] ノードを展開し、[サイト] を展開して、[既定の Web サイト] を右クリックします。さらに、[配置/インポート] をクリックし、[アプリケーションのインポート] をクリックします。

  3. アプリケーションの .zip ファイルのパスをダイアログ ボックスに貼り付けます。

  4. [アプリケーション パッケージのインストール] ダイアログにアプリケーションとデータベースが表示されます。既定の値を受け入れます。

  5. [次へ] を 3 回クリックして、アプリケーション パッケージのインポート ウィザードの残りのページに既定値を使用します。このアプリケーションを既定の .NET 4 アプリケーション プールで実行するかどうかを問われたら、[はい] をクリックします。

  6. [サマリー] ページに、パッケージからインストールされた一部の項目の概要が提供されます。[詳細] タブには、追加された内容の正確な詳細が提供されます。

net.pipe プロトコルの有効化

AppFabric では、ワークフロー永続性ストアと連動して信頼性とインスタンス制御を提供するワークフロー管理サービス (WMS) がインストールされます。WMS は、net.pipe プロトコルを使用してワークフロー サービスと通信します。したがって、アプリケーション上でこのプロトコルが有効である必要があります。

net.pipe バインドを有効にするには

  1. IIS マネージャー で [既定の Web サイト] を右クリックし、[バインドの編集...] をクリックします。

  2. リストで、[バインド情報] にアスタリスク (*) を指定して、net.pipe を検索します。存在しない場合:

    1. [追加] ボタンをクリックします。

    2. [サイト バインドの追加] ダイアログで、[net.pipe] を選択します。

    3. [バインド情報] ボックスにアスタリスク (*) を入力します。

まとめ

このレッスンでは、Visual Studio で配置設定を設定し、配置パッケージを作成しました。また、パッケージを IIS マネージャーにインポートして、アプリケーションを配置しました。最後に、AppFabric とアプリケーションが net.pipe プロトコルを使用して通信できるように設定しました。

次のステップ

レッスン 3: HRApplicationServices アプリケーションの構成」に進み、AppFabric の監視と永続化を設定します。

関連項目

概念

レッスン 1: はじめに
レッスン 3: HRApplicationServices アプリケーションの構成
レッスン 4: HRApplicationServices アプリケーションの正常性の監視
レッスン 5: AppFabric を使用した中断されているワークフローの再開

その他のリソース

レッスン 6: Order Service の例外の監視

  2012-03-05