Tutoriel : Personnalisation des connecteurs du magasin de ressources de catalogue par défaut avec le profil Ingest
Ce tutoriel explique comment utiliser des profils Ingest avec les connecteurs de votre magasin de ressources de catalogue pour séparer les configurations personnalisées et le code logique de la logique d'édition de produit. Cette séparation logique facilite la mise à niveau vers les éditions ultérieures du produit.
Dans l'environnement de développement par défaut, le profil de recherche indexe le vendeur d'attributs prédéfinis pour les magasins de la place de marché. Le vendeur est le fournisseur qui vend les produits sur le magasin de la place de marché.
Dans ce tutoriel, vous apprenez à indexer une description de vendeur d'attribut supplémentaire pour le magasin de la place de marché en étendant la SQL par défaut dans un processeur Ingest personnalisé. Vous allez écrire du code de processeur Ingest personnalisé dans Java et générer et tester cette logique de processeur Ingest personnalisée exclusivement dans un kit d'outils NiFi, pour étendre les connecteurs par défaut. Le remplacement du profil de recherche de requête par défaut vous permet d'effectuer une requête sur le nouvel attribut, qui est indexé à l'aide de la logique Ingest personnalisée dans les zones de réponse.
Niveau de compétences requis
Ce tutoriel s'adresse aux développeurs HCL Commerce expérimentés chargés de la création et de la mise à jour des personnalisations pour HCL Commerce Search. Les étapes sont principalement basées sur Personnalisation des profils Ingest.
- HCL Commerce Search. Pour une introduction, voir Utilisation du service HCL Commerce Search et Personnalisation de la solution de recherche basée sur Elasticsearch.
- Le modèle d'indexation de magasin de ressources de catalogue (CAS), tel que décrit dans Choix de votre modèle d'index.
- Services HCL Commerce. Pour plus d'informations, voir Utilisation des services HCL Commerce SOI.
- Le service Ingest. Pour une introduction, voir Service Ingest et pour un guide de personnalisation, voir Extension du service Ingest.
- Profils Ingest .
- Apache NiFi.
- Programmation dans Java.
- Apache Maven.
- Structured Query Language (SQL).
Temps nécessaire
Prévoyez trois heures pour réaliser ce tutoriel. Le tutoriel prend plus de temps si vous explorez les concepts connexes qu'il aborde.
Prérequis
- Assurez-vous que vous disposez d'un environnement HCL Commerce Developer configuré pour la plateforme de données Elasticsearch. Pour plus d'informations, voir Configuration de l'HCL Commerce Developer Search environment.
- Téléchargez HCL_Commerce_Search_Bundle_9.1.x.x.zip à partir de HCL License & Delivery Portal et procédez à son extraction. Après avoir décompressé le fichier, localisez le fichier commerce-custom-search-marketplace-seller.zip dans le répertoire \dependencies\nifi\Tutorials extrait.
Extrayez commerce-custom-search-marketplace-seller.zip dans un répertoire temporaire dans votre environnement de développement. Utilisez cette option pour configurer le kit d'outils NiFi, comme indiqué plus loin dans ce tutoriel. Ce fichier inclut l'exemple de code Java et des tests Junit que vous utilisez dans ce tutoriel.
- Activez la fonction d'aperçu de la place de marché dans HCL Commerce Developer Tooling environment. Pour plus d'informations, voir Activation de Marketplace dans le HCL Commerce Developer Legacy environment.
- Activez la fonctionnalité Marketplace à l'aide du point de terminaison de configuration du service Query suivant.
avec ce corps de requête :PATCH http://QUERY_HOST:QUERY_PORT/search/resources/api/v2/configuration?nodeName=ingest&envType=auth{ "global": { "connector": [ { "name": "attribute", "property": [ { "name": "flow.marketplace", "value": "true" } ] } ] } }Note: Toutes les API mentionnées tout au long du tutoriel doivent être exécutées en ajoutant l'authentification de base pour l'utilisateurAssurez-vous que le modèle d'index CAS est activé en exécutant une requête SQL telle que :spiuser, où l'utilisateur estspiuseret le mot de passe estQxV7uCk6RRiwvPVaa4wdD78jaHi2za8ssjneNMdu3vgqi
Vous devriez recevoir une réponseSELECT * FROM STORECONF WHERE name = 'wc.search.CASIndexModel';true.
Si la réponse n'est pastrue, exécutez la requête de mise à jour suivante pour la mettre à jour :UPDATE STORECONF SET VALUE= 'true' WHERE name = 'wc.search.CASIndexModel';Déclenchez un index complet pour le magasin EmeraldMP (storeId=12001) à l'aide du nœud final Ingest suivant.POST http://INGEST_HOST:30800/connectors/auth.reindex/run?storeId=12001Une fois la génération terminée et que la console NiFi affiche les données en file d'attente de0/0octets, exécutez les commandes GET suivantes à l'aide d'un client REST.- Vérifiez la réponse pour le profil de recherche par défaut
HCL_V2_findProductByPartNumber_Detailsen exécutant l'appel GET suivant.GET http://QUERY_HOST:30920/search/resources/api/v2/products?storeId=31&seller=7000000000000007002&partNumber=MPHBA031_310301 - Vérifiez la réponse pour le profil de recherche par défaut
HCL_findCatalogEntrySKUsen exécutant l'appel GET suivant.GET http://QUERY_HOST:30920/search/resources/api/v2/products?storeId=31&seller=7000000000000007002&id=14503
- Vérifiez la réponse pour le profil de recherche par défaut
- Préparez le kit d'outils de développement pour NiFi en suivant les instructions de Processeurs NiFi personnalisés. Le kit d'outils NiFi doit être configuré avec Eclipse défini pour utiliser le compilateur Java 1.8, avec Maven version 3.8.4 ou ultérieure. Définissez le chemin de génération Java pour que le projet importé utilise les bibliothèques JavaSE-1.8.Appliquez des correctifs au conteneur NiFi sur la plateforme de données et obtenez les derniers fichiers JAR à partir du conteneur corrigé en cours d'exécution avant de configurer et de générer des ressources de tutoriel dans le kit d'outils NiFi. Par exemple, pour l'environnement version 9.1.12, les fichiers JAR sont les suivants :
- commerce-search-processors-9.1.12.0.jar
- hcl-cache-core-9.1.12.0-20221201.221643-25.jar
- cf-base-9.1.12.0-20221123.064414-9.jar
- Lancez une Génération Maven… sur le projet de groupement racine. Dans l'explorateur de projets, cliquez avec le bouton droit de la souris sur la racine (commerce-search-custom-bundle-9.1.x.x) et sélectionnez . La fenêtre Editer la configuration s'affiche. Entrez la commande suivante dans la zone d'entrée Objectifs :
Cliquez sur le bouton Exécuter.clean install -U -Denforcer.skip=trueUne fois la génération réussie, les fichiers NAR peuvent être consultés dans le sous-répertoire cible du projet
commerce-custom-search-processors.