AEM Sites: Veraltete org.apache.sling.commons.json.JSONObject-Warnung bei Verwendung von PageInfoProvider für benutzerdefinierte Spalten

In diesem Artikel werden die Ursache und die aktuelle Auswirkung von veralteten API-Warnungen im Zusammenhang mit org.apache.sling.commons.json.JSONObject bei der Anpassung der Listenansichtsspalten von AEM Sites mithilfe von PageInfoProvider erläutert.

Beschreibung description

Umgebung

Adobe Experience Manager (AEM) as a Cloud Service (alle Versionen)

Problem/Symptome

Bei der Implementierung benutzerdefinierter Spalten in der Listenansicht der AEM Sites-Konsole mithilfe der PageInfoProvider wird in den Protokollen die folgende Warnung angezeigt:

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)
  • Die Warnung wird ausgelöst, da der PageInfoProvider-API-Vertrag die Rückgabe eines org.apache.sling.commons.json.JSONObject erfordert.
  • Das org.apache.sling.commons.json Paket ist veraltet und soll nach dem 31.12.2027 entfernt werden.
  • Diese Warnhinweise dienen nur zu Informationszwecken und blockieren derzeit keine Cloud Manager-Pipelines, wenn die Verwendung auf PageInfoProvider Implementierungen beschränkt ist.

Ursache

Die PageInfoProvider-Schnittstelle erfordert derzeit die Rückgabe eines org.apache.sling.commons.json.JSONObject, wodurch die Verwendung eines veralteten Pakets erzwungen wird. Dies gilt als technische Schuld und wird in einem zukünftigen AEM Sites-API-Update behoben.

Lösung resolution

Gehen Sie wie folgt vor, um das Problem zu beheben:

  1. Überprüfen Sie die Protokollwarnungen, um sicherzustellen, dass sie mit der Verwendung von PageInfoProvider und der org.apache.sling.commons.json.JSONObject-Abhängigkeit zusammenhängen.

  2. Verstehen Sie, dass diese Warnhinweise derzeit nur zur Information sind und Bereitstellungen nicht blockieren oder die Funktionalität von benutzerdefinierten Spalten in der Sites-Konsole beeinträchtigen.

  3. Überwachen Sie die Versionshinweise und Dokumentation zu Adobe Experience Manager auf Updates zur Einstellung und geplanten Entfernung von org.apache.sling.commons.json.

  4. Planen Sie die zukünftige Refaktorierung von Implementierungen benutzerdefinierter Spalten:

    • Adobe Engineering arbeitet daran, die aktuelle PageInfoProvider zu verwerfen.
    • Eine neue Benutzeroberfläche, für die keine org.apache.sling.commons.json erforderlich sind, wird in einer zukünftigen Version eingeführt und dokumentiert.
  5. Es ist keine sofortige Aktion erforderlich, es sei denn, die veraltete API wird außerhalb des PageInfoProvider verwendet oder zukünftige Versionen führen umfassende Änderungen ein.

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