AEM Sites:PageInfoProviderをカスタム列に使用する場合の非推奨のorg.apache.sling.commons.json.JSONObjectの警告
この記事では、PageInfoProviderを使用してAEM Sites リストビュー列をカスタマイズする際に、org.apache.sling.commons.json.JSONObjectに関連する非推奨のAPI警告の原因と現在の影響について説明します。
説明 description
環境
Adobe Experience Manager(AEM)as a Cloud Service(すべてのバージョン)
問題/症状
PageInfoProvider インターフェイスを使用してAEM Sites コンソールのリスト ビューにカスタム列を実装すると、ログに次の警告が表示されます。
2023-02-23 18:47:55.095 [ region-deprecated-api] com.xx.aem:xx-unified-site.core:0.0.2-SNAPSHOT: Usage of deprecated package found : org.apache.sling.commons.json : Usage of this deprecated API is not supported in AEM as a Cloud Service. Deprecated since 2022-12-31 For removal : 2027-12-31 (com.xx.aem:xx-unified-site.all:0.0.2-SNAPSHOT)
PageInfoProviderAPI コントラクトがorg.apache.sling.commons.json.JSONObjectを返す必要があるため、警告がトリガーされます。org.apache.sling.commons.jsonパッケージは非推奨(廃止予定)であり、2027-12-31以降に削除が予定されています。- これらの警告は情報を提供するもので、使用状況が
PageInfoProvider回の実装に制限されている場合、現在Cloud Manager パイプラインはブロックされません。
原因
現在、PageInfoProvider インターフェイスはorg.apache.sling.commons.json.JSONObjectを返す必要があり、非推奨パッケージを使用する必要があります。 これは技術的負債とみなされ、今後のAEM Sites APIのアップデートで対応される予定です。
解決策 resolution
問題を解決するには、次の手順に従います。
-
ログの警告を確認して、
PageInfoProviderとorg.apache.sling.commons.json.JSONObject依存関係の使用に関連していることを確認します。 -
現在、これらの警告は 情報のみの であり、デプロイメントをブロックしたり、Sites コンソールのカスタム列の機能に影響を与えたりすることはありません。
-
org.apache.sling.commons.jsonの非推奨化と削除予定に関する更新については、Adobe Experience Manager リリースノートとドキュメントを参照してください。 -
今後、カスタム列の実装をリファクタリングする予定です。
- Adobe エンジニアリングは、現在の
PageInfoProviderインターフェイスの非推奨化に取り組んでいます。 org.apache.sling.commons.jsonを必要としない新しいインターフェイスは、今後のリリースで導入され、文書化される予定です。
- Adobe エンジニアリングは、現在の
-
非推奨のAPIが
PageInfoProviderコンテキスト外で使用されているか、今後のリリースで破壊的な変更が発生した場合を除き、直ちにアクションを実行する必要はありません。