Fichiers de configuration de magasin

La personnalisation et la configuration du magasin nécessitent des modifications, ou l'ajout et l'extension des fichiers de configuration dans l'archive Web des magasins personnalisés (crs-web.war) sur le Store server. Les sections suivantes détaillent les fichiers spécifiques, leurs emplacements et leurs fonctions pour la personnalisation du magasin. En outre, le fichier de configuration sur le Transaction server qui doit être modifié pour le Store server est également détaillé.

Emplacement des fichiers

Le tableau suivant décrit l'emplacement des fichiers essentiels dans le Store server, et où ces fichiers doivent être placés pour remplacer leurs originaux dans l'archive web des magasins étendus. Veillez à répliquer la structure de fichier hiérarchique complète et ajoutez la convention de dénomination -ext aux fichiers personnalisés.
Remarque : L'archive d'entreprise HCL Commerce (WC.ear) ne figure pas dans le Store server. Une archive d'entreprise crs.ear qui est l'archive du magasin, est disponible sur le Store server. L'archive WC.ear est l'archive d'entreprise pour le Transaction server.
Répertoire d'origine Répertoire d'extension
crs-web.war/ crs-web.war/
crs.ear/ crs-web.war/

Fichiers de configuration du serveur de magasin

Archive d'entreprise HCL Commerce (WC.ear)
  • workspace_dir/WC/xml/config/com.ibm.commerce.foundation/wc-component.xml

    Fichier de configuration de composant de base HCL Commerce sur le Transaction server. Pour le stockage, cette configuration inclut les variables requises pour l'invalidation du cache de la vitrine, l'aperçu du magasin et le rendu des modèles de courrier électronique (fichiers de page JavaServer).

    <_config:configgrouping name="RemoteStoreConfiguration">
    <!-- value to remote store web host name -->
    <_config:property name="wc.store.remote.webHostName" value="host_name"/>
    <!-- value to remote store web host HTTP port number -->
    <_config:property name="wc.store.remote.webNonSSLPort" value="port"/>
    <!-- value to remote store web host HTTPS port number -->
    <_config:property name="wc.store.remote.webSSLPort" value="port"/>
    <!-- value to remote store context root -->
    <_config:property name="wc.store.remote.webContextPath" value="store_context_path"/>
    <!-- value to remote store preview context root -->
    <_config:property name="wc.store.remote.previewContextPath" value="preview_context_path"/>
    
    Où :
    nom_hôte
    Nom d'hôte du serveur Web du magasin. Utilisé pour le rendu du modèle de courrier électronique et l'aperçu du magasin.
    port
    Numéro de port du serveur Web du magasin. Utilisé pour le rendu du modèle de courrier électronique et l'aperçu du magasin.
    • Le numéro de port non SSL par défaut est 8080.
    • Le numéro de port SSL par défaut est 8443.
    store_context_path
    Chemin de contexte sans aperçu pour les pages de magasin. Utilisé pour le rendu du modèle de courrier électronique. Vous pouvez déterminer le chemin de contexte par défaut en affichant le contenu du fichier de configuration wc-store.xml dans votre Externalized Customization workspace. Ce fichier se trouve dans le répertoire crs\xml\config. Dans le fichier, localisez l'élément InstanceProperties/Websphere/WebModule. Le chemin de contexte par défaut pour les pages de magasin est défini dans le Module qui comporte la propriété name avec la valeur Stores. Le chemin de contexte par défaut pour les pages de magasin est /webapp/remote/stores.
    preview_context_path
    Chemin d'accès au contexte d'aperçu de magasin pour les pages de magasin. Utilisé pour le rendu de l'aperçu du magasin. Vous pouvez déterminer le chemin de contexte par défaut en affichant le contenu du fichier de configuration wc-store.xml dans votre Externalized Customization workspace. Ce fichier se trouve dans le répertoire crs\xml\config. Dans le fichier, localisez l'élément InstanceProperties/Websphere/WebModule. Le chemin du contexte d'aperçu de magasin par défaut se trouve dans le Module qui comporte la propriété name avec la valeur Preview. Le chemin du contexte d'aperçu par défaut est /webapp/remote/preview.

