Sie sehen sich Hilfeinhalte der folgenden Version an:

Der Externalizer in AEM ist ein OSGi-Dienst, der es Ihnen ermöglicht, Ressourcenpfade (z. B. /Pfad/zu/meiner/Seite) programmgesteuert in externe, absolute URLs (z. B. http://www.meinunternehmen.com/Pfad/zu/meiner/Seite) umzuwandeln, indem dem Pfad mithilfe eines vorkonfigurierten DNS ein Präfix vorangestellt wird.

Dieser Dienst bietet einen zentralen Ort für die Konfiguration und Erstellung von externen URLs, weil eine Instanz ihre extern sichtbare URL nicht kennen kann, wenn sie hinter einer Web-Layer läuft, und weil manchmal ein Link außerhalb des Anfrageumfangs erstellt werden muss.

Auf dieser Seite wird beschrieben, wie Sie den Externalizer-Dienst konfigurieren und verwenden. Weitere Informationen finden Sie in den Javadocs.

Konfigurieren des Externalizer-Diensts

Der Externalizer-Dienst ermöglicht es Ihnen, zentral mehrere Domänen zu definieren, die für das programmgesteuerte Voranstellen von Präfixen für Ressourcenpfade verwendet werden können. Alle Domänen werden anhand eines eindeutigen Namens zum programmgesteuerten Verweisen auf die Domäne identifiziert.

Definieren Sie eine Domänenzuordnung für den Externalizer-Service wie folgt:

  1. Wechseln Sie zum Konfigurationsmanager über Tools > Web-Konsole oder geben Sie http://<Host>:<Port>/system/console/configMgr ein.

  2. Klicken Sie auf Day CQ Link Externalizer, um das Konfigurationsdialogfeld zu öffnen.

    Hinweis:

    Der Direktlink zur Konfiguration lautet http://<Host>:<Port>/system/console/configMgr/com.day.cq.commons.impl.ExternalizerImpl.

    chlimage_1
  3. Definieren Sie eine Domänenzuordnung. Eine Zuordnung besteht aus einem eindeutigen Namen, der im Code verwendet werden kann, um auf die Domäne, einen Bereich und die Domäne zu verweisen:
    <eindeutiger-Name> [Schema://]Server[:Port][/Kontextpfad], wobei

    • Schema normalerweise „http“ oder „https“ ist, aber auch z. B. „ftp“ sein kann.Verwenden Sie https, um https-Verknüpfungen zu erzwingen, falls gewünscht. Es wird verwendet, wenn der Clientcode das Schema beim Anfordern der Externalisierung einer URL nicht außer Kraft setzt.
    • Server der Hostname (kann ein Domänenname oder eine IP-Adresse sein) ist .
    • Port (optional) die Portnummer ist.
    • Kontextpfad (optional) nur festgelegt wird, wenn AEM als Web-App unter einem anderen Kontextpfad installiert wird.

    Ein Beispiel: Produktion http://meine.Produktionsinstanz
    Die folgenden Zuordnungsnamen sind vordefiniert und müssen immer festgelegt werden, da AEM sie benötigt:

    • local – die lokale Instanz
    • author – das DNS des Bearbeitungssystems
    • publish – das DNS der öffentlichen Website

    Hinweis:

    Eine benutzerdefinierte Konfiguration ermöglicht es Ihnen, eine neue Kategorie hinzuzufügen, z. B. „Produktion“, „Staging“ oder auch externe Nicht-AEM-Systeme, z. B. „mein-interner-Webdienst“. Auch ermöglicht sie es Ihnen, das Hartkodieren solcher URLs an verschiedenen Orten in einer Projektdatenbank zu vermeiden.

  4. Klicken Sie auf Speichern, um Ihre Änderungen zu speichern.

Hinweis:

Adobe empfiehlt, dass Sie die Konfiguration dem Repository hinzufügen.

Verwenden des Externalizer-Diensts

Dieser Abschnitt zeigt einige Beispiele dafür, wie der Externalizer-Dienst verwendet werden kann.

 

Den Externalizer-Dienst rufen Sie in JSP wie folgt ab:

Externalizer externalizer = resourceResolver.adaptTo(Externalizer.class);

 

Einen Pfad mit der publish-Domäne externalisieren Sie wie folgt:

String meineExternalisierteUrl = externalizer.publishLink(resolver, "/meine/Seite") + ".html";

Unter Voraussetzung der Domänenzuordnung „publish http://www.website.com“ erhält „meineExternalisierteUrl“ den Wert „http://www.website.com/Kontextpfad/meine/Seite.html“.

 

Einen Pfad mit der author-Domäne externalisieren Sie wie folgt:

String meineExternalisierteUrl = externalizer.authorLink(resolver, "/meine/Seite") + ".html";

Unter Voraussetzung der Domänenzuordnung „author http://author.website.com“ erhält „meineExternalisierteUrl“ den Wert „http://author.website.com/Kontextpfad/meine/Seite.html“.

 

Einen Pfad mit der local-Domäne externalisieren Sie wie folgt:

String meineExternalisierteUrl = externalizer.externalLink(resolver, Externalizer.LOCAL, "/meine/Seite") + ".html";

Unter Voraussetzung der Domänenzuordnung „local http://publish-3.internal“ erhält „meineExternalisierteUrl“ den Wert „http://publish-3.internal/Kontextpfad/meine/Seite.html“.

 

Weitere Beispiele finden Sie in den Javadocs.

Dieses Werk unterliegt den Bedingungen der Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License.  Twitter™- und Facebook-Beiträge fallen nicht unter die Bedingungen der Creative Commons-Lizenz.

Rechtliche Hinweise   |   Online-Datenschutzrichtlinie