Adobe Experience Manager und Exponential
AEM speichert Inhalte in einem JCR-Repository: Seiten sind Bäume aus Knoten mit Komponenten, Assets liegen im DAM, und strukturierte Inhalte können Content Fragments sein. All das lässt sich auslesen, aber die Komponentenstruktur der Seiten ist für jedes AEM-Projekt spezifisch und braucht eine eigene Zuordnung.
Übersicht Migration · Checkliste · Zuordnung · Werkzeuge
1. Was AEM exportieren kann
Laut der Dokumentation von Adobe und Apache Sling:
| Quelle | Was Sie erhalten | Hinweise |
|---|---|---|
| Content-Pakete des Package Manager | ein ZIP mit Repository-Inhalten in der „Vault-Serialisierung“, festgelegt durch Filter | das richtige Werkzeug für eine vollständige, eingefrorene Kopie; laut Adobes Richtlinie sollte ein Paket in etwa 60 Sekunden übertragen sein, teilen Sie große Bäume also auf |
| Sling-Standard-GET-Servlet | jeden Knoten als JSON (<path>.json, mit einem Tiefen-Selektor oder .infinity) | Ergebnisse begrenzt durch json.maximumresults (in AEM standardmäßig 1000); auf Publish-Instanzen oft gesperrt |
Assets HTTP API (/api/assets) | Ordner, Asset-Metadaten, Renditions | liefert nur einen Teil der Metadaten; die Aufrufe zum Hochladen von Binärdaten sind im Cloud Service veraltet |
| Content Fragments | die AEM-GraphQL-API (Persisted Queries empfohlen); für Fragmente empfiehlt Adobe die Content Fragment Management OpenAPI statt der Assets API |
Die Authentifizierungsdetails der Assets API wurden für diese Seite nicht geprüft. Templates, Designs und Komponentencode sind keine Inhalte: Sie werden neu aufgebaut.
2. Abbildung auf Exponential
| AEM | Exponential 6 |
|---|---|
Seite (cq:Page mit jcr:content) | Objekt im Baum; der Seitenpfad ist der Baum |
| Seiteneigenschaften (Titel, Beschreibung, Tags, Vanity-URL) | title, xrowmetadata, eztags, eigener URL-Alias |
| Textkomponenten (Rich-Text-HTML) | ezxmltext (umgewandelt) |
| Bildkomponenten (DAM-Referenzen) | Einbettungen oder Beziehungen zu Bildobjekten |
| Andere Komponenten (Teaser, Listen, Karussells) | Blöcke von Exponential Layouts oder Attribute und untergeordnete Objekte |
| Experience Fragments | gemeinsame Layouts oder eingebundene Objekte |
| Content-Fragment-Modelle und Fragmente | Klassen und Objekte |
| DAM-Assets und Metadaten | Bild-, Datei- oder Medienobjekte mit ihren Metadaten |
Sprachkopien (/content/site/en, /de) | Übersetzungen desselben Objekts (ordnen Sie die Kopien über einen Schlüssel zu) |
Tags (cq:tags) | eztags |
3. Schritt für Schritt
- Erfassen Sie die verwendeten Templates und Komponenten pro Bereich der Website (Ressourcentypen der Komponenten und ihre Anzahl).
- Exportieren Sie eine eingefrorene Kopie (Content-Pakete pro Bereich) oder lesen Sie über das JSON-Servlet auf einer Kopie der Autoreninstanz.
- Schreiben Sie einen Extraktor pro Komponententyp; Bilder werden zu Referenzen auf importierte Assets.
- Importieren Sie die Assets mit Metadaten, dann die Seiten pro Sprache, mit Remote-IDs aus dem JCR-Pfad oder aus
jcr:uuid. - Bauen Sie die Seitenstrukturen als Exponential Layouts oder Templates neu auf; für Komponenten ohne Gegenstück ist eine Entscheidung nötig.
- Weiterleitungen von Seitenpfaden,
.html-Adressen und Vanity-URLs (Checkliste, 4).
4. Von Exponential zu AEM
Exportieren Sie mit xrowextract (Migration weg von Exponential); legen Sie Seiten und Fragmente über die eigenen APIs von AEM oder über ein aus dem Export erstelltes Content-Paket an, und Assets über den Upload des DAM. Die Behandlung von Weiterleitungen auf der AEM-Seite (Vanity-URLs, Dispatcher-Regeln) wurde für diese Seite nicht geprüft.
5. Checkliste
- To do: Komponenten erfasst; ein Extraktor pro Komponententyp.
- To do: Assets mit Metadaten und Renditions kopiert; Seiten pro Sprache extrahiert.
- To do: Mit Remote-IDs importiert; Sprachkopien als Übersetzungen angehängt.
- To do: Seitenstrukturen neu aufgebaut; Vanity-URLs und
.html-Pfade weitergeleitet.
Quellen
- Assets HTTP API: https://experienceleague.adobe.com/en/docs/experience-manager-cloud-service/content/assets/admin/mac-api-assets
- Package Manager: https://experienceleague.adobe.com/en/docs/experience-manager-cloud-service/content/implementing/developer-tools/package-manager
- Sling-Standard-GET-Servlets: https://sling.apache.org/documentation/bundles/rendering-content-default-get-servlets.html
Werden Sie Exponential-Partner
Partner teilen ihre Informationen, stellen Mittel bereit, geben Beiträge zurück und entwickeln die Produkte mit uns, und so wächst Exponential. Eine Partner-Website und ein Dashboard sind für Mitte 2027 geplant: Werden Sie noch heute Partner, damit wir schneller wachsen und neue Funktionen früher liefern.
Diese Seite ist Teil der Exponential-Dokumentation und freie Dokumentation unter der GNU Free Documentation License 1.3 oder einer späteren Version (die Lizenz dieser Dokumentation).