Vous consultez actuellement l'aide de la version:

Les configurations apportent la logique et la structure de stockage des configurations de service.

Vous pouvez étendre les instances existantes pour créer vos propres configurations.

Concepts

Les principes suivis dans le développement des configurations sont basés sur les concepts ci-après :

  • Les services/adaptateurs sont utilisés pour récupérer la ou les configurations.
  • Les configurations (par exemple les propriétés/paragraphes) sont héritées du ou des parents.
  • Référencées à partir du(des) nœud(s) analytique(s) par chemin.
  • Facilement extensibles.
  • Permet de répondre à des configurations plus complexes, telles que SiteCatalyst.
  • Prise en charge de dépendances (par exemple les modules externes SiteCatalyst requièrent une configuration SiteCatalyst).

Structure

Le chemin de base des configurations est :

     /etc/cloudservices.

Pour chaque type de configuration, un modèle et un composant sont fournis. Ainsi, une fois personnalisés, les modèles de configuration peuvent répondre à la plupart des besoins.

Afin de proposer une configuration pour un nouveau service, vous devez :

  • créer une page de service dans
        /etc/cloudservices
  • sous :
    • un modèle de configuration
    • un composant de configuration

Le modèle et le composant doivent hériter du sling:resourceSuperType du modèle de base :

    cq/cloudserviceconfigs/templates/configpage

ou composant de base respectivement

   cq/cloudserviceconfigs/components/configpage

Le fournisseur de services doit également fournir la page de service :

    /etc/cloudservices/<nom-service>

Modèle

Votre modèle étendra le modèle de base :

    cq/cloudserviceconfigs/templates/configpage

et définissez un resourceType qui pointe vers le composant personnalisé.

/libs/cq/analytics/templates/sitecatalyst
sling:resourceSuperType = cq/cloudserviceconfigs/templates/configpage
allowedChildren = /libs/cq/analytics/templates/sitecatalyst
allowedPaths = /etc/cloudservices/analytics/*, /etc/cloudservices/analytics/.*
componentReference = cq/analytics/components/sitecatalyst
jcr:content/
cq:designPath = /etc/designs/cloudservices
sling:resourceType = cq/analytics/components/sitecatalystpage

/libs/cq/analytics/templates/generictracker
sling:resourceSuperType = cq/cloudservices/templates/configpage
allowedChildren = /libs/cq/analytics/templates/generictracker
allowedPaths = /etc/cloudservices/analytics/*, /etc/cloudservices/analytics/.*
jcr:content/
cq:designPath = /etc/designs/cloudservices
sling:resourceType = cq/analytics/components/generictrackerpage

Composants

Votre composant devrait étendre le composant de base :

    cq/cloudserviceconfigs/templates/configpage

/libs/cq/analytics/components/sitecatalystpage

/libs/cq/analytics/components/generictrackerpage

Après avoir configuré votre modèle et votre composant, vous pouvez ajouter votre configuration en ajoutant des sous-pages sous :

    /etc/cloudservices/<nom-service>

Modèle de contenu

Le modèle de contenu est stocké sous la forme cq:Page sous :

    /etc/cloudservices/<nom-service>(/*)

/etc/cloudservices
/etc/cloudservices/service-name
/etc/cloudservices/service-name/config
/etc/cloudservices/service-name/config/inherited-config

Les configurations sont stockées sous le sous-nœud jcr:content.

  • Les propriétés fixes, définies dans une boîte de dialogue, doivent être stockées directement sur le jcr:node.
  • Les éléments dynamiques (utilisant parsys ou iparsys) se servent d’un sous-nœud pour stocker les données du composant.
/etc/cloudservices/service/config/jcr:content as nt:unstructured
propertyname
*
par/component/ as cq:Component
propertyname
*

API

Pour la documentation de référence sur l’API, voir com.day.cq.wcm.webservicesupport.

Intégration CQ

Les services disponibles sont répertoriés dans l’onglet Cloud Services de la boîte de dialogue Propriétés de la page (de toute page héritant de foundation/components/page ou wcm/mobile/components/page).

L’onglet contient également :

  • un lien vers l’emplacement où vous pouvez activer le service
  • le choix d’une configuration (sous-nœud du service) à partir d’un champ de chemin

Chiffrement de mot de passe

Lorsque vous stockez des informations d’identification d’utilisateur pour le service, tous les mots de passe doivent être chiffrés.

Pour cela, il faut ajouter un champ de formulaire masqué. L’annotation @Encrypted doit être présente dans le nom de propriété de ce champ, par exemple, pour le champ password, le nom de la propriété serait écrit comme suit :

     password@Encrypted

La propriété est alors automatiquement chiffrée (en utilisant le service CryptoSupport) par EncryptionPostProcessor.

Remarque :

Ceci est similaire aux annotations SlingPostServlet standard.

Remarque :

Par défaut, EcryptionPostProcessor chiffre uniquement les requêtes POST effectuées sur /etc/cloudservices.

Propriétés supplémentaires pour les nœuds jcr:content de page de service

Propriété Description
componentReference Chemin de référence vers un composant à inclure automatiquement dans la page.
Ceci est utilisé pour des fonctionnalités supplémentaires et des inclusions JS.
Est concerné composant sur la page où      cq/cloudserviceconfigs/components/servicecomponents
est ajouté (normalement avant la balise body).
Dans le cas de Google Analytics et Target, nous utilisons ceci pour insérer des fonctionnalités supplémentaires, telles que des appels JavaScript, afin de suivre le comportement des visiteurs.
description Brève description du service.
descriptionExtended Description détaillée du service.
ranking Classement des services à utiliser dans les listes.
selectableChildren Filtre permettant d’afficher les configurations dans la boîte de dialogue des propriétés de la page.
serviceUrl URL du site Web de service.
serviceUrlLabel Libellé de l’URL du service.
thumbnailPath Chemin d’accès à la vignette du service.
visible Visibilité dans la boîte de dialogue des propriétés de la page. Visible par défaut (optionnel)

Cas d’utilisation

Ces services sont fournis par défaut :

Ce produit est distribué sous licence Creative Commons Attribution - Pas d’utilisation commerciale - Partage à l’identique 3.0 non transposé  Les publications Twitter™ et Facebook ne sont pas couvertes par les dispositions Creative Commons.

Mentions légales   |   Politique de confidentialité en ligne