Documentation SDX-2 Télécharger Installer Présentation Configuration Indexation Recherche OAI Javadoc Référence API-XSP Pages XSP Paramètres SDX Vue d'ensemble Structure Paramètres et flux Identification Droits Localisation Pipelines Thesaurus Indexation Recherche Documents Liste alphabétique Migration Schemas Performances | # Paramètres et contrôle du flux Liste des actions décrites dans cette page : `sdx:fallback` ; `sdx:success` ; `sdx:parameter` ; `sdx:parameters`. ## `sdx:fallback`(CHECK) Cette action permet de définir une sorte de stratégie de repli. `sdx:fallback` suit toujours (FIXME) une action dans la page XSP. Si cette action échoue, alors le contenu de `sdx:fallback` est exécuté.
Code implémentant cette action | `sdx.xsl`
Contexte d'utilisation | `sdx:fallback` peut être employé pour les actions d'indexation (excepté `sdx:deleteDocuments`) et à l'ensemble des actions de gestion des droits. Il est également possible de l'employer lors du contrôle d'un paramètre (cf. `sdx:parameter`) ou de l'existence de résultats (cf. `sdx:results`).
Contenu éventuel | `sdx:fallback` peut être vide ou contenir n'importe quel élément (`sdx:*` ou autre).
L'action `sdx:fallback` n'emploie aucun paramètre spécifique ou commun. Exemple 1. Echec d'une identification L'exemple suivant présente une page XSP devant gérer l'accès au formulaire d'indexation. Celui ne doit être accessible qu'à l'administrateur de l'application. Dans le cas où l'utilisateur courant n'est pas l'administrateur, on génère l'affichage d'un message.
    <sdx:page>
      <sdx:userIsAdmin>
        <form type="upload">
        <sdx:fallback>
          <message type="utlisateur_non_identifie"/>
        </sdx:fallback>
      </sdx:userIsAdmin>
    </sdx:page>
## `sdx:success`(CHECK) `sdx:success` est construite sur le même modèle que `sdx:fallback`. Contrairement à cette dernière action, elle permet de définir une stratégie en cas de succès.
Code implémentant cette action | `sdx.xsl`
Contexte d'utilisation | `sdx:success` peut être soumise aux actions d'indexation, pour vérifier un paramètre (`sdx:parameter`) ou pour tester la présence de résultats après une requête (`sdx:results`).
Contenu éventuel | `sdx:success` peut être vide ou contenir n'importe quel élément (`sdx:*` ou autre).
`sdx:success` n'emploie aucun paramètre (spécifique ou commun). Exemple 2. Succès lors de l'indexation (CHECK) L'exemple suivant présente la gestion d'une indexation. Si celle-ci c'est correctement déroulée, on demande la sortie des termes contenus dans l'index "champ" (cf. `sdx:terms` pour approfondir cette notion). En cas d'échec, on génère l'affichage d'un message spécifique.
    <sdx:page>
      <sdx:uploadDocuments>
        <sdx:success>
          <sdx:terms field="champ"/>
        </sdx:success>
        <sdx:fallback>
          <message type="echec_indexation"/>
        <sdx:fallback>
      </sdx:uploadDocuments>
    </sdx:page>
## `sdx:parameter`(CHECK) `sdx:parameter` est une action commune à l'ensemble des outils de l'API-XSP de SDX. Comme son nom l'indique, elle permet de passer des paramètres nécessaires à la contextualisation des actions. Il existe plusieurs manière de définir ces paramètres de façon dynamique (action de l'utilisateur ou réaction de l'application à un contexte donné) ou de manière statique (paramètre défini directement dans une page XSP). On se reportera à la section Logique des paramètres SDX pour approfondir cette notion.
Code implémentant cette action | `sdx-parameters.xsl`
Contexte d'utilisation | N'importe où dans `sdx:page`. `sdx:parameter` est employé par l'ensemble des actions SDX pour passer ou récupérer un paramètre.
Contenu éventuel | `sdx:parameter` peut contenir `sdx:fallback` et `sdx:success`. Il est donc possible de définir des stratégies ou des actions calculées selon le contexte.
Exemple 3. Définition de paramètres dans une application Dans cet exemple de page XSP, on demande la sortie de l'ensemble des termes contenus dans un index. Le nom de cet index est donné par l'attribut `field` directement dans le code. L'utilisateur n'intervient pas ; l'application n'effectue pas de choix suivant un contexte donné (on parle également de calcul d'un paramètre). Noter l'emploi du paramètre `hpp` réglé sur la valeur `-1` ; il permet d'indiquer que l'ensemble des résultats doit être inclus dans une seule page.
    <sdx:page>
     <sdx:terms field="auteur" hpp="-1"/>
    </sdx:page>
Le second exemple présente la même action (`sdx:terms`) mais dans un contexte différent. Cette fois, le choix de l'index et du nombre de résultat par page est dynamique.
    <sdx:page>
     <sdx:terms fieldParam="f" hppParam="hpp"/>
    </sdx:page>
Ainsi, une URL `{serveur SDX}/sdxtest/terms.xsp?f=auteur&hpp=20` renverra la première page de la liste des termes contenus dans l'index `auteur`, chaque page contenant 20 résultats. Noter que l'on ne s'inquiète pas de préciser l'application et la base de documents gérant cet index. SDX renvoie effectivement ces paramètres, conservés en mémoire ; il s'agit des paramètres par défaut. On pourra se reporter à la section réservée à l'action `sdx:location` pour voir un exemple d'élargissement d'une telle interrogation sur plusieurs bases de documents. Exemple 4. Définition d'une stratégie en cas de non connexion Dans l'exemple suivant (tiré de l'application de démonstration SDXTest), on cherche à savoir si l'utilisateur courant a tenté de se connecter ou non. Si c'est le cas, le paramètre HTTP `id` est présent. Si le paramètre `id` n'apparaît, cela signifie que l'utilisateur n'a pas tenté de se connecter.
    <sdx:page>
     <sdx:parameter valueParam="id">
      <sdx:fallback>
       <message type="utilisateur_non_connecté">
      </sdx:fallback>
      <sdx:success>
       <message type="utilisateur_connecté">
      </sdx:success>
     </sdx:parameter>
    </sdx:page>
## `sdx:parameters`(TODO) `sdx:parameters` répond à la même logique que `sdx:parameter` décrit plus haut. Il est employé pour les paramètres répétables.
Code implémentant cette action | `sdx-parameters.xsl`
Contexte d'utilisation | N'importe où dans `sdx:page`.
Contenu éventuel | Aucun.
| Auteur : Malo Pichot (AJLSM) - 2003-06-04

| Home |
Copyright © 2000, 2001, 2002, 2003, 2004 Ministère de la culture et de la communication, AJLSM.