Archive d'entreprise Store server (crs.ear)
  • crs.ear/xml/config/wc-store.xml
    Les sections suivantes de ce fichier sont personnalisables :
    • <config/InstanceProperties/WebSphere/WebModule>
    • <config/InstanceProperties/Instance>
    • <config/InstanceProperties/Instance@enableDialogActivity>
    • <config/InstanceProperties/WhiteListProtection>
    • <config/InstanceProperties/XSiteScriptingProtection>
    • <config/Components>
    • <config/NonEncryptedParameters>
    • <config/SEOConfiguration>
    • <config/DoubleClieckMonitoredCommands>
    Remarque : enableDialogMarketing est la seule option de configuration personnalisable unique pour HCL Commerce on Cloud. Cette fonction est désactivée par défaut. Lorsqu'elle est activée, les événements marketing sont déclenchés via le canal Web. Cette fonctionnalité active le système de marketing sur le Transaction server pour évaluer le comportement de l'utilisateur en fonction des règles de marketing.

    Pour plus d'informations sur ces sections et valeurs personnalisables, voir Fichier de configuration du serveur de magasin (wc-store.xml).

Archive Web de magasins
  • crs-web.war/crs/xml/mapper/SEOUrlMapper.xml

    Configuration du format de mappeur d'URL de référencement. Ce fichier n'est pas directement personnalisable. Si vous souhaitez modifier la configuration du format de mappeur d'URL de référencement, vous devez modifier la valeur config/SEOConfiguration dans wc-store.xml. Pour plus d'informations sur la création d'URL adaptées au référencement, voirConstructing SEO-friendly URLs by using pattern files dans la documentation HCL Commerce Version 9.

  • crs-web.war/WEB-INF/AliasConfig.xml

    Configuration d'alias utilisée par la balise alias et la balise alias bean.

Archive Web de magasins
  • crs-web.war/WEB-INF/xml/config/bi/biConfig.xml

    Configuration d'intégration Coremetrics. Peut être modifié directement. Pour plus de détails sur le fichier biConfig.xml et la façon de le mettre à jour, voir Updating the biConfig.xml file dans la documentation HCL Commerce Version 9.

  • crs-web.war/crs/xml/config/wc-attribute-masking.xml

    Configuration de masquage pour la journalisation. Peut être modifié directement. Pour plus d'informations sur le masquage dans la journalisation, voir Logging and tracing dans la documentation HCL Commerce Version 9.

  • crs-web.war/WEB-INF/xml/seo/stores/storeDir/SEOURLPatterns.xml
    Configurations de modèle d'URL de référencement. Peut être modifié directement. Pour plus d'informations sur la création d'URL adaptées au référencement, voirConstructing SEO-friendly URLs by using pattern files dans la documentation HCL Commerce Version 9.
    Remarque : Les fichiers SEOURLPatterns-ext.xml précédents peuvent toujours être utilisés pour personnaliser les modèles d'URL de référencement. Cependant, le fichier par défaut SEOURLPatterns.xml n'est pas mis à jour automatiquement lors d'une migration. Ce fichier doit être migré à partir des nouvelles versions manuellement.

Modèle REST

Les modèles REST définissent les formats de requête pour les services REST qui sont exécutés par les contrôleurs Spring sur le Store server. Chaque contrôleur d'action appelle les services REST tels que définis dans les modèles REST pour l'exécution de la logique métier. Les services REST définis dans les modèles REST sont regroupés par définitions de ressources et chaque définition de ressource est subdivisée en définitions de méthode :
  • Une ressource est caractérisée par un chemin qui est un préfixe d'URI commun à un groupe de services REST.
  • Chaque définition de méthode est caractérisée par le chemin restant après le chemin de ressource dans l'URI complète d'un service REST.
