コンソールアプリケーションでのルーティングサービスのホスティング

Version:
日本語翻訳に関する免責事項

このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。

次の手順では、ルーティング サービスをSitecoreジョブではなくコンソール アプリケーションとして実行できます。ルーティング パッケージは、設定の主要なソースであり続けるため、Sitecoreにインストールする必要があります。

  1. ルーティング フレームワーク パッケージをインストールすると、ルーティング同期サービスを実行するための同期タスクが設定されます。これはコンソール アプリケーションとして実行されるため、無効にしたり削除したりできます。

    • タスクの削除:

      • /sitecore/system/Tasks/Schedules/Commerce Synchronization Scheduleを開きます。

      • アイテムを削除します。

    • タスクの無効化:

      • /sitecore/system/Tasks/Schedules/Commerce Synchronization Scheduleを開きます。

      • タスクを完全に無効にすることはできません。代わりに、「スケジュール」の日付を遠い将来のいつかに設定してください。たとえば、年を2100に設定します。

  2. ルーティング フレームワークSDKパッケージをダウンロードします。

  3. 解凍し、ReadMe.txtの手順に従ってソリューションをビルドします。

  4. Sitecore.Commerce.DynamicsIntegration.Routing更新パッケージと、その中に含まれるpackage.zipを展開します。

    • addedfilesフォルダ内で、Templatesフォルダを取得し、Windowsサービス.exeと同じフォルダにコピーします。

    • addedfilesフォルダ内で、binフォルダの内容を取得し、Windowsサービス.exeと同じフォルダにコピーします。

    • Commerce Serverのインストール フォルダからCommerceServer.Core.Catalog.dllとCommerceServer.Core.CrossTier.dllを取り出し、Windows Serviceの .exeと同じフォルダに追加します。

  5. Routing.Consoleプロジェクトには、コンソール アプリケーションのコードが含まれています

  6. App.config (ビルド後にSitecore.Commerce.DynamicsRetail.Synchronization.Console.exe.configになる) 内で、Sitecoreインスタンス情報に応じて以下を変更します。

    <appSettings>
    <add key="Host" value="storefront" />
    <add key="UserName" value="sitecore\admin" />
    <add key="Password" value="b" />
    <add key="SitecoreDatabase" value="master" />
    </appSettings>

    Sitecore Commerce Catalog Webサービスの情報に応じて、以下のように変更します。

    <client><endpoint
          address="http://localhost:2000/SolutionStorefrontSite_CatalogWebService/CatalogWebService.asmx"
          binding="basicHttpBinding" bindingConfiguration="CatalogWebServiceSoap"
          contract="Sitecore.Commerce.Catalog.CatalogWebServiceSoap"
          name="CatalogWebServiceSoap"/></client>

    注: Sitecore CommerceカタログWebサービスにアクセスするには、Windows認証が必要です。

Sitecoreでルーティング設定を設定したら、次の操作を行います。

  1. Sitecore.Commerce.DynamicsRetail.Synchronization.Console.exeを実行します。

  2. コンソール ウィンドウに情報が出力され、最終的には完了します。

  3. うまくいかなかった場合は、/sitecore/Commerce/Commerce Channels/Contoso/Channel History/ または /sitecore/Commerce/Dynamics Routing Extensions/Dynamics Routes/Route_SyncSitecoreCommerceChannel_Contoso_AzureAxVm/Route Historyで最新の履歴ファイルを確認してください。Tracking Logプロパティには、ログ出力が表示されます。

  4. コンソール出力にエラーはなく、カタログXMLが生成されていない場合は、/sitecore/Commerce/Commerce Synchronization/Commerce Routes/Route Requests/Contoso Commerce Route Requestで Last Run と Requested At の値をクリアし、Repeat Delay をデフォルトの120ではなく2などの小さい値に設定します。

  5. 実行が完了したら、カタログXMLが "c:\Sitecore Synchronization Data\Working\Contoso_Dev\" に生成されます。この場所は、/sitecore/Commerce/Dynamics Routing Extensions/Commerce Endpoints/Endpoint_FileSystem_Contoso_Dev_Working (または _Archive) で定義されます。

  6. Step_PublishExtractが有効になっている場合 (デフォルト)、カタログ・データをインポートする必要があります。これは、カタログマネージャーでインポートステータス/履歴を確認することで検証できます。

この記事を改善するための提案がある場合は、 お知らせください!