Configuration de l'environnement de développement
Configurez l'environnement de développement dans Eclipse IDE pour l’écriture de vos plug-ins. Utilisez n’importe quel IDE Java EE de votre choix et effectuez les configurations requises mentionnées dans cette rubrique. Vous avez besoin de certains artefacts <ASSET_PICKER_HOME> pour terminer la configuration de l’environnement. Cette rubrique fournira des informations sur la génération et le packaging de projet à l’aide d’Apache Maven, ce qui permet de s’assurer qu'Apache Maven est installé.
Pourquoi et quand exécuter cette tâche
Pour configurer l'environnement de développement, suivez la procédure ci-dessous :
Procédure
- Depuis l'emplacement <ASSET_PICKER_HOME>/dev-kits/, copiez le projet asset-integration-starter et insérez-le dans votre espace de travail de développement.
- Ouvrez l’IDE Eclipse.
-
Sélectionnez Fichier > Importer.
La boîte de dialogue Sélectionner apparaît.
-
Sélectionnez Fichier WAR, puis cliquez sur Suivant.
La boîte de dialogue Importation WAR s'affiche.
- Cliquez sur Parcourir, accédez à <ASSET_PICKER_HOME> et au fichier select asset-viewer.war.
-
Cliquez sur Terminer.
La boîte de dialogue Importation WAR : bibliothèques Web s’affiche.
- Cliquez sur Terminer.
-
Sélectionnez Fenêtre > Afficher la vue > Autre.
La boîte de dialogue Afficher la vue apparaît.
-
Sélectionnez Serveurs, puis cliquez sur Ouvrir.
A titre d’exemple, nous allons illustrer l’utilisation d’Apache Tomcat 9.0 pour l’exécution de Content Integration. Vous pouvez utiliser n’importe quel serveur d’applications pris en charge et effectuer les configurations requises.
- Ouvrez le fichier conf/server.xml à partir du répertoire d’installation d’Apache Tomcat 9.0 et ajoutez l’entrée suivante, avec les détails de base de données appropriés dans l'élément <GlobalNamingResources>. Veuillez remplacer <DRIVER_CLASS_NAME>, <URL_TO_YOUR_PLATFORM_DATABASE>, <DATABASE_USERNAME>, et <DATABASE_PASSWORD> avec les détails de la base de données Platform :
<Resource auth="Container" driverClassName="{DRIVER_CLASS_NAME}" maxActive="20" maxIdle="0" maxWait="10000" name="UnicaPlatformDS" password="{DATABASE_PASSWORD}" username="{DATABASE_USERNAME}" type="javax.sql.DataSource" url="{URL_TO_YOUR_PLATFORM_DATABASE}"/> - Ouvrez le fichier conf/context.xml à partir du répertoire d’installation d’Apache Tomcat 9.0 et ajoutez l’entrée suivante dans l'élément <Context> :
<ResourceLink auth="Container" global="UnicaPlatformDS" name="UnicaPlatformDS" type="javax.sql.DataSource"/>
- Ouvrez le fichier conf/server.xml à partir du répertoire d’installation d’Apache Tomcat 9.0 et ajoutez l’entrée suivante, avec les détails de base de données appropriés dans l'élément <GlobalNamingResources>. Veuillez remplacer <DRIVER_CLASS_NAME>, <URL_TO_YOUR_PLATFORM_DATABASE>, <DATABASE_USERNAME>, et <DATABASE_PASSWORD> avec les détails de la base de données Platform :
-
Pour ajouter Apache Tomcat 9.0 en tant que nouveau serveur dans Eclipse, procédez comme suit :
-
Dans l’onglet Serveurs, cliquez sur le lien pour créer un nouveau serveur.
La boîte de dialogue Définition d'un nouveau serveur s'ouvre.
- Sélectionnez Serveur Tomcat 9.0 et fournissez des valeurs pour le Nom d’hôte du serveur et le Nom du serveur.
-
Cliquez sur Suivant.
Le serveur a été ajouté.
-
Dans l’onglet Serveurs , cliquez deux fois sur l’entrée de serveur que vous venez d’ajouter.
La boîte de dialogue Présentation apparaît.
-
Cliquez sur le lien Ouvrir la configuration de lancement.
La boîte de dialogue Edition des propriétés de configuration de lancement.
-
Modifiez les configurations de lancement pour ajouter les arguments JVM suivants :
-DASSET_PICKER_HOME=<Point this to <ASSET_PICKER_HOME> directory> -Dspring.profiles.active=platform-disintegrated - Cliquez sur OK.
-
Dans l’onglet Serveurs, cliquez sur le lien pour créer un nouveau serveur.
-
Pour exécuter le fichier asset-viewer.war importé sur Apache Tomcat 9.0, cliquez avec le bouton droit de la souris sur le fichier asset-viewer.war et sélectionnez Exécuter en tant que > Exécuter sur le serveur.
La boîte de dialogue Exécuter sur le serveur s'ouvre.
-
Cliquez sur Terminer.
Le fichier asset-viewer.war commencera à s’exécuter sur Apache Tomcat. Une fois la configuration vérifiée, arrêtez le serveur et importez le projet de démarrage du développement de plug-in.
-
Pour installer le SDK Content Integration, procédez comme suit :
-
Dans les répertoires suivants, supprimez les SDK qui sont déjà installés :
- <LOCAL_M2_REPOSITORY>\com\hcl\unica\integration-api\0.0.1-SNAPSHOT
- <LOCAL_M2_REPOSITORY>\com\hcl\unica\standard-integrations \0.0.1-SNAPSHOT
- <LOCAL_M2_REPOSITORY>\com\hcl\unica\asset-integration-api\0.0.1-SNAPSHOT
- <LOCAL_M2_REPOSITORY>\com\hcl\unica\entity-mapper-api\0.0.1-SNAPSHOT
Sous UNIX ou Mac OS X, <LOCAL_M2_REPOSITORY> fait référence au répertoire ~/.m2/repository.
Sous Microsoft Windows, <LOCAL_M2_REPOSITORY> fait référence au répertoire C:\Users\{your-username}\.m2\repository.
-
Servez-vous des commandes suivantes pour installer le SDK Content Integration dans votre référentiel Maven local. Recherchez asset-integration-api.jar, integration-api.jar, standard-integrations.jar et entity-mapper-api.jar dans le répertoire <ASSET_PICKER_HOME>/dev-kits/sdk.
mvn install:install-file -Dfile=<ASSET_PICKER_HOME>/dev-kits/sdk/asset-integration-api.jar -DgroupId=com.hcl.unica -DartifactId=asset-integration-api -Dversion=0.0.1-SNAPSHOT -Dpackaging=jar mvn install:install-file -Dfile=<ASSET_PICKER_HOME>/dev-kits/sdk/integration-api.jar -DgroupId=com.hcl.unica -DartifactId=integration-api -Dversion=0.0.1-SNAPSHOT -Dpackaging=jar mvn install:install-file -Dfile=<ASSET_PICKER_HOME>/dev-kits/sdk/standard-integrations.jar -DgroupId=com.hcl.unica -DartifactId=standard-integrations -Dversion=0.0.1-SNAPSHOT -Dpackaging=jar mvn install:install-file -Dfile=<ASSET_PICKER_HOME>/dev-kits/sdk/entity-mapper-api.jar -DgroupId=com.hcl.unica -DartifactId=entity-mapper-api -Dversion=0.0.1-SNAPSHOT -Dpackaging=jar
-
Dans les répertoires suivants, supprimez les SDK qui sont déjà installés :
-
Pour importer le projet de démarrage du développement de plug-in, sélectionnez Fichier > Importer.
La boîte de dialogue Sélectionner apparaît.
-
Sélectionnez Projets Maven existants et cliquez sur Suivant.
La boîte de dialogue Projets Maven s’affiche.
- Cliquez sur Parcourir pour sélectionner le projet et cliquez sur Terminer.
- Pour mettre à jour les dépendances Maven du projet asset-integration-starter, cliquez avec le bouton droit de la souris sur le projet asset-integration-starter et sélectionnez Maven > Mettre à jour le projet.
-
Assurez-vous que le nouveau projet importé utilise Java 8 pour compiler des sources. Ouvrez les propriétés du projet et procédez comme suit pour configurer le compilateur :
- Sélectionnez Compilateur Java.
- Si le Niveau de conformité du compilateur est non éditable, sélectionnez Activer les paramètres spécifiques projet.
- Définissez le Niveau de conformité du compilateur sur 1.8.
- Cliquez sur Appliquer et fermer.
-
Pour vous assurer que la bibliothèque Java appropriée est configurée dans le chemin de génération, procédez comme suit :
- Sélectionnez Chemin de génération Java > Bibliothèques.
- Sélectionnez Bibliothèque système JRE (J2SE-1.5).
- Cliquez sur Retirer.
-
Cliquez sur Ajouter une bibliothèque.
La boîte de dialogue Ajouter une bibliothèque s'ouvre.
-
Sélectionnez Bibliothèque système JRE > Suivant.
La Bibliothèque système JRE s’affiche.
- Sélectionnez une bibliothèque appropriée et cliquez sur Terminer.
-
Pour activer le traitement des annotations, procédez comme suit :
- Sélectionnez Compilateur Java > Traitement des annotations .
- Sélectionnez Activer les paramètres propres au projet.
- Sélectionner Appliquer et fermer.
-
Pour installer Lombok, procédez comme suit :
-
Cliquez deux fois sur le fichier LOCAL_M2_REPOSITORY\org\projectlombok\lombok\1.18.16\lombok-1.18.16.jar.
La boîte de dialogue du programme d'installation s'ouvre.
- Pour spécifier l’emplacement d’installation de votre IDE, cliquez sur Spécifier l'emplacement.
- Cliquez sur Installer/Mettre à jour pour effectuer l’installation.
- Après l’installation de Lombok, redémarrez l’IDE.
-
Cliquez deux fois sur le fichier LOCAL_M2_REPOSITORY\org\projectlombok\lombok\1.18.16\lombok-1.18.16.jar.
-
Pour modifier le nom du projet, procédez comme suit :
- Ouvrez le fichier pom.xml et modifiez ses propriétés de projet Maven.
- Cliquez avec le bouton droit sur le projet asset-integration-starter et sélectionnez Refactoriser > Renommer.
- Dans le fichier <ASSET_PICKER_HOME>/conf/custom-plugin-services.yml, déclarez les services de plug-in. Vous pourrez accéder à ce fichier ultérieurement pour ajouter des déclarations lorsque vous introduirez des services pour vos plug-ins.
-
Pour ajouter un projet de plug-in à l’assemblage de déploiement du projet asset-viewer.war, procédez comme suit :
-
Cliquez avec le bouton droit sur le projet asset-viewer.war et sélectionnez Propriétés.
La boîte de dialogue Propriétés pour asset-viewer s'affiche.
- Sélectionnez Deployment Assembly.
-
Sélectionnez Ajouter.
La boîte de dialogue de Sélectionner le type de directive s'affiche.
- Sélectionnez Projet et cliquez sur Suivant.
-
Sélectionnez le projet de plug-in
asset-integration-starterque vous avez importé lors des étapes précédentes, puis cliquez sur Terminer.
-
Cliquez avec le bouton droit sur le projet asset-viewer.war et sélectionnez Propriétés.
- Si nécessaire, nettoyez les projets.
-
Effectuez la configuration adaptée à votre système dans <ASSET_PICKER_HOME>/conf/systems.properties (reportez-vous au fichier sample-systems.properties disponible dans le projet <ASSET_PICKER_HOME>/dev-kits/asset-integration-starter). Toutes les configurations d'intégration du système mentionnées dans le Guide d'administration d'Unica Content Integration sont prises en charge dans
systems.propertiesà l'aide des propriétés pertinentes. - Lorsque vous développez votre plug-in, vérifiez-le en exécutant le projet asset-viewer.war sur un serveur d’applications précédemment configuré. Etant donné que le projet est déjà ajouté à l’assemblage de déploiement de asset-viewer.war, les modifications apportées à votre projet de plug-in seront déployées à chaque fois que vous exécuterez le projet asset-viewer.war.
-
Lorsque vous développez votre plug-in, en y ajoutant des services, utilisez un outil de votre choix pour atteindre les points d'extrémité REST suivants (modifiez la racine de contexte pour qu'elle corresponde à votre configuration) afin de vérifier la précision de votre implémentation :
-
S’assurer de l’intégration du système
URL de noeud final http://localhost:8888/asset-viewer/api/AssetPicker/instancesMéthode de requête GET -
Vérifier le service simple-search
URL de noeud final http://localhost:8888/asset-viewer/api/AssetPicker/mysystem/assets?query=mountain&page=0&size=10&types=Phtooù,mysystemreprésente l'identificateur système choisi par l'implémentation du plug-in.querycontient le mot clé de recherche du contenu à rechercher.page & sizecontient les détails de pagination, où page est le numéro de série des pages à extraire et size est le nombre total d'éléments de recherche sur une seule page.typesest l'une des catégories de contenu prises en charge (types) permettant de filtrer les éléments de recherche.
Méthode de requête GETLorsque vous atteignez l'URL, assurez-vous que le JSON de réponse contient le résultat attendu. Seuls les détails de présentation sont inclus pour chaque objet de recherche. D'autres propriétés de contenu sont exclues pour des raisons de concision et de performances.
-
Vérifier le service resource-loader
URL de noeud final http://localhost:8888/asset-viewer/api/AssetPicker/mysystem/download?resource=http://repository_base_url/contents/sample_image.jpg%26resourceId=12345"oùmysystemreprésente l'identificateur système choisi par l'implémentation du plug-in.resourcecontient l'URL absolue du contenu à télécharger.resourceIdcontient l'identificateur du contenu à télécharger.
(Le plug-in peut choisir d'utiliser resource et/ou resourceId pour charger le contenu.)
Méthode de requête GET -
Vérifier le service list-folders
URL de noeud final http://localhost:8888/asset-viewer/api/AssetPicker/mysystem/folders?parentFolderId=1234où :mysystemreprésente l'identificateur système choisi par l'implémentation du plug-in.parentFolderIdcontient l'identificateur du dossier parent dont les sous-dossiers immédiats sont attendus en réponse. Ce paramètre de requête est facultatif et n'est pas fourni lors du listage des dossiers de niveau supérieur/racine.
Méthode de requête GET -
Vérifier le service list-contents
URL de noeud final http://localhost:8888/asset-viewer/api/AssetPicker/mysystem/folders/1234/contentsoù :mysystemreprésente l'identificateur système choisi par l'implémentation du plug-in.1234représente l'identificateur du dossier dont le contenu immédiat est attendu en réponse.
Méthode de requête GETSeuls les détails de présentation sont inclus pour chaque contenu répertorié par le service
list-contents. D'autres propriétés de contenu sont exclues pour des raisons de concision et de performances. -
Vérifier le service get-content-details
URL de noeud final http://localhost:8888/asset-viewer/api/AssetPicker/mysystem/assets/Images/1234où :mysystemreprésente l'identificateur système choisi par l'implémentation du plug-in.Imagesreprésente l'ID de catégorie du contenu dont les détails sont attendus en réponse.1234représente l'identificateur du contenu dont les détails sont attendus en réponse.
Méthode de requête GETLa réponse JSON produite par le service
get-content-detailsinclut toutes les propriétés de contenu, en plus des détails de présentation. -
Vérifier le service get-object-schema
URL de noeud final http://localhost:8888/asset-viewer/api/AssetPicker/object-mapping/application/mysystem/object/Images/1234/schemaoù :- mysystem représente l'identificateur système choisi par l'implémentation du plug-in.
- Les images représentent la catégorie du contenu de référence utilisé pour la génération de schéma.
- 1234 représente l'identificateur du contenu de référence utilisé pour la génération de schéma.
A partir de la version 12.1.0.4, l'identificateur et la catégorie de contenu ne sont plus très pertinents, car le schéma est censé inclure des attributs pour toutes les catégories de contenu prises en charge.
Méthode de requête GETLa réponse JSON doit contenir la liste aplatie de tous les attributs mappables et de leurs métadonnées.
-
Vérifier le service list-content-categories
URL de noeud final http://localhost:8888/asset-viewer/api/AssetPicker/mysystem/categoriesoù :mysystemreprésente l'identificateur système choisi par l'implémentation du plug-in.
Méthode de requête GET -
Vérifier le service get-cognitive-analysis
URL de noeud final http://localhost:8888/asset-viewer/api/AssetPicker/actions/cognize?url=absolute_image_urloù :urlcontient l'URL absolue de l'image pour laquelle extraire l'analyse cognitive
Méthode de requête GET
-
S’assurer de l’intégration du système