Sitecore Commerce Engine Connect構成
このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。
Sitecore.Commerce.Engine.Connect.configファイルにはCommerce Engine(CE)Connectの動作に影響を与える設定設定が含まれています。CE Connectは、Commerce EngineとSitecore Commerce Connect(店舗開発者向けのAPIを公開するコアSitecore XPコマースフレームワーク)Sitecoreとの統合を可能にするC#クラスによって定義されたコネクタです。
Sitecore.Commerce.Engine.Connect.configファイルはSitecoreサービスインスタンス(スタンドアロン、ContentDelivery、ContentManagementの役割として動作)に、以下の場所に保存されます:\inetpub\wwwroot\
このトピックでは、Sitecore.Commerce.Engine.Connect.configファイルの各セクションに含まれるCE Connect設定を一覧化し説明します。
!注表示されているデフォルト値は、サンプルCommerceソリューションをインストールしてデプロイする際に使われる値を表しています。
コマースエンジンの構成
Sitecore.Commerce.Engine.Connect.configファイルの
一般的なCE Connectコネクタ設定
舞台設定
デフォルト値
概要
shopsServiceUrl
Shopsサービスを実行しているCommerce EngineインスタンスのURLです。
commerceOpsServiceUrl
https://localhost:5000/commerceops/
Commerce Opsサービスを実行しているCommerce EngineインスタンスのURLです。
commerceMinionsServiceUrl
https://sxastorefront-identityserver
Commerce Minionsサービスを動かしているCommerce EngineインスタンスのURLです。
commerceEngineConnectClientId
CommerceEngineConnect
Commerce Engine Connectクライアントの名前です。
clientSecretHash
クライアントIDと共に使われるハッシュは、Identity Serverに認証し、セキュリティトークンを取得するために使われます。Connectはそのトークンを使ってCEに認証します。
commerceRequestTimeout
210
コマースエンジンにHttpWebRequestコールする際にHttpWebRequest.Timeoutプロパティを設定するために使われた(秒単位)の値です。
> [!注]
> commerceRequestTimeout の値は秒単位で設定され、 HttpWebRequest.Timeout の性質の値はミリ秒単位です。
enforceSsl
true
SSLによる安全な接続を強制します。
defaultEnvironment
HabitatAuthoring
HTTPリクエストのヘッダー"Environment"ターゲット環境が指定されていない場合、HTTPリクエスト(InvokeHttpClientGetやInvokeHttpClientPostなど)でデフォルトで使用されるCommerce Environment。
defaultMinionsEnvironment
HabitatMinions
デフォルトのミニオン環境の名前を指定します。
DefaultLanguage
en
HTTPリクエストヘッダーに言語が指定されていない場合に使われるデフォルトの言語。
defaultShopName
CommerceEngineDefaultStorefront
HTTPヘッダー "ShopName" 値が指定されていない場合にデフォルトで使われるストアフロント。
defaultShopCurrency
USD
HTTPヘッダー "Currency" 値が指定されていない場合に使われるデフォルトの通貨です。
カタログマッピング設定
舞台設定
デフォルト値
概要
getCatalogMappingsForIdsBatchSize
20
カタログマッピングを読み込む際に一度に取得すべきIDの数。
カタログテンプレートフィールドジェネレーター設定
舞台設定
デフォルト値
概要
useDeterministicFieldIdsForEntities
true
エンティティテンプレートフィールドの決定性フィールド識別子を生成するかどうかを制御します。Commerce Engineはこの設定を true に設定し、フィールドへのパスに基づくアルゴリズムでGUIDを生成し、同じままにします。
useDeterministicFieldIdsForComponents
true
コンポーネントテンプレートの決定性フィールド識別子を生成するかどうかを制御します。Commerce Engineはこの設定を true に設定し、フィールドへのパスに基づくアルゴリズムでGUIDを生成し、同じ状態に保つ必要があります。
商取引オーサリング環境設定
舞台設定
デフォルト値
概要
defaultAuthoringDatabase
Master
商務関連エンティティのバージョンを返却するために使用するデータベースを指定します。マスターデータベースには公開版と未公開版の両方が含まれます。ウェブデータベースには公開されたコンテンツのバージョンが含まれています。
インデックス設定
舞台設定
デフォルト値
概要
fullIndexWaitTime
1000
ItemFullIndexMinionコマンド(長時間実行されるプロセス)の状態を確認するまでに待つミリ秒数を表します。
incrementalIndexWaitTime
100
インクリメンタルインデックスコマンドの状態を確認するまでの待ち時間(長期間実行されるプロセス)のミリ秒数を表します。
fullCacheRefreshThreshold
20
増分インデックス後にフルキャッシュリフレッシュを引き起こす新規または変更された項目の数。
CE Connectキャッシュ構成
Sitecore.Commerce.Engine.Connect.configファイルの
Redisキャッシュ設定
舞台設定
デフォルト値
概要
enabled
true
CE ConnectキャッシュのRedisキャッシュプロバイダーを有効または無効にします。
cacheStoreName
Commerce-Connector-Redis
これはCommerce ConnectorのRedisキャッシュストアの名前です。
intervalBetweenConnectionAttemptsInSeconds
60
Redisキャッシュプロバイダーへの接続試行間の秒数。
configuration
localhost,
defaultDatabase=1,
allowAdmin=true,
syncTimeout=3600000
instanceName
レディス
Redisインスタンスの名前。
メモリキャッシュ設定
舞台設定
デフォルト値
概要
enabled
false
インメモリキャッシュの有無を制御します。
cacheStoreName
Commerce-Connector-Memory
インメモリキャッシュストアの名前。
cacheName
CommerceConnect
Commerce Connectキャッシュの名前。
expiration
21600000
アイテムがキャッシュされる秒数。
コマンド
以下の表は、SitecoreコンテンツエディタのCommerceリボンからトリガーされるコマンドを一覧にしています。
コマンド名
概要
"commerce
"カタログデータテンプレートを生成します。コマンドは 「データテンプレートの更新 」ボタンでトリグされます。
"commerce
"カタログデータテンプレートを削除します。データ テンプレート を削除ボタンでトリガーするコマンドです。
"commerce
"現在のSitecoreデータベース内の以下のキャッシュをクリアします( Refresh Commerce Cache ボタンでトリガーされるコマンド):
- アイテムキャッシュ
- データキャッシュ
- StandardValuesCache
- パスキャッシュ
- ItemPathsCache
- テンプレートエンジンがリセットされました。
パイプライン
CE Connectコネクターは、Sitecoreパイプラインフレームワークが提供する拡張ポイントを活用してCommerceコネクター機能を実装しています。名前にプレフィックス「commerce」を使用するパイプラインは、完全にCEコマースの機能のために実装されています。他のSitecoreパイプラインはカスタムCommerceプロセッサで拡張されています。
パイプライン/プロセッサ
概要
commerce.viewaction.getentityview /
Sitecore.Commerce.Engine.Connect.Pipelines.ViewAction.GetEntityView
Commerce EngineからEntityViewを取得するために使われたCE Connectパイプラインプロセッサ。
commerce.viewaction.doaction /
Sitecore.Commerce.Engine.Connect.Pipelines.ViewAction.DoAction
商取引エンジンからDoActionを取得するために使われたCE Connectパイプラインプロセッサ。
getContentEditorFields /
Sitecore.Commerce.Engine.Connect.SitecoreDataProvider.Pipelines.ContentEditor.CommerceContentEditorFieldsProcessor
SitecoreがコンテンツエディタでCommerceアイテムを表示する際に呼び出すCE Connectパイプラインプロセッサです。プロセッサは、EntityViewから提供されるメタデータに基づいて、そのコンテンツ項目に対応するCommerceビューのフィールドを隠します。例えば、Business Toolsのユーザーインターフェース(UI)で隠されているフィールドは、Content Editor UIで同じアイテムを表示する際にも隠すべきです。
renderContentEditor /
Sitecore.Commerce.Engine.Connect.DataProvider.Pipelines.SetCommerceEditorFormatter
Processorは、コンテンツエディタのフォーマッターをコンテンツエディタのユーザーインターフェースでSitecore XCカタログを表示するために Sitecore.Commerce.Engine.Connect.DataProvider.Pipelines.ContentEditor.CommerceEditorFormatter を使うように設定するよう、SitecoreプラットフォームパイプラインSitecore追加しました。
getQueryState /
Sitecore.Commerce.Engine.Connect.DataProvider.Pipelines.ContentEditor.CommandStateProcessor
Sitecoreプロセッサは、Commerceアイテムに対してどのコマンドを有効にするかを決定します。
getContentEditorWarnings /
Sitecore.Commerce.Engine.Connect.Pipelines.ValidateToken
Sitecoreパイプラインを拡張し、CE ConnectがCommerce Engineに送るセキュリティトークンが無効であるかSSLが有効でない場合にコンテンツエディタに警告を表示するプロセッサ。
getItemPersonalizationVisibility /
Sitecore.Commerce.Engine.Connect.Pipelines.PersonalizationVisibilityProcessor
関連するCommerceカタログアイテムテンプレートから派生したアイテムのためにプロファイルカードを編集できるパイプラインプロセッサーです。
イベント
以下の表は、CE Connectが生成できるイベントを一覧にしています。
イベント/ハンドラ/メソッド
概要
publish
/Sitecore.Commerce.Engine.Connect.Events.CatalogPublishingExcluderEvent /
CheckProcessing
Sitecoreの公開プロセスが商取引カタログ項目を公開しないようにします。カタログ項目は承認ワークフローの終了時に公開されます。
publish
、 publish:end /Sitecore.Commerce.Engine.Connect.Events.CommercePublishCacheRefresh /
ClearCache (両イベントとも)
ウェブ公開時にコマースのキャッシュが更新されることを保証します。
saved、 item
/Sitecore.Commerce.Engine.Connect.Events.CommerceItemEventHandler /
OnItemSaved, OnItemDeleting
変更されたアイテムをSitecoreキャッシュから削除します。
indexing:completed
/Sitecore.Commerce.Engine.Connect.Events.IndexingCompletedEventHandler /
OnIndexingCompleted
インデックス作成完了後にSitecoreキャッシュをクリアします。
フック
Sitecoreが初期化されると、以下のフックが実行されます:
フック
概要
Sitecore.Commerce.Engine.Connect.Events.IndexingCompletedHook
完了したイベントのインデックス登録をサスクライブし、そのイベントを Sitecore.Commerce.Engine.Connect.EventsIndexingCompletedEventHandler ハンドラーに関連付けるために使われていました。
舞台設定
Sitecoreの設定は以下の設定を適用するようにパッチが適用されています:
舞台設定
概要
Sitecore.Services.SecurityPolicy
Sitecore設定は Sitecore.Services.Infrastructure.Web.Http.Security.ServicesOnPolicy を使わせてエンティティとItemServicesへの安全なアクセスを可能にするようにパッチを当てています。
サービス
以下のコンフィギュレーターはSitecoreのサービスコレクションを変更するために使用されます:
コンフィギュレーター
概要
Sitecore.Commerce.Engine.Connect.CachingConfigurator
Sitecoreサービスコレクション(Microsoft.Extensions.DependencyInjection.IServiceCollection)を Sitecore.Commerce.Engine.Connect.CachingRepositoryを使用するように修正し、Sitecoreを Sitecore.Commerce.Engine.Connect.CommerceCacheOptionsSetupを使用するように設定するために使用されました。