問題
-
コマースは、
enterprise.product.commerce.enabled=falseプロパティを使用して無効にします。 -
このプロパティで起動すると、起動時に以下のエラーが記録されます:
WARN [main][SystemCheckOSGiCommands:137] Declarative Service Unsatisfied Component Checker check result:
_Bundle {id: 1027, name: com.liferay.site.initializer.extender, version: 1.0.44}
_ Declarative Service {id: 2908, name: com.liferay.site.initializer.extender.internal.CommerceSiteInitializer, unsatisfied references:
_ {name: _catalogResourceFactory, target: null}
_ {name: _channelResourceFactory, target: null}
_ {name: _commerceAccountRoleHelper, target: null}
_ {name: _commerceCatalogLocalService, target: null}
_ {name: _commerceChannelLocalService, target: null}
_ {name: _commerceChannelService, target: null}
_ {name: _commerceCurrencyLocalService, target: null}
_ {name: _commerceInventoryWarehousesImporter, target: null}
_ {name: _commerceNotificationTemplateLocalService, target: null}
_ {name: _cpDefinitionLocalService, target: null}
_ {name: _cpDefinitionsImporter, target: null}
_ {name: _cpInstanceLocalService, target: null}
_ {name: _cpMeasurementUnitLocalService, target: null}
_ {name: _cpOptionsImporter, target: null}
_ {name: _cpSpecificationOptionsImporter, target: null}
_ {name: _optionResourceFactory, target: null}
_ {name: _portletSettingsImporter, target: null}
_ {name: _productOptionResourceFactory, target: null}
_ {name: _productSpecificationResourceFactory, target: null}_ } [Sanitized] - あるいは:起動時に、このWARNメッセージはログに表示されない場合があります。 ゴーゴーシェルでコマンド
ds:unsatisfiedを実行した場合のみ。 -
Gogo shellを使用すると、起動後にCommerce用の2つのパッケージがアクティブになります:
g! lb commerce
START LEVEL 20
ID|State |Level|Name
228|Active | 10|Liferay Commerce - Liferay Commerce - Impl (1.0.0)|1.0.0
1135|Active | 10|Liferay Commerce - Liferay Commerce - API (1.0.0)|1.0.0
Environment
- Liferay DXP 7.4以下 U48
- Commerce 4.0
解決策
- このメッセージログはあくまで警告であり、ポータルの使用は安全であり、意図したとおりに動作することを意味します。
-
しかし、ログから非表示にしたい場合は、コントロールパネル > (構成)システム設定 > (プラットフォーム)モジュールコンテナ > コンポーネントブラックリスト タブに移動して、以下のコンポーネントをブラックリストに入れます:
com.liferay.site.initializer.extender.internal.CommerceSiteInitializer.
追加情報
- その不満足なワーニングは、コマースがまだ使えないので想定内です。 基本的には、Commerce SpecificのコードをCommerceSiteInitializerに移し、OSGIコンポーネントのチェックがその部分だけ失敗するようにしたのです。
- DXP 7.4-Update 48以降では、このプロパティとLiferayのCommerceを無効にする可能性が削除されましたのでご注意ください。