Exportateur de page

Dans AEM, vous pouvez exporter une page sous la forme d’une page web complète, comprenant des images, des fichiers .js et des fichiers .css.

Une fois la configuration effectuée, vous demandez une exportation de page à partir de votre navigateur en remplaçant html avec export.zip dans l’URL. Cette opération génère un fichier d’archive (zip) contenant la page rendue au format html, ainsi que les ressources référencées. Tous les chemins d’accès dans la page (par exemple, d’accès aux images) sont réécrits de manière à pointer vers les fichiers inclus dans le fichier compressé ou vers les ressources disponibles sur le serveur. Le fichier d’archive (zip) peut ensuite être téléchargé à partir de votre navigateur.

REMARQUE

Selon votre navigateur et les paramètres, le téléchargement sera :

  • un fichier d’archive (<page-name>.export.zip) ;
  • un dossier (<page-name>) ; en fait, le fichier d’archive a déjà été développé.

Exportation d’une page

La procédure ci-dessous décrit comment exporter une page et considère qu’il existe un modèle d’exportation pour votre site. Un modèle d’exportation définit la manière dont votre page est exportée. Il est spécifique à votre site. Pour créer un modèle d’exportation, consultez la section Création d’une configuration de l’exportateur de page pour votre site.

Pour exporter une page, procédez comme suit :

  1. Accédez à la page requise dans la console Sites.

  2. Sélectionnez la page, puis ouvrez la boîte de dialogue Propriétés.

  3. Sélectionnez l’onglet Avancé.

  4. Développez le champ Exporter pour sélectionner un modèle d’exportation.
    Sélectionnez le modèle requis pour votre site, puis confirmez avec OK.

  5. Sélectionnez Enregistrer et fermer pour fermer la boîte de dialogue des propriétés de la page.

  6. Faites une demande d’export de la page, en remplaçant le suffixe html avec export.zip dans l’URL.

    Par exemple :

    • localhost:4502/content/we-retail/language-masters/en.html

    Est accessible via :

    • localhost:4502/content/we-retail/language-masters/en.export.zip
  7. Téléchargez l’archive dans votre système de fichiers.

  8. Dans votre système de fichiers, décompressez le fichier si nécessaire. Une fois développé, un dossier portant le même nom que la page sélectionnée s’affiche. Ce dossier contient les éléments suivants :

    • Le sous-dossier content, qui est la racine d’une série de sous-dossiers qui reflètent le chemin d’accès à la page dans le référentiel.

      • Cette structure comprend le fichier html pour la page sélectionnée (<page-name>.html).
    • D’autres ressources (fichiers .js, fichiers .css, images, etc.) sont localisées en fonction des paramètres du modèle d’exportation.

  9. Ouvrez le fichier HTML de la page (<unzip-dir>/<path>/<to>/<page>/<page-path>.html) dans votre navigateur pour contrôler le rendu.

Création d’une configuration de l’exportateur de page pour votre site

L’exportateur de page repose sur le framework de synchronisation du contenu. Les configurations disponibles dans la boîte de dialogue Propriétés de la page sont des modèles d’exportation qui définissent les dépendances requises pour une page.

Au déclenchement d’une exportation de page, le modèle de configuration est utilisé, et les chemins d’accès à la page et à la conception s’appliquent dynamiquement à la configuration. Le fichier compressé est alors créé à l’aide de la fonctionnalité de synchronisation de contenu standard.

Une installation AEM prête à l’emploi comprend un modèle par défaut sous /etc/contentsync/templates/default.

  • Ce modèle est le modèle de secours à utiliser lorsqu’aucun modèle d’exportation n’est trouvé dans le référentiel.

  • Le modèle default vous indique comment une exportation de page peut être configurée, afin de servir de base à un nouveau modèle d’exportation.

  • Pour afficher la structure du nœud du modèle dans le navigateur au format JSON, demandez l’adresse URL suivante :
    http://localhost:4502/etc/contentsync/templates/default.json

La méthode la plus simple pour créer un modèle d’exportateur de page consiste à :

  • copier le modèle default ;

  • lui attribuer un nouveau nom, approprié à votre site ;

  • effectuer ensuite les mises à jour requises.

