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主控台中自訂資料行的功能。
-
監視Adobe Experience Manager發行說明和檔案,以取得有關淘汰和計畫移除
org.apache.sling.commons.json的更新。 -
計畫在未來重構自訂欄實施:
- Adobe工程部門正致力於淘汰目前的
PageInfoProvider介面。 - 未來發行版本將引入不需要
org.apache.sling.commons.json的新介面並加以記錄。
- Adobe工程部門正致力於淘汰目前的
-
除非在
PageInfoProvider內容之外使用已棄用的API,或未來的發行版本引入重大變更,否則不需要立即採取行動。
recommendation-more-help
experience-cloud-kcs-help-kbarticles