Téléchargement des produits


Version anglaise


 

Ce service Web permet d'exécuter en séquence les deux étapes de l'APE.



Format du message en entrée

Le format du message JSON en entrée est le suivant :

{

"merge": {

"jsonDataModel": {},

"locale""string",

"mimeType""string",

"namespace""string",

"options": {},

"templateName""string"

},

"transform": {

"outputMimeType""string",

"options": {

"docDescription": {

"author""string",

"creationDate""2018-12-03T15:06:22.646Z",

"creator""string",

"keywords""string",

"producer""string",

"subject""string",

"title""string"

},

"pdfDocPolicy": {

"allowAccessContent""string",

"allowAssembleDocument""string",

"allowCopyContent""string",

"allowEditAnnotations""string",

"allowEditContent""string",

"allowFillInForms""string",

"allowPrint""string",

"allowPrintHq""string",

"encryptMetadata""string",

"ownerPassword""string",

"userPassword""string"

}

}

}


Lorsque le service Web s'exécute sans erreur, le code HTTP retourné est 200 et la réponse est un document dans le format d'édition demandé.

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.


Attributs

Le message doit représenter un objet JSON avec les attributs suivants :

merge

Cet attribut est obligatoire et de type Objet. Sa valeur doit représenter le contenu du message d'entrée du service Web mergedoc.

transform

Cet attribut est obligatoire et de type Objet. Sa valeur doit représenter le contenu du message d'entrée du service Web transformxslfo.

En-têtes

Il est possible d'ajouter certains en-têtes dans la requête HTTP déclenchant ce service Web. Ces en-têtes sont considérés comme des paramètres supplémentaires en entrée ou entrée/sortie :

NomTypeDescription
Ape-Total-Number-PagesEntrée/SortieLorsqu'il est présent dans la requête, il est retourné dans la réponse avec pour valeur le nombre total de pages du document produit.
Ape-Template-UrlEntrée/Sortie

Lorsqu'il est présent dans la requête, il est retourné dans la réponse avec pour valeur l'URI du fichier template exécuté pour produire le document.

La syntaxe de l'URI dépend de la nature du chargeur de template (clé template_loader dans freemarker.properties) qui a chargé le template :

  • si FileTemplateLoader : la syntaxe de l'URI est file:/<URL du template>,
  • si ClassTemplateLoader : la syntaxe de l'URI est jar:file:/<URL du fichier jar contenant le template>!/<Chemin du template à l'intérieur du jar>,
  • si ZipFileTemplateLoader : la syntaxe de l'URI est jar:file:///<URL du fichier zip contenant le template>!/<Chemin du template à l'intérieur du zip>.


Remarques :

  • Les caractères non ASCII de l'URI sont encodés en suivant la RFC 2396 (par exemple, un espace est remplacé par la chaîne %20; le caractère é est remplacé par la chaîne %C3%A9. La fonction de la VatoolBx VaToolBxJavaDecodeURL permet de décoder l'URI.
  • Si le template demandé est localisé, l'URI du fichier pointera vers celui correspondant à la locale demandée. Par exemple, si le paramètre "templateName" du message JSON est "foo.ftlx" et que le paramètre "locale" est "it", s'il existe un fichier "foo_it.ftlx", l'URI pointera vers ce fichier (sinon elle pointera vers le fichier "foo.ftlx").
  • En cas d'erreur, la chaîne alphanumérique retournée est vide.
Ape-Template-LoaderEntrée/Sortie

Description au format JSON du chargeur de template ayant chargé le template. L'objet JSON a plusieurs propriétés qui dépendent de la nature du chargeur de template :

  • si FileTemplateLoader :

    {
    "classname":"com.hardis.adelia.mergedocengine.freemarker.conf.FileTemplateLoader", 
    "baseDir":"file:/<URL absolue du paramètre baseDir présent dans la clé template_loader>", 
    "disableCanonicalPathCheck":<true ou false : valeur du paramètre disableCanonicalPathCheck présent dans la clé template_loader> 
    }

    Les caractères non ACSII de la propriété baseDir sont encodés en suivant la RFC 2396 (voir plus haut).

  • si ClassTemplateLoader :

    { 
    "classname":"com.hardis.adelia.mergedocengine.freemarker.conf.ClassTemplateLoader", 
    "resourceLoaderClass":"<valeur du paramètre resourceLoaderClass présent dans la clé template_loader>", 
    "basePackagePath":"<valeur du paramètre basePackagePath présent dans la clé template_loader>" 
    }
  • si ZipFileTemplateLoader :

    { 
    "classname":"com.hardis.adelia.mergedocengine.freemarker.conf.ZipFileTemplateLoader",
    "schemeFileURI":"<valeur du paramètre schemeFileURI présent dans la clé template_loader>", 
    "basePackagePath":"<valeur du paramètre basePackagePath présent dans la clé template_loader>", 
    "useCache":<true ou false : valeur du paramètre useCache présent dans la clé template_loader> 
    }

    Les caractères non ASCII des propriétés schemeFileURI et basePackagePath sont encodés en suivant la RFC 2396 (voir plus haut).


Remarque : en cas d'erreur, la valeur JSON retournée est la valeur "null".


↑ Haut de page




 

  • Aucune étiquette