Moteur d'indexation inJAC
Utilisation

1. Présentation de l'Interface d'aministration
  1.1. Création d'un nouvel index
  1.2. Actions sur un index déjà créé
  1.3. Recherche
2. URLS d'utilisations pour les applications clientes
  2.1. Recherche
    2.1.1. Les différentes URL de recherche HTML et XML
    2.1.2. Exemples d'URL de recherche avec leurs résultats
  2.2. Mise à jour d'un index
  2.3. Fil RSS des derniers documents publiés
3. Outils en ligne de commande
  3.1. Fusion d'index
    3.1.1. Configuration
    3.1.2. Lancement

# 1. Présentation de l'Interface d'aministration

Une fois le fichier indexation.properties configuré, l'utlisateur peut accèder à l'interface de l'application à l'URL :

[url du serveur Tomcat]/injac-indexing.

La page d'accueil de l'interface s'affiche :

Au premier lancement de l'interface, aucun index n'apparaît dans la liste d'index, et la recherche est désactivée. Une brève explication est fournie sur l'utilisation de l'interface.

## 1.1. Création d'un nouvel index

Pour créer un nouvel index, sélectionner l'option dans le menu de gauche :

Les champs du formulaires sont remplies avec les valeurs par défaut du fichier de configuration indexation.properties.

Pour le moteur de rendu inJAC(version 2.3 RC1), vous devez créer un index nommé "global".

L'URL doit être celle du chemin de l'espace WEBDAV racine à partir duquel l'arborescence va être parcourue pour l'indexation: elle doit comporter le scheme http, le nom d'hôte et le cas échéant le port, le contexte du serveur WEBDAV.