Pour créer un modèle totalement nouveau :

  1. Dans CRXDE Lite, créez un nœud sous /etc/contentsync/templates :

    • Name : un nom approprié à votre site ; par exemple, <mysite>. Le nom s’affiche dans la boîte de dialogue Propriétés de la page lorsque vous sélectionnez le modèle de l’exportateur de page.

    • Type: nt:unstructured

  2. Sous le nœud de modèle, appelé ici mysite, créez une structure de nœud à l’aide des nœuds de configuration décrits ci-dessous.

Activation d’un modèle d’exportateur de page pour vos pages

Une fois votre modèle paramétré, vous devez le rendre disponible :

  1. Dans CRXDE, accédez à la page requise dans la branche /content. Il peut s’agir d’une page individuelle ou de la page racine d’une sous-arborescence.

  2. Sur le nœud jcr:content de la page, créez la propriété :

    • Name: cq:exportTemplate
    • Type: String
    • Value : chemin d’accès au modèle ; par exemple : /etc/contentsync/templates/mysite

Nœuds de configuration de l’exportateur de page

Le modèle se compose d’une structure de nœud, dans la mesure où il utilise la propriété Framework de synchronisation de contenu. Chaque nœud possède une propriété type qui définit une action spécifique dans le processus de création du fichier compressé.

Les nœuds ci-dessous peuvent être utilisés pour créer un modèle de d’exportation :

  • page
    Le nœud page est utilisé pour copier le code HTML de la page dans le fichier compressé. Il possède les caractéristiques suivantes :

    • C’est un nœud obligatoire.
    • Se trouve sous /etc/contentsync/templates/<mysite>.
    • Est défini avec la propriété Name définie sur page.
    • Le type de nœud est nt:unstructured.

    Le nœud page possède les propriétés suivantes :

    • Une propriété type définie avec la valeur pages.

    • Il ne comporte pas de propriété path, car le chemin d’accès actuel à la page est copié dynamiquement dans la configuration.

  • rewrite
    Le nœud rewrite définit la façon dont les liens sont réécrits dans la page exportée. Les liens réécrits peuvent pointer vers les fichiers inclus dans le fichier compressé ou vers les ressources sur le serveur.

  • design
    Le nœud design est utilisé pour copier la conception utilisée pour la page exportée. Il possède les caractéristiques suivantes :

    • Il est facultatif.
    • Se trouve sous /etc/contentsync/templates/<mysite>.
    • Est défini avec la propriété Name définie sur design.
    • Le type de nœud est nt:unstructured.

    Le nœud design possède les propriétés suivantes :

    • Une propriété type définie avec la valeur copy.

    • Il ne comporte pas de propriété path, car le chemin d’accès actuel à la page est copié dynamiquement dans la configuration.

  • generic
    Un nœud générique est utilisé pour copier des ressources telles que les clientlibs.
    .js ou .css dans le fichier zip. Il possède les caractéristiques suivantes :

    • Il est facultatif.
    • Se trouve sous /etc/contentsync/templates/<mysite>.
    • Il ne possède pas de nom spécifique.
    • Le type de nœud est nt:unstructured.
    • Comporte une propriété type et des propriétés type connexes.

    Par exemple, le nœud de configuration ci-dessous copie les fichiers mysite.clientlibs.js dans le fichier compressé :

    "mysite.clientlibs.js": {
        "extension": "js",
        "type": "clientlib",
        "path": "/etc/designs/mysite/clientlibs",
        "jcr:primaryType": "nt:unstructured"
    }
    

Mise en œuvre d’une configuration personnalisée

Des configurations personnalisées sont également possibles.

Pour répondre à certaines exigences spécifiques, vous devrez peut-être mettre en œuvre un gestionnaire de mise à jour personnalisé.

Exportation d’une page par programmation

Pour exporter une page par programmation, vous pouvez utiliser le service OSGi PageExporter. Ce service permet ce qui suit :

  • exporter une page et écrire la réponse du servlet HTTP ;
  • exporter une page et enregistrer le fichier compressé à un emplacement spécifique.

Le servlet lié au sélecteur export et à l’extension zip utilise le service PageExporter.

Résolution des problèmes

Si vous rencontrez un problème lors du téléchargement du fichier compressé, supprimez le nœud /var/contentsync du référentiel et renvoyez la demande d’exportation.

Sur cette page