Chaque ressource ou méthode a un nom. Un nom de ressource et un nom de méthode peuvent identifier de manière unique un service REST. Pour chaque définition de méthode, un modèle est défini pour composer une demande REST à partir des paramètres d'une demande Web. Pour chaque contrôleur d'action Spring, le nom de ressource et le nom de méthode du service REST devant être exécuté par ce contrôleur sont définis par une propriété de la définition de ce contrôleur dans le fichier XML de configuration Spring.
  • crs-web.war/WEB-INF/xml/config/componentDir/rest-template-config.xml

    Ces fichiers contiennent la configuration du modèle REST pour chaque composant.

    Le contenu de ces fichiers apparaît comme suit :

    <resource path="{serverHost}/{contextPath}/store/{storeId}/loginidentity" name="loginIdentityHandler">
    <serverParam name="serverHost">$WCParam.serverHost</serverParam>
    <serverParam name="storeId">$WCParam.storeId</serverParam>
    …
    <method name="logonAndChangePassword" httpMethod="POST" path="">
    <template>
    <![CDATA[{"logonId" :
          "$logonId","logonPassword" :
          "$logonPasswordOld","logonPasswordNew" :
          "$logonPassword","logonPasswordVerify"
          : "$logonPasswordVerify"}]]>
    </template>
    </method>
    …
    </resource>
    Où :
    resource
    Ressource REST.
    chemin
    URL de la ressource REST. La variable de cette URL est modifiée dynamiquement. Par conséquent, elle doit être placée entre accolades ('{}'), et sa valeur est définie par les entrées serverParam suivantes.
    nom
    Nom de ressource défini du service.
    serverParam
    Cet élément est un sous-élément de la balise de ressource.

    Variables utilisées dans le chemin de la ressource. Les variables serverHost, contextPath et storeId sont automatiquement résolues pour être les valeurs pour le serveur HCL Commerce d'arrière-plan, basé sur le schéma de requête et le mode d'aperçu en cours. D'autres paramètres sont obtenus à partir des paramètres de demande actuels.

    méthode
    Cet élément est un sous-élément de la balise de ressource.

    Définition de la méthode.

    nom
    Nom de la méthode définie. Avec le nom de la ressource, il devient la propriété de paramètre définie dans la définition du contrôleur d'action. Par exemple, pour cet exemple de service, le paramètre est loginIdentityHandler.logonAndChangePassword.
    httpMethod
    Méthode HTTP pour cette demande REST.
    path
    Partie de la méthode de la ressource REST dans l'URL. Par exemple, le chemin de la méthode pour le service /store/{storeId}/person/@self est @self. Si ce paramètre est laissé vide, l'URL du chemin de ressource utilisée est l'URL complète.
    modèle
    Valeurs d'entrée requises par la demande REST au format JSON. Pour les services POST, PUT et DELETE, le corps JSON est au format de ce modèle. Pour les services GET, les variables du modèle sont ajoutées dans l'URL en tant que paramètres de requête. Les valeurs des variables sont trouvées à partir des propriétés de la demande, en utilisant les valeurs des modèles sans le signe dollar comme nom de la propriété de la demande. Si une valeur de variable ne comporte pas le signe dollar, la valeur de variable dans le modèle est la valeur composée à la demande REST.
Remarque : Vous n'avez pas besoin de configurer le format de réponse REST pour le modèle REST. Le format de réponse est configuré en fonction du serveur de transactions.

Fichiers de configuration Spring

  • crs-web.war/WEB-INF/spring/storeDir/controllers.xml importe tous les autres fichiers de définition du contrôleur.
  • crs-web.war/WEB-INF/spring/storeDir/views.xml importe tous les autres fichiers de définition de vue.
Important :
  • Il est recommandé de modifier ces fichiers en utilisant la convention de dénomination -ext et d'utiliser les identificateurs de magasin dans les entrées de contrôleur et de vue.
  • Les entrées Spring dans controllers.xml et views.xml en dehors des dossiers de magasin individuels s'appliquent à tous les magasins. Si ces fichiers sont modifiés directement, les configurations delta sont ajoutées aux dossiers des nouveaux magasins publiés ultérieurement. Les configurations delta sont utilisées car les fichiers non ext modifiés ne sont pas compatibles avec le magasin type fourni par défaut. Si vous personnalisez votre nouveau magasin afin qu'il soit compatible avec vos configurations globales modifiées, vous pouvez supprimer ces fichiers de configuration.