Rappel important :Si vous utilisez cette interface à travers un réseau public comme Internet, il est déconseillé de renseigner le mot de passe dans le fichier de configuration (voir documentation d'installation).

- Profil de l'utlisateur :

  Les champs utilsateur et mot de passe définissent le profil utilisé pour l'indexation : seul seront indexés les documents visibles à cet utilisateur. Pour créer un index global, il faut donc utiliser un compte qui a la visibilité maximale.

- Modes d'indexation des métadonnées :

  Ce menu déroulant propose les trois modes d'indexation pour les métadonnées :

  - aucune métadonnée : comme son nom l'indique

  - toutes les métadonnées inJAC: index toutes les métadonnées de type inJAC (dont le nom d'espace est "INJAC:")

  - les métadonnées inJAC de l'espace racine : indexe les métadonnées définies pour l'espace racine, ici /injacRoot.

  Une fois les champs renseignés, cliquez sur "indexer" pour commencer la première indexation. A la fin du processus d'indexation, une page de rapport apparaît, indiquant le nombre de documents indexés, la durée, ainsi qu'un message d'état. Si tout s'est bien déroulé, le message affiché est "OK" :

  Remarque :Selon le contenu de l'espace racine, l'indexation peut prendre un certain temps, notamment si ce dernier comporte des documents binaires comme PDF,Word ou RTF, comme c'est le cas ici.

## 1.2. Actions sur un index déjà créé

Une fois notre index "global" créé et sélectionné, plusieurs actions le concernant deviennent disponibles :

- Mise à jour

  Sous la section des informations figure un menu "Vie de l'index" avec deux actions possibles. La première est la mise à jour. Cette action entraine la mise à jour d'un index, c'est-à-dire l'indexation de tous les nouveaux documents sous l'espace racine défini pour cet index. Elle est protégée par le mot de passe du compte utilisateur utilisé pour la création de l'index.

  A l'issue de la vérification, un nouveau rapport s'affiche, identique au premier, indiquant le nombre de nouveaux documents indexés, ainsi que la date et l'heure de la dernière mise à jour, en dessous celle de la création :

- Détruire l'index

  Cette action détruit complétement l'index séléctionné. Elle est protégée par le mot de passe du compte utilisateur utilisé pour la création de l'index.

- Visualiser l'index

  Pour s'assurer du contenu indexé, on peut sélectioner l'option "Visualiser l'index" dans le menu de gauche, ou cliquer sur le lien "Visualiser" :

  En cliquant sur un document de la liste, on peut examiner les champs indexés le concernant.

## 1.3. Recherche

Le sous menu "chercher" permet de lancer une recherche sur l'index sélectionné, et d'afficher le résultat dans une page HTML, pour vérifier le bon état de l'index.

Le principal client du moteur d'indexation est le moteur de rendu inJAC. Pour les détails sur la recherche avancée, se reporter à la documentation de ce dernier.

# 2. URLS d'utilisations pour les applications clientes

Cette section énumère les différentes URL utilisables par les applications clientes, comme le moteur de rendu inJac pour la recherche et le fil RSS, ou encore pour une application de tâches programmées pour la mise à jour des indexes.

## 2.1. Recherche

### 2.1.1. Les différentes URL de recherche HTML et XML

Trois URL sont disponibles pour lancer une recherche, et toutes en en commun les mêmes paramètres :

- syntaxe des URLs

  {hôte}]/injac-indexing/{htmlSearch|search|liusSearch}?query={requête Lucene}&name={nom de l'index}[paramètres optionnels]

  Rôle des différentes URI pour la recherche

  - htmlSearch : recherche avec résultat en HTML (sous forme de tableau)

  - search : recherche avec résultat en flux xml avec scores. Le champ par défaut est "body"

  - liusSearch : recherche avec résultat en flux xml sans score, mais avec champs de recherches par défaut configurés par le fichier {liusConfigFile}

    Note : les paramètre de configuration resultMD, renderURL et upnode sont inopérants avec cette URI : à la place, les champs renvoyés sont configurés dans le fichier {liusConfigFile} (Voir la documentation en ligne pour plus de détails) et les URLs sont celles du serveur WEBDAV.

- paramètres :

  - query : requête Lucene telle que définie dans ce document.

  - name : nom de l'index dans lequel s'effectue la recherche.

  - upnode et renderURL(optionnels) : permettent de surcharger les paramètres de configuration et désigner un autre moteur de rendu. Si un de ces paramètres est envoyé vide, c'est les URLs WEBDAV des documents et non celles du rendu qui seront renvoyées.

  - resultMD(optionnel) : permet de surcharger le paramètre de configuration du même nom. Ce paramètre représente une liste des métadonnées indéxées, séparées par des virgules, que l'on veut obtenir pour chaque document présent dans les résultats d'une recherche.

  - hitsOnly : (optionnel) Pour les requêtes XML d'URI de type search, permet de n'obtenir que la balise hitts avec le nombre de documents trouvés dans l'attribut found, sans les informations sur chaque document, par exemple : <hits found="5"/>.

### 2.1.2. Exemples d'URL de recherche avec leurs résultats

Voici trois exemples d'URL, une pour chaque type, avec leur résultats :

- http://univ-ma_fac.fr/injac-indexing/htmlSearch?query=title:luc%E8ne&name=global&resultMD=gen_description :

- http://univ-ma_fac.fr/injac-indexing/search?query=title:luc%E8ne&name=global&resultMD=gen_description

- http://univ-ma_fac.fr/injac-indexing/liusSearch?query=title:luc%E8ne&name=global

## 2.2. Mise à jour d'un index

Cette URL permet à une application de gestion de tâches programmées de mettre régulièrement à jour les indexes de manière asynchrone.

Note : Si l'appel de cet URL est fait à travers un réseau public, il est fortement conseillé d'utiliser https pour encrypter les informations de connexion.

- syntaxe de l'URL

  [hôte]/injac-indexing/updateIndex?user=[user]&pass=[password]&url=[url WEBDAV de la racine inJAC]&name={nom de l'index}&mode=[mode d'indexation des métadonnées]

- paramètres :

  - user : nom d'utilisateur pour l'accès WEBDAV

  - pass : mot de passe

  - name : nom de l'index à mettre à jour

  - url : URL WEBDAV de l'espace inJAC racine à indexer

  - mode : mode d'indexation des métadonnées

- exemple :

  https://univ-ma_fac.fr/injac-indexing/updateIndex?user=admin&pass=*****&url=http://slide-priv:8080/slide/files/injac/injacRoot&name=global&mode=1

## 2.3. Fil RSS des derniers documents publiés

Cette URL permet d'obtenir une liste des documents publiés les plus récemment, sous forme d'un fil RSS compatible 2.0.

- syntaxe de l'URL

  [hote]/injac-indexing/indexRSS?name={nom de l'index}&length={nombre de documents}

- paramètres :

  - name : nom de l'index

  - length : longeur de la liste des documents les plus récents

- exemple :

  http://univ-ma_fac.fr/injac-indexing/indexRSS?name=global&length=3

# 3. Outils en ligne de commande

## 3.1. Fusion d'index

Quand les ressources indexées comportent un grand nombre de documents, il est préférable en terme de performances de créer plusieurs index de taille raisonnable, et de les fusionner ensuite.

Un outil en ligne de commande, configurable via un fichier xml, est inclus dans injac-indexing, pour fusionner un ensemble d'index en un seul.

### 3.1.1. Configuration

Un fichier de configuration de la fusion des index doit être créé, de la forme suivante :

    <merge fusionName="n7" password="abracadabra" login="admin" create="true">
      <index name="global"/>
      <index name="theses_n7"/>
      <index name="m2"/>
    </merge>

- fusionName est le nom du nouvel index

- password et login du nouvel index

- chaque balise <index> fait référence à un nom d'index à fusionner.

- create indique que s'il existe déjà, l'index [fusionName] doit être créer à nouveau.

### 3.1.2. Lancement

Le lancement se fait en ligne de commande par la commande ANT merge. Sans argument, le fichier de configuration utilisé est celui décrit dans indexation.properties par la propriété merge.config.

Exemple :

ant merge /appli/java/injac/tomcat/webapps/injac-indexing/WEB-INF/mergeDC.xml