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)
  • PageInfoProvider API コントラクトが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

問題を解決するには、次の手順に従います。

  1. ログの警告を確認して、PageInfoProviderorg.apache.sling.commons.json.JSONObject依存関係の使用に関連していることを確認します。

  2. 現在、これらの警告は 情報のみの であり、デプロイメントをブロックしたり、Sites コンソールのカスタム列の機能に影響を与えたりすることはありません。

  3. org.apache.sling.commons.jsonの非推奨化と削除予定に関する更新については、Adobe Experience Manager リリースノートとドキュメントを参照してください。

  4. 今後、カスタム列の実装をリファクタリングする予定です。

    • Adobe エンジニアリングは、現在のPageInfoProvider インターフェイスの非推奨化に取り組んでいます。
    • org.apache.sling.commons.jsonを必要としない新しいインターフェイスは、今後のリリースで導入され、文書化される予定です。
  5. 非推奨のAPIがPageInfoProvider コンテキスト外で使用されているか、今後のリリースで破壊的な変更が発生した場合を除き、直ちにアクションを実行する必要はありません。

recommendation-more-help
experience-cloud-kcs-help-kbarticles