Calculer le statut des traces de médiation dynamiquement
Objectif(s)
Permettre au développeur (ou au framework sous-jacent) de ne pas avoir à mettre l'état dans toutes ses traces, et à calculer ce dernier à partir du contenu de la trace émise.
Principe
Les états à calculer utilisent des données extraites du corps des messages manipulés.
Il y a donc 2 étapes à configurer:
Lister les variables à extraire du “body”.
Définir les états en fonction de ces variables.
Lier ces tables à la médiation.
Démarche
Déclaration des variables
La table doit avoir OBLIGATOIREMENT la colonne path. C’est ce chemin qui sera utilisé pour trouver la variable.
2 technologies sont disponibles: XPath et JsonPath. C’est dans l’étape 3 que celle-ci est déclarée.
Cette table porte:
L’ID de la variable
Le chemin pour la trouver dans le body.
Le nombre de variable est libre.
Configuration des états dynamiques
Le 2nd tableau définit la succession de valeurs pour obtenir un état donné.
Ce tableau porte les colonnes suivants:
chaque variable calculé (ici “A” et “B”)
“status”: le status obtenu (success, warning, error ou info)
si une erreur est levée:
“code”: l’ID de l’erreur (cf Définir une erreur de médiation )
“message”: le message ajouté lors de la levée de cette erreur.
Exemple:
Lier ces tables à la médiation
Dans l’onglet “Statut dynamique”, le paramétrage est:
la table des chemins des variables;
la technologie utilisée pour l’extraction des valeurs des variables;
la table des champs calculés.
Exemple: