Ce service Web permet d'exécuter l'étape de merge de l'APE.
Format du message en entrée
Le format du message JSON en entrée est le suivant :
{
"jsonDataModel": {},
"locale": "string",
"mimeType": "string",
"namespace": "string",
"options": {},
"templateName": "string"
}
Lorsque le service Web s'exécute sans erreur, le code HTTP retourné est 200 et la réponse est un document XML (lors du traitement d'un template .ftlx).
En cas d'erreur, le code http retourné est soit 400 si le corps de la requête est incorrect, soit 500 lors d'une erreur dans le traitement du template. En cas d'erreur, la réponse retournée est de type JSON. ↑ Haut de page
Attributs
Le message doit représenter un objet JSON avec les attributs suivants :
templateName
Cet attribut est obligatoire et de type String. Il représente le nom du template (nom du fichier .ftlx). Cf. section "Template" dans "Apache FreeMarker Template Engine".
namespace
Cet attribut est optionnel et de type String. Il représente l'espace de noms utilisé pour la recherche du template par le moteur. Cf. section "Template loader" dans "Apache FreeMarker Template Engine".
jsonDataModel
Cet attribut est obligatoire et de type Objet. Il représente le data model qui sera utilisé par le moteur pour traiter le template. Cf. section "Data model" dans "Apache FreeMarker Template Engine.
Tableau de correspondances entre les types de données FreeMarker et les types de données JSON :
Type FreeMarker |
Type JSON |
String |
String |
Number |
Number |
Date |
String ou Number suivant le type de transformation utilisé. Voir l'option jsonPathConv. |
Time |
String ou Number suivant le type de transformation utilisé. Voir l'option jsonPathConv. |
Date-time |
String ou Number suivant le type de transformation utilisé.Voir l'option jsonPathConv. |
Boolean |
Boolean |
Hash |
Objet |
Sequence |
Tableau |
↑ Haut de page
locale
Cet attribut est optionnel et de type String. Il représente la locale utilisée pour rechercher et traiter le template par le moteur. Cf. section "Locale" dans "Apache FreeMarker Template Engine". Si cet attribut n'est pas spécifié, la locale par défaut de la JVM Java est utilisée. La chaîne alphanumérique représentant la locale doit être au format IETF BCP 47.
mimeType
Cet attribut est optionnel et de type String. Il représente le type MIME de la réponse du service Web.
FreeMarker est configuré pour renvoyer automatiquement un type MIME en fonction de l'extension du fichier du template exécuté :
- .ftlx : réponse de type application/xml (charset=UTF-8)
- .ftlh (template de document HTML) : réponse de type text/html (charset=UTF-8)
- .ftlx (template de document XML) : réponse de type application/xml (charset=UTF-8)
Il n'est donc pas nécessaire de fixer une valeur pour cet attribut lors de l'exécution de templates .ftlx.
Dans le cadre d'une utilisation de ce service Web en dehors de l'APE (pour fusionner des données avec un template CSV par exemple), il est nécessaire de fixer une valeur à cet attribut ("text/csv" par exemple). ↑ Haut de page
options
Cet attribut est optionnel et de type Objet.
Il représente les paramètres supplémentaires à prendre en compte lors du traitement du template.
L'ensemble des options sont décrites dans un objet JSON dont chaque membre décrit une option, à savoir :
extOutputTransform
Option de formatage du document résultat (type JSON String)jsonPathConv
Option de conversion de données du modèle de données avant traitement de celui-ci par le template (type JSON tableau d'Objet)jsonGenerator
Option de production d'un modèle de données factice utilisé en lieu et place du data model lors de la phase de mise en développement du template (type JSON Objet).