Exemples de scénario de l'API REST

L'API REST inclut plusieurs exemples de programme qui montrent comment effectuer les tâches d'administration et de recherche.

Les exemples de programme sont installés dans le répertoire ES_INSTALL_ROOT/samples/rest. Vous trouverez la documentation de l'API REST dans le répertoire ES_INSTALL_ROOT/docs/api/rest.

Pour l'API REST de recherche, vous diposez des exemples de scénario suivants :
  • Recherche
  • Recherche par facettes sur index unique

Pour les API REST d'administration, plusieurs exemples de programme Java™ sont fournis. Ils illustrent deux façons différentes d'utiliser les API REST : Apache HttpClient ou JAX-WS (Java API for XML Web Services). Les exemples de programme doivent être compilés et leurs fichiers de classes se trouvent dans le fichier ES_INSTALL_ROOT/samples/rest/admin/es.admin.rest.jar.

Exemples de programme HttpClient

Les exemples de programme API REST pour HttpClient suivants se trouvent dans le répertoire ES_INSTALL_ROOT/samples/rest/admin/com/ibm/es/admin/control/api/samples/commons :

Exemple de programme DocumentExample
La classe DocumentExample fournit un exemple de comment ajouter ou supprimer un document dans une collection. L'exemple de programme vous permet d'ajouter et de retirer un document dans une collection. Le type de fonction dépend de la méthode que vous entrez en argument de commande. Ce programme nécessite qu'une collection soit déjà créée.

Le programme génère la demande HTTP à partir du nom d'hôte, du port, de la méthode, de l'ID de collection et d'autres options spécifiés. Il utilise le nom d'utilisateur et le mot de passe pour l'authentification. Avec la demande HTTP, le programme obtient l'objet HTTPMethod qui est exécuté par HttpClient. Pour les fonctions add et addMultiDocs, il utilise le chemin d'un fichier existant et certaines métadonnées du document pour ajouter le contenu du fichier comme document dans la collection.

L'utilisation se fait comme suit :

DocumentExample -hostname nom_hôte -port port -method méthode
-username nom_utilisateur -password motdepasse -collectionId ID_collection
paramètres_supplémentaires

L'exemple suivant montre comment ajouter le contenu du fichier C:\samples\sample1.txt comme document en anglais dans la collection col_12345 :

DocumentExample -hostname es.ibm.com -port 8390 -method add
-username user1 -password mypassword -collectionId col_12345
-language en -file C:\samples\sample1.txt
Exemple de programme AddMultiDocsExample
La classe AddMultiDocsExample fournit un exemple de comment ajouter deux exemples de document, un fichier PDF et un fichier HTML, à une collection. Ce programme nécessite qu'une collection soit déjà créée.

Le programme génère la demande HTTP POST à partir du nom d'hôte, du port, de l'ID de collection et d'autres paramètres spécifiés. Il spécifie l'ID, le titre, le format et la langue des documents au format JSON dans le paramètre docs et le contenu des documents est indiqué dans le paramètre file. Le programme utilise le nom d'utilisateur et le mot de passe spécifiés pour l'authentification. Avec la demande HTTP, le programme obtient l'objet HTTPMethod qui est exécuté par HttpClient.

L'utilisation se fait comme suit :

AddMultiDocsExample -hostname nom_hôte -port port -username nom_utilisateur
-password motdepasse -collectionId ID_collection

L'exemple suivant montre comment ajouter les documents à la collection col_12345 :

AddMultiDocsExample -hostname es.ibm.com -port 8390 -username user1
-password mypassword -collectionId col_12345
Exemple de programme d'administration de zones
La classe FieldExample fournit un exemple d'exécution des méthodes disponibles sur des zones de recherche dans une collection. Elle vous permet d'ajouter une zone de recherche, de lister les zones, de mapper une zone de recherche à un moteur d'exploration, de mapper la zone de recherche à une facette et de supprimer une zone de recherche de la collection. Le type de fonction de zone dépend de la méthode que vous entrez en argument de commande. Ce programme nécessite qu'une collection soit déjà créée.

Il génère l'URL de demande HTTP à partir du nom d'hôte, du port, de la méthode et d'autres options entrés. Il utilise le nom d'utilisateur et le mot de passe entrés pour l'authentification. Avec la demande HTTP, le programme obtient l'objet HTTPMethod qui est exécuté par HttpClient.

L'utilisation se fait comme suit :

FieldExample -hostname nom_hôte -port port -method méthode
 -username nom_utilisateur -password motdepasse paramètres_supplémentaires

L'exemple suivant obtient la liste des zones de la collection col_12345 :

FieldExample -hostname es.ibm.com -port 8390 -method getList
-username user1 -password mypassword -collectionId col_12345
Exemple de programme GetAccess
L'exemple GetAccess montre comment utiliser l'API REST en entrant les URL directement. Vous devez transmettre l'URL avec les paramètres requis au programme. Il exécute ensuite la méthode HTTPMethod à partir de l'URL transmise en argument et imprime la réponse de HTTPMethod.

L'utilisation se fait comme suit :

GetAccess URL -username nom_utilisateur -password motdepasse

L'exemple suivant montre comment obtenir l'état de l'index au format xml pour la collection Test.

GetAccess "http://localhost:8390/api/v10/admin/indexer?
method=getState&output=xml&collectionId=Test" -username esadmin
-password password
Exemple de programme IndexerExample

La classe IndexerExample montre comment effectuer diverses opérations sur l'index, comme le démarrer ou l'arrêter, ou obtenir l'état de l'indexeur. Le type de fonction dépend de la méthode que vous entrez en argument de commande.

L'utilisation se fait comme suit :

IndexerExample -hostname nom_hôte -port port -method méthode
-username nom_utilisateur -password motdepasse

L'exemple suivant montre comment démarrer l'index pour la collection col_12345.

IndexerExample -hostname es.ibm.com -port 8390 -username esadmin
-password password -method start -collectionId col_12345
Exemple de programme d'administration de fichiers PEAR
L'exemple PearExample vous montre comment manipuler un fichier PEAR d'annotateur personnalisé. Le programme vous permet d'ajouter un fichier PEAR au système, de l'associer à une collection ou de l'en dissocier, d'obtenir la liste des fichiers PEAR déployés et de supprimer un fichier PEAR du système. Le type de fonction dépend de la méthode que vous entrez en argument de commande.

L'utilisation se fait comme suit :

PearExample -hostname nom_hôte -port port -method méthode
-username nom_utilisateur -password motdepasse paramètres_supplémentaires

L'exemple suivant montre comment ajouter le fichier PEAR of_regex.pear et le nommer RegexPear dans Watson Explorer Content Analytics.

PearExample -hostname es.ibm.com -port 8390 -method add
-username esadmin -password password -pearName RegexPear
-content "C:\\IBM\\es\\packages\\uima\\regex\\of_regex.pear"

Exemples de programme JAX-WS

Les exemples de programme API REST pour JAX-WS suivants se trouvent dans le répertoire ES_INSTALL_ROOT/samples/rest/admin/com/ibm/es/admin/control/api/samples/jaxws :

Exemple de programme d'administration de facettes
L'exemple FacetExample montre comment travailler avec les facettes d'une collection donnée en utilisant le service JAX-WS pour accéder à l'API REST. Les fonctions disponibles pour l'API Facet incluent l'ajout et la suppression d'une facette dans une collection donnée et l'obtention de la liste des facettes. Le type de fonction dépend de la méthode que vous entrez en argument de commande.

L'utilisation se fait comme suit :

FacetExample -hostname nom_hôte -port port -method méthode
-username nom_utilisateur -password motdepasse paramètres_supplémentaires

L'exemple suivant montre comment obtenir la liste des facettes de la collection col_12345.

FacetExample -hostname es.ibm.com -port 8390 -method getList
-username esadmin -password password -collectionId col_12345
Exemple de programme GetAccess
L'exemple GetAccess montre comment utiliser l'API REST en entrant les URL directement. Vous devez transmettre l'URL avec les paramètres requis au programme. Il appelle ensuite le service JAX-WS pour appeler l'API REST à partir de l'URL transmise en argument et imprime le flux de résultats.

L'utilisation se fait comme suit :

GetAccess URL

L'exemple suivant montre comment obtenir l'état de l'indexeur pour la collection Test.

GetAccess “http://localhost:8390/api/v10/admin/indexer?
method=getState&output=xml&collectionId=Test
&api_username=esadmin&api_password=password”
Exemple de programme d'administration de fichiers PEAR
L'exemple PearExample vous montre comment manipuler un fichier PEAR d'annotateur personnalisé en utilisant le service JAX-WS pour accéder à l'API REST. Il vous permet d'ajouter un fichier PEAR au système, de l'associer à une collection ou de l'en dissocier, d'obtenir la liste des fichiers PEAR déployés et de supprimer un fichier PEAR du système. Le type de fonction dépend de la méthode que vous entrez en argument de commande.

L'utilisation se fait comme suit :

PearExample -hostname nom_hôte -port port -method méthode
-username nom_utilisateur -password motdepasse paramètres_supplémentaires

L'exemple suivant montre comment ajouter le fichier PEAR of_regex.pear et le nommer RegexPear dans Watson Explorer Content Analytics.

PearExample -hostname es.ibm.com -port 8390 -method add
-username esadmin -password password -pearName RegexPear
-content "C:\\IBM\\es\\packages\\uima\\regex\\of_regex.pear"