Création et enregistrement d'un fichier JSP de sérialisation pour l'élément de campagne

Créez et enregistrez un fichier JSP de sérialisation qui recevra les éléments de création des tables DMELEMENT et DMELEMENTNVP pour votre élément de campagne et les affichera dans l'interface utilisateur du Centre de gestion. Les utilisateurs peuvent ensuite définir les propriétés de l'élément de campagne dans des activités marketing.

Pourquoi et quand exécuter cette tâche

Lorsqu'un utilisateur professionnel ouvre une activité, le fichier JSP de sérialisation parent, GetActivityChildren.jsp, appelle le fichier JSP de sérialisation pour chaque élément de campagne afin de charger les données de l'activité.

Si la définition d'objet pour votre nouvel élément de campagne inclut wcfChildObjectDefinitions ou wcfReferenceObjectDefinitions, vous devez créer un fichier JSP de sérialisation pour votre nouvel élément de campagne ; autrement, vous pouvez utiliser le fichier JSP de sérialisation générique, SerializeActivitygenericElement.jsp, tel quel. Dans les deux cas, vous devez enregistrer le fichier JSP de sérialisation dans le fichier de configuration Struts pour personnalisation, struts-extension.xml. Initialement, ce fichier est vide et il est prioritaire sur tous les fichiers de configuration Struts.

Procédure

  1. Ouvrez HCL Commerce Developer et basculez vers la vue Explorateur d'entreprise.
  2. Si vous avez besoin d'un nouveau fichier JSP de sérialisation, suivez la procédure ci-dessous ; sinon, passez à l'étape 3:
    1. Créez un répertoire pour héberger votre nouveau fichier JSP.
      Utilisez une structure de répertoire similaire à l'exemple suivant :

      LOBTools/WebContent/jsp/your_company_name/marketing

    2. Créez un fichier JSP à l'aide de la syntaxe suivante : SerializeActivitycampaign_element_name.jsp, par exemple, SerializeActivityCustomLevelOfSupport.jsp.
    3. Définissez le nouveau fichier JSP de sérialisation.
      Ci-dessous figure un exemple de fichier JSP de sérialisation pour une cible personnalisée :
      <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
      <object objectType="customLevelOfSupport"> 1
          <parent><object objectId="${element.parentElementIdentifier.name}"/></parent> 2a
          <elemTemplateName><![CDATA[${element.campaignElementTemplateIdentifier.externalIdentifier.name}]]&gt;</elemTemplateName> 2b
          <elementName>${element.campaignElementIdentifier.name}</elementName> 2c
          <sequence>${element.elementSequence}</sequence> 2d
          <customerCount readonly="true">${element.count}</customerCount> 2e
          <c:forEach var="elementVariable" items="${element.campaignElementVariable}"> 3
              <${elementVariable.name}> 
                  <![CDATA[${elementVariable.value}]]&gt;
              </${elementVariable.name}>
          </c:forEach>
      </object>

      Les lignes avec des renvois en noir sont décrites ci-dessous :

      • 1 La valeur objectType doit correspondre à la valeur objectType spécifiée dans la définition d'objet pour cet élément de campagne.
      • 2a-e Ces cinq éléments sont obligatoires : insérez les lignes de code exactement comme présenté dans l'exemple précédent, sans leur apporter aucune modification.
      • 3 L'élément <c:forEach> parcourt toutes les valeurs stockées pour l'élément de campagne dans la table DMELEMENTNVP et renvoie tous leurs noms (dans elementVariable.name) et valeurs (dans elementVariable.value).

      Ce JSP doit également renvoyer les wcfChildObjectDefinitions et wcfReferenceObjectDefinitions éventuelles. Pour des exemples de fichiers JSP de sérialisation qui effectuent ceci, consultez un fichier JSP de sérialisation par défaut associé à un élément de campagne similaire. Les fichiers par défaut sont nommés SerializeActivitycampaign_element_name.jsp, par exemple, SerializeActivityonlineBehavior.jsp. Les fichiers par défaut sont stockés sous l'emplacement suivant :

      LOBTools/WebContent/jsp/commerce/marketing/restricted/

    4. Sauvegardez et fermez le nouveau fichier de sérialisation JSP.
  3. Ouvrez le fichier de configuration ,spring-extension.xml.
    Ce fichier est stocké sous le chemin d'accès suivant :

    LOBTools/WebContent/WEB-INF

  4. Ajoutez un nouveau mappage d'action pour enregistrer le fichier de sérialisation JSP :
    • Si vous avez créé votre propre fichier de sérialisation JSP, votre mappage d'action doit respecter la syntaxe suivante :
      <action path="/SerializeActivityElement-objectType_value" include="/jsp/your_company_name/marketing/name_of_serialization_jsp_file.jsp" />

      • objectType_value correspond à la valeur de l'attribut objectType défini dans la définition d'objet pour cet élément de campagne
      • name_of_serialization_jsp_file est le nom que vous avez affecté à votre fichier JSP de sérialisation pour votre nouvel élément de campagne lors d'une étape antérieure de cette procédure.
    • Si vous utilisez le fichier JSP de sérialisation générique, votre mappage d'action doit respecter la syntaxe suivante :
      <action path="/SerializeActivityElement-objectType_value" include="/jsp/commerce/marketing/restricted/SerializeActivitygenericElement.jsp" />

      objectType_value correspond à la valeur de l'attribut objectType défini dans la définition d'objet de cet élément de campagne.

    Ci-dessous figurent quelques conseils :
    • Si vous avez copié du code d'un fichier JSP de sérialisation existant, vous devez mettre à jour les chemins comme il se doit pour les fichiers JSP inclus.
    • Si vous modifiez votre fichier JSP de sérialisation, veillez à éditer le fichier GetActivityChildren.jsp. Vous n'avez pas besoin de modifier le fichier GetActivityChildren.jsp ; contentez-vous de le sauvegarder pour modifier l'horodatage de modification du fichier. Le fichier GetActivityChildren.jsp incluant les fichiers JSP de sérialisation, les modification que vous avez apportées à votre fichier JSP de sérialisation seront récupérées.
  5. Redémarrez le serveur de test HCL Commerce afin de rendre disponible la nouvelle configuration.