Migration de services de recherche personnalisés

La rubrique suivante illustre comment faire migrer votre service de recherche basé sur BOD vers une recherche basée sur REST en étendant le répertoire search-rest-ext.war, puis en configurant les processus de génération et de déploiement pour la recherche.

Procédure

  1. Créez un HCL Commerce Version 9 nœud final dans votre environnement de développement.
    1. Accédez au répertoire <WCDE_installdir>\workspace\search-ear.
    2. Importer le fichier WAR en cliquant avec le bouton droit sur le projet search-rest-ext.war, puis cliquez sur Propriétés > Paramètres de projet Web.
    3. Remplacez la racine de contexte par search/ext/resource.
    4. Ecrivez votre code Java et enregistrez-le dans le répertoire src sous le projet search-logic-ext.
    5. Enregistrez cette classe dans resources.properties dans le répertoire search-rest-ext/WebContent/WEB-INF/config.
      Remarque : Supprimez toutes les classes existantes du fichier de propriétés.
    6. Créez vos préprocesseurs et post-processeurs dans le répertoire src du projet search-logic-ext.
    7. Créez un profil de recherche à l'aide de préprocesseurs et de post-processeurs dans le fichier wc-search.xml, qui se trouve dans le répertoire /src/runtime/config/com.ibm.commerce.search .
    8. Associez le profil de recherche à la méthode correspondante du fichier wc-rest-resourceconfig.xml, qui se trouve dans le répertoire /src/runtime/config/com.ibm.commerce.rest de dossier.
  2. Configurez WCB pour la fonction de recherche.
    1. Téléchargez le fichier WCBSamples.zip.
    2. Procédez à l'extraction du fichier zippé. Copiez WCBSamples/search/wcbd dans votre répertoire <WCDE_installdir>/wcbd. Copiez ensuite WCBSamples/search/Build_Local_Repository dans <WCDE_installdir>.
    3. Ouvrez le fichier build-local-search.properties et mettez à jour les propriétés suivantes avec les valeurs spécifiques à votre environnement.
      wc.home=W:/WCDE_V9
      was.home=W:/IBM/WebSphere/AppServer
      web.module.list=search-rest-ext
    4. Ouvrez le fichier extract-local-search.properties et mettez à jour la propriété suivante avec la valeur spécifique à votre environnement.
      local.extract.dir=W:/WCDE_V9/Build_Local_Repository/search
    5. Videz le contenu du répertoire <WCDE_installdir>\Build_Local_Repository\search\workspace.
    6. Copiez les dossiers search-config-ext, search-logic-ext et search-rest-ext dans le répertoire <WCDE_installdir>\Build_Local_Repository\search\workspace.
    7. Ouvrez une invite de commandes, accédez au répertoire <WCDE_installdir>\wcbd, puis exécutez la commande suivante.
      wcbd-ant.bat -buildfile wcbd-build.xml -Dbuild.type=local -Dapp.type=search -Dbuild.label=demo
    8. Accédez au répertoire <WCDE_installdir>\wcbd\dist\server et vérifiez que votre package wcbd-deploy-server-local-search-demo.zip est créé. Vous extrayez ce paquet à l'étape suivante.
  3. Préparez l'image Docker de recherche personnalisée. Cette étape suppose que vous utilisiez Docker Composer dans un environnement de création. Pour plus d'informations sur la création de cet environnement, voir Déploiement d'un environnement de création HCL Commerce version 9.0.0.0 à 9.0.1.17 avec Docker Compose.
    1. Créez un répertoire nommé cust pour héberger votre fichier docker-compose.yml. Ensuite, créez un répertoire cust/search pour héberger votre package personnalisé, le fichier application.xml et le fichier Docker.
    2. Extrayez votre wcbd-deploy-server-local-search-demo.zip dans le répertoire cust/search/CusDeploy, puis copiez le fichier <WCDE_installdir>\workspace\search-ear\META-INF\application.xml dans le répertoire cust/search.
    3. Dans le répertoire cust/search, créez un fichier Docker avec le contenu suivant.
      FROM <Docker_registry>/commerce/search-app
      COPY CusDeploy /SETUP/Cus
      RUN /SETUP/bin/applyCustomization.sh
  4. Lancez l'environnement de composition Docker.
    1. Accédez au répertoire \cust, puis exécutez la commande suivante :
      docker-compose up -d --build
    2. Une fois tous les services démarrés, générez votre index en exécutant la commande curl suivante :
      curl -X POST -k -u spiuser:<password> https://localhost:5443/wcs/resources/admin/index/dataImport/build?masterCatalogId=10001
    3. Une fois l'index généré, accédez à l'URL suivante pour vérifier que le site fonctionne comme prévu :
      https://localhost:3738/search/ext/resources/store/1/extproductview/byCategory/10001?currency='USD'&searchSource='O'&pageSize=2&pageNumber=1&langId=-1