HCL Commerce Enterprise

Activation du contrôle des modifications pour une partie de nom

Lorsque le nom peut être divisé en plusieurs parties modifiables séparément, les informations de contrôle des modifications peuvent elles-même être indépendantes. Des médiateurs de parties peuvent être enregistrés afin de modifier les médiateurs de changement qui gèrent les parties de nom en étendant le fichier wc-business-object-mediator.xml.

Remarque : Le fichier wc-business-object-mediator.xml ne peut pas être étendu pour personnaliser le médiateur de la partie.

Avant de commencer

  1. Activation de la prise en charge des espaces de travail pour une table personnalisée dans un module de service BOD existant de HCL Commerce
  2. Activation du contrôle des modifications pour un nom

Pourquoi et quand exécuter cette tâche

Une partie de nom modifiée hérite des informations de contrôle des modifications de son nom parent par défaut. Cependant, si cette partie du nom a été explicitement configurée pour un contrôle indépendant des modifications, un enregistrement CMMETADATA séparé est utilisé pour gérer les informations de contrôle des modifications de cette partie du nom.

Pour configurer le contrôle des modifications pour une partie de nom, procédez comme suit :

Procédure

  1. Lancez HCL Commerce Developer.
  2. Identifiez le fichier de configuration du médiateur d'objet métier où vous configurerez cette partie de nom. Dans la plupart des cas, vous aurez déjà créé ce fichier en suivant les étapes de la rubrique Activation du contrôle des modifications pour un nom. Cependant, si vous activez un contrôle des modifications supplémentaire pour une partie d'un nom par défaut de HCL Commerce déjà configuré dans les fichiers de configuration par défaut, vous devrez créer un nouveau fichier pour vos extensions.
    1. Déterminez l'emplacement approprié du fichier de configuration sur lequel opérer, en fonction des critères suivants :
      • Si vous activez un contrôle des modifications pour une partie de nom dans un module de service par défaut de HCL Commerce, cliquez avec le bouton droit de la souris sur le dossier WC\config\com.ibm.commerce.myservicemodulename-ext.
      • Si vous activez un contrôle des modifications pour une partie de nom dans un module de service personnalisé, cliquez avec le bouton droit de la souris sur le dossier WC\config\com.ibm.commerce.myservicemodulename.
    2. Si wc-business-object-mediator.xml n'existe pas encore dans ce répertoire, sélectionnez Nouveau > Autre > XML > XML > Suivant. Si ce fichier existe déjà, passez à l'étape suivante.
    3. Sélectionnez Créer un fichier XML sans aucune base.
    4. Cliquez sur Suivant.
    5. Nom du fichier : wc-business-object-mediator.xml.
    6. Cliquez sur Terminer.
  3. Les médiateurs de nom sont définis dans l'élément <_config:object> pour ce nom. S'il s'agit d'extensions de configurations de médiateurs d'objet métier existants, vous devrez copier cet élément afin d'ajouter des médiateurs pour les noms et les parties de nom. Dans le cas de nombreuses personnalisations, ce fichier (et l'élément <_config:object> approprié) aura déjà été créé pour vous lors de l'exécution de l'assistant couche service de données. Vous ne devriez jamais modifier les fichiers de configuration par défaut de médiateur d'objet métier HCL Commerce car ces modifications pourraient être écrasées lors de mises à jour de HCL Commerce.
  4. Les médiateurs de partie de nom sont définis dans l'élément <_config:mediator> du médiateur de nom. S'il s'agit d'extensions de configurations de médiateurs d'objet métier existants, vous devrez copier cet élément afin d'ajouter des médiateurs pour les parties de nom. Dans le cas de nombreuses personnalisations, ce fichier (et l'élément <_config:mediator> approprié) aura déjà été créé pour vous lors de l'exécution de l'assistant couche service de données.
  5. Ajoutez un élément <_config:part-mediator> à l'élément <_config:mediator>. Attribuez à l'attribut interfaceName la valeur com.ibm.commerce.foundation.server.services.dataaccess.bom.mediator.BusinessObjectMediator. Etant donnée que l'implémentation du médiateur de partie est couplée à celle du médiateur de contrôle des modifications du nom, aucune interface unique n'est requise.

    Par exemple :

    <_config:part-mediator interfaceName="com.ibm.commerce.foundation.server.services.dataaccess.bom.mediator.BusinessObjectMediator">
    
  6. Créez un élément <_config:part-mediator-implementation> avec un nom de classe com.ibm.commerce.context.content.locking.ChangeControlBusinessObjectPartMediatorImpl. Cette implémentation de médiateur de partie est celle attendue et dont dépend le médiateur de contrôle des modifications. Tous les médiateurs de contrôle des modifications de partie doivent appartenir à cette classe ou à une sous-classe de celle-ci.
    Par exemple :
    		<_config:part-mediator-implementation className="com.ibm.commerce.context.content.locking.ChangeControlBusinessObjectPartMediatorImpl">
    
  7. Ajoutez un élément <_config:mediator-properties> et, dans celui-ci, des éléments, <_config:mediator-property> pour l'implémentation du médiateur de partie. Une explication des valeurs et un exemple des éléments de configuration figurent ci-dessous :
    objectPath
    Propriété obligatoire identifiant la partie de nom à laquelle vous appliquez le contrôle des modifications. Sa valeur correspond à l'expression XPath pointant vers la partie de nom.
    uniqueIDProperty
    Propriété du nom permettant la résolution de l'identificateur. Affectez la valeur uniqueID à ce paramètre. Cette valeur est celle de la colonne BOKEY1 dans la table CMMETADATA.
    resourceManagerId
    Propriété obligatoire identifiant la valeur utilisée dans la colonne CMRESMGR_ID de la table CMMETADATA. L'ID du gestionnaire de ressources doit correspondre à un gestionnaire de ressources défini (mappé à une table) pour le module de service et situé dans l'un des fichiers suivants :
    • HCL Commerce Developer workspace_dir\wc\xml\content-management\ servicemodulename.resource-managers.xml
    • WC_installdir\wc.ear\xml\content-management\servicemodulename.resource-managers.xml
    • HCL Commerce Developerworkspace_dir\wc\xml\content-management\servicemodulename.resource-managers-ext.xml
    • WC_installdir\wc.ear\xml\content-management\servicemodulename.resource-managers-ext.xml

    L'élément resourceManagerId est défini au cours des étapes de la rubrique Activation de la prise en charge des espaces de travail pour une table personnalisée dans un module de service BOD existant de HCL Commerce.

    L'exemple de code suivant présente une définition complète :
    			 <_config:mediator-properties>
    			 	<_config:mediator-property name="objectPath" value="Association"/>
    			 	<_config:mediator-property name="uniqueIDProperty" value="uniqueID"/>
    			 	<_config:mediator-property name="resourceManagerId" value="18"/>
    			 </_config:mediator-properties>
    
  8. Facultatif : Vous pouvez spécifier des propriétés supplémentaires de médiation de contrôle des modifications de partie de nom :
    1. Vous pouvez indiquer une propriété uniqueIDProperty correspondant à la propriété de l'objet spécifiant la valeur stockée dans la colonne BOKEY2 de la table CMMETADATA. Spécifiez cette propriété si la propriété d'objet est formée d'une liste dont chaque élément a des informations de contrôle des modifications propres qui lui sont associées. Cette propriété n'est pas requise si tous les éléments partagent les mêmes informations de contrôle des modifications.