So fügen Sie alles zusammen – Ihre Mobile App und Ihre Inhalte in AEM Headless

In diesem Teil der AEM Headless-Entwickler-Tour machen Sie sich mit der Verwendung der AEM-Entwicklungs-Tools und des Headless-SDK vertraut, um Ihre Anwendung zusammenzustellen.

Die bisherige Entwicklung

Im vorherigen Dokument zur AEM Headless-Entwickler-Tour Aktualisieren Ihres Inhalts über AEM Assets-APIs haben Sie erfahren, wie Sie Ihren vorhandenen Headless-Content in AEM über die API aktualisieren können. Nun verfügen Sie über folgende Kenntnisse:

  • Grundlegendes zur AEM Assets-HTTP-API

Ziel

Dieser Artikel soll Ihnen helfen zu verstehen, wie Sie Ihre AEM-Headless-Anwendung zusammenstellen können, indem Sie:

  • mehr über das AEM-SDK und die erforderlichen Entwicklungs-Tools erfahren
  • eine lokale Entwicklungslaufzeit einrichten, um Ihre Inhalte vor der Live-Schaltung zu simulieren
  • Grundlagen zur AEM-Inhaltsreplikation

Das AEM-SDK

Das AEM-SDK wird zum Erstellen und Bereitstellen von anwenderdefiniertem Code verwendet. Es ist das wichtigste Tool, das Sie vor der Live-Schaltung zum Entwickeln und Testen Ihres Headless-Programms benötigen. Es enthält die folgenden Artefakte:

  • Die Quickstart-JAR-Datei: eine ausführbare JAR-Datei, die sowohl zum Einrichten einer Autoren- als auch einer Veröffentlichungsinstanz verwendet werden kann
  • Dispatcher-Tools: das Dispatcher-Modul und seine Abhängigkeiten für Windows- und UNIX®-basierte Systeme
  • Java™-API-JAR-Datei: die Java™-JAR-/Maven-Abhängigkeit, die alle zulässigen Java™-APIs verfügbar macht, die zur Entwicklung für AEM verwendet werden können
  • Javadoc-JAR: die Javadocs für die Java™-API-JAR-Datei

Das AEM Headless-SDK

Anders als das AEM-SDK ist das AEM Headless-SDK ist Satz von Bibliotheken, die von Clients verwendet werden können, um schnell und einfach mit AEM Headless-APIs über HTTP zu interagieren.

Weitere Informationen zum AEM Headless-SDK finden Sie in der Dokumentation hier.

Weitere Entwicklungs-Tools

Neben dem AEM SDK benötigen Sie zusätzliche Tools, mit denen Sie Code und Inhalte lokal entwickeln und testen können:

  • Java™
  • Git
  • Apache Maven
  • Die Node.js-Bibliothek
  • Die IDE Ihrer Wahl

Da AEM ein Java™-Programm ist, müssen Sie Java™ und das Java™-SDK installieren, um die Entwicklung von AEM as a Cloud Service zu unterstützen.

Git wird verwendet, um die Quellcodeverwaltung zu verwalten, die Änderungen in Cloud Manager einzuchecken und sie dann in einer Produktionsinstanz bereitzustellen.

AEM verwendet Apache Maven zum Erstellen von Projekten, die aus dem AEM-Maven-Projektarchetyp generiert wurden. Alle wichtigen IDEs bieten Integrationsunterstützung für Maven.

Node.js ist eine JavaScript-Laufzeitumgebung, die zum Arbeiten mit den Frontend-Assets des Unterprojekts ui.frontend eines AEM-Projekts verwendet wird. Node.js wird mit npm bereitgestellt, dem De-facto-Package-Manager von Node.js, der zur Verwaltung von JavaScript-Abhängigkeiten verwendet wird.

Komponenten eines AEM-Systems auf einen Blick

Als Nächstes sehen wir uns die Bestandteile einer AEM Umgebung an.

Eine vollständige AEM-Umgebung besteht aus einer Autoren-, Veröffentlichungs- und Dispatcher-Komponente. Dieselben Komponenten werden in der lokalen Entwicklungslaufzeit verfügbar gemacht, damit Sie Ihre Code- und Inhaltsvorschau vor der Live-Schaltung einfacher anzeigen können.

  • Der Autoren-Service, mit dem interne Anwender Inhalte erstellen, verwalten und in der Vorschau anzeigen.

  • Der Veröffentlichungs-Service fungiert als „Live-Umgebung“ und ist in der Regel der Bereich, mit die Endanwender interagieren. Inhalte werden nach der Bearbeitung und Genehmigung im Autoren-Service an den Veröffentlichungs-Service weitergeleitet. Das häufigste Bereitstellungsmuster bei AEM Headless-Programmen besteht darin, die Produktionsversion des Programms mit dem Veröffentlichungs-Service von AEM zu verbinden.

  • Der Dispatcher ist ein statischer Webserver, der durch das AEM Dispatcher-Modul erweitert wird. Er speichert durch die Veröffentlichungsinstanz generierte Web-Seiten zwischen, um die Leistung zu verbessern.

Workflow für die lokale Entwicklung

Das Projekt für die lokale Entwicklung basiert auf Apache Maven und verwendet Git für die Quell-Code-Verwaltung. Um das Projekt zu aktualisieren, können Entwickler ihre bevorzugte integrierte Entwicklungsumgebung wie Eclipse, Visual Studio Code oder IntelliJ verwenden.

Um Code- oder Inhaltsaktualisierungen zu testen, die von Ihrer Headless-Anwendung erfasst werden, müssen Sie die Aktualisierungen für die lokale AEM-Laufzeit bereitstellen, die lokale Instanzen der AEM-Autoren- und Veröffentlichungsdienste enthält.

Achten Sie auf die Unterschiede zwischen den einzelnen Komponenten in der lokalen AEM-Laufzeit, da Sie Ihre Updates unbedingt dort testen sollten, wo sie am relevantesten sind. Testen Sie beispielsweise Inhaltsaktualisierungen in der Autoreninstanz, bzw. neuen Code in der Veröffentlichungsinstanz.

In einem Produktionssystem befinden sich Dispatcher und ein Apache-HTTP-Server immer vor der AEM-Veröffentlichungsinstanz. Sie stellen Caching- und Sicherheits-Services für das AEM-System bereit, daher ist es von größter Bedeutung, Code- und Inhaltsaktualisierungen auch in Richtung Dispatcher zu testen.

Lokale Vorschau Ihres Codes und Ihrer Inhalte mit der lokalen Entwicklungsumgebung

Um Ihr AEM Headless-Projekt auf den Start vorzubereiten, müssen Sie sicherstellen, dass alle Bestandteile Ihres Projekts gut funktionieren.

Dazu müssen Sie alle Komponenten – Code, Inhalte und Konfiguration – zusammenführen und anschließend in einer lokalen Entwicklungsumgebung testen, damit sie bereit für die Live-Schaltung sind.

Die lokale Entwicklungsumgebung umfasst drei Hauptbereiche:

  1. Das AEM-Projekt - dieses Projekt enthält den gesamten benutzerdefinierten Code, die Konfiguration und den Inhalt, an dem die AEM-Entwickler arbeiten werden
  2. Local AEM Runtime - lokale Versionen der AEM Autoren- und Veröffentlichungsdienste, die zum Bereitstellen von Code aus dem AEM Projekt verwendet werden
  3. Die lokale Dispatcher-Laufzeit: Dies ist eine lokale Version des Apache-HTTP-Servers („httpd“), die das Dispatcher-Modul enthält.

Nachdem die lokale Entwicklungsumgebung eingerichtet wurde, können Sie die Bereitstellung von Inhalten für das React-Programm simulieren, indem Sie lokal einen statischen Knoten-Server bereitstellen.

Wie geht es weiter

Nachdem Sie nun diesen Teil der AEM Headless-Entwickler-Tour abgeschlossen haben, sollten Sie über die folgenden Kenntnisse verfügen:

  • Kennenlernen der AEM Entwicklungs-Tools
  • Grundlegendes zum Workflow für die lokale Entwicklung

Fahren Sie mit dem Journey ohne Kopfzeilenmodus AEM fort, indem Sie das Dokument erneut überprüfen. Wie Sie mit Ihrer Headless-Anwendung live gehen wo Sie tatsächlich Ihr AEM Headless Projekt live mitnehmen!

Zusätzliche Ressourcen

Auf dieser Seite