Obtenir le document de résultat

www.altova.com Imprimer cette rubrique Page précédente Un niveau supérieur Page suivante

Accueil >  API serveur : REST HTTP, COM/.NET, Java > Interface Client HTTP > Requêtes Client >

Obtenir le document de résultat

Cette section :

 

L'URI de document de résultat
Récupérer le document de résultat
Document de résultat contenant les URI des documents d'erreur
Document de résultat contenant les URI des documents de sortie
Document de résultat ne contenant aucun URI
Accéder aux documents d'erreur et de sortie listés dans le document de résultat

 

L'URI de document de résultat

Un document de résultat sera créé à chaque fois que qu'une tâche est créée, quel que soit le résultat d'une tâche (par exemple, une validation) est positive (document valide) ou négative (document invalide). Dans les deux cas, un message 201 Created est retourné. Ce message sera en format JSON et contiendra un URI relatif du document de résultat. Le fragment JSON ressemblera à l'exemple ci-dessous :

 

{

"result": "/v1/results/E6C4262D-8ADB-49CB-8693-990DF79EABEB",

"jobid": "E6C4262D-8ADB-49CB-8693-990DF79EABEB"

}

 

L'objet result contient l'URI relatif du document de résultat. L'URI est relatif à l'adresse de serveur. Par exemple, si l'adresse de serveur est http://localhost:8087/ (l'adresse de configuration initiale), alors l'URI agrandi du document de résultat spécifié dans la liste ci-dessus sera :

 

http://localhost:8087/v1/results/E6C4262D-8ADB-49CB-8693-990DF79EABEB 

 

Note :le numéro de version correct /vN est celui que le serveur retourne (et n'est pas nécessairement celui dans cette documentation). Le numéro que le serveur retourne est le numéro de version de l'interface HTTP actuel. Les numéros de version précédents indiquent des versions plus anciens de l'interface HTTP, qui, néanmoins, sont toujours pris en charge pour la rétrocompatibilité.

 

 

Récupérer le document de résultat

Pour obtenir le document de résultat, soumettre l'URI agrandi du document (voir ci-dessus), dans une requête GET HTTP. Le document de résultat est retourné et pourrait être un des types génériques décrits ci-dessous.

 

Note :Lorsqu'une tâche est placée avec succès dans la file d'attente du serveur, le serveur retourne l'URI du document de résultat. Si le client requête le résultat avant que la tâche ait été lancée (elle se trouve toujours dans la file d'attente), un message "status": "Dispatched" sera retourné. Si la tâche a été lancée mais n'a pas été terminée (par exemple parce qu'il s'agit d'une tâche volumineuse), un message "status": "Running" sera retourné. Dans ces deux situations, le client devrait attendre un certain temps avant de faire une requête fraîche pour le document de résultat.

 

Note :Tous les documents d'exemple ci-dessous ont un accès de client limité. Donc les documents d'erreur, les documents de message et les documents de sortie sont tous présumés être enregistrés dans le répertoire de tâche pertinent sur le serveur. Les URI les concernant dans le document de résultat sont donc tous des URI relatifs. Aucun n'est un URI de fichier (qui serait le type d'URI généré dans les cas d'accès client non limités). En ce qui concerne les détails de ces URI, voir la section Obtenir des documents Erreur/Message/Sortie.

 

 

 

Document de résultat contenant les URI des documents d'erreur

Si la tâche requise s'est terminée avec un état Échec, alors la tâche a retourné un résultat négatif. Par exemple, une tâche de validation a retourné un résultat de document invalide. Les erreurs rencontrées lors de l'exécution de la tâche sont stockées dans le journal d'erreur, créé en trois formats de fichiers : (i) texte, (ii) XML long (journal d'erreur détaillé), et (iii) XML court (journal d'erreur moins détaillé). Voir la liste JSON ci-dessous.

 

 

{

"jobid": "6B4EE31B-FAC9-4834-B50A-582FABF47B58",

"state": "Failed",

"error":

{

  "text": "/v1/results/6B4EE31B-FAC9-4834-B50A-582FABF47B58/error/error.txt",

  "longxml": "/v1/results/6B4EE31B-FAC9-4834-B50A-582FABF47B58/error/long.xml",

  "shortxml": "/v1/results/6B4EE31B-FAC9-4834-B50A-582FABF47B58/error/short.xml"

},

"jobs":

[

  {

    "file": "file:///c:/Test/ExpReport.xml",

    "jobid": "20008201-219F-4790-BB59-C091C276FED2",

    "output":

    {

    },

    "state": "Failed",

    "error":

    {

      "text": "/v1/results/20008201-219F-4790-BB59-C091C276FED2/error/error.txt",

      "longxml": "/v1/results/20008201-219F-4790-BB59-C091C276FED2/error/long.xml",

      "shortxml": "/v1/results/20008201-219F-4790-BB59-C091C276FED2/error/short.xml"

    }

  }

]

}

 

 

Veuillez noter :

 

Les tâches ont des sous-tâches.
Les erreurs au niveau de sous-tâche se propagent jusqu'à la tâche de niveau supérieur. L'état de la tâche de niveau supérieur sera seulement OK si toutes ses sous-tâches ont un état OK.
Chaque tâche sous sous-tâche a son propre journal d'erreur.
Les journaux d'erreur comprennent des journaux d'avertissement. Donc, même si une tâche se termine avec un état OK, il pourrait avoir des URI de fichiers d'erreur.
Les URI des fichiers d'erreur sont relatifs à l'adresse de serveur (voir ci-dessus).

 

Document de résultat contenant les URI des documents de sortie

Si la tâche requise s'est terminée avec un état OK, la tâche a retourné un résultat positif. Par exemple, une tâche de validation a retourné un résultat de document valide. Si la tâche a produit un document de sortie, par exemple, le résultat d'une transformation XSLT, alors l'URI du document de sortie est retourné. Voir la liste JSON ci-dessous.

 

 

{

"jobid": "5E47A3E9-D229-42F9-83B4-CC11F8366466",

"state": "OK",

"error":

{

},

"jobs":

[

  {

    "file": "file:///c:/Test/SimpleExample.xml",

    "jobid": "D34B5684-C6FF-4A7A-BF35-EBB9A8A8C2C8",

    "output":

    {

      "xslt-output-file":

      [

        "/v1/results/D34B5684-C6FF-4A7A-BF35-EBB9A8A8C2C8/output/1"

      ]

    },

    "state": "OK",

    "output-mapping":

    {

"/v1/results/D34B5684-C6FF-4A7A-BF35-EBB9A8A8C2C8/output/1": "file:///c:/temp/test.html"

    },

    "error":

    {

    }

  }

]

}

 

 

Veuillez noter :

 

Le fichier de sortie dans le dossier output de la tâche. Vous pouvez utiliser son URI relatif pour accéder au fichier.
Les URI des fichiers de sortie sont relatifs à l'adresse de serveur (voir ci-dessus).
L'item output-mapping mappe le document de sortie dans le répertoire de tâche sur le serveur dans l'emplacement de fichier spécifié par le client dans la requête de tâche. Veuillez noter que seuls les documents de sortie spécifiés par le client dans la requête de tâche ont un mappage ; les fichiers liés aux tâches générés par le serveur (comme des fichiers d'erreur) n'ont pas de mappage.
En alternative, il est possible de récupérer tous les documents de résultat générés pour une tâche spécifique en tant qu'un archive zip utilisant l'URL "/v1/results/JOBID/output/zip". Cette fonction n'est pas disponible dans le mode de filesystem non limité. Veuillez noter que l'archive zip contiendra des noms de fichier endommagé, qui nécessite d'être mappé à nouveau sur le nom réel en utilisant l'objet output-mapping.

 

Document de résultat ne contenant aucun URI

Si la tâche requise s'est terminée avec un état OK, la tâche a retourné un résultat positif. Par exemple, une tâche de validation a retourné un résultat de document valide. Certaines tâches, comme une validation ou un test bien formé, ne produit aucun document de sortie. Si une tâche de ce type se termine avec un état des OK, alors le document de résultat n'aura ni l'URI d'un document de sortie ni l'URI d'un journal d'erreur. Voir la liste de JSON ci-dessous.

 

 

{

"jobid": "3FC8B90E-A2E5-427B-B9E9-27CB7BB6B405",

"state": "OK",

"error":

{

},

"jobs":

[

  {

    "file": "file:///c:/Test/SimpleExample.xml",

    "jobid": "532F14A9-F9F8-4FED-BCDA-16A17A848FEA",

    "output":

    {

    },

    "state": "OK",

    "error":

    {

    }

  }

]

}

 

 

Veuillez noter :

 

Aussi bien les composants de sortie et d'erreur de la sous-tâche dans la liste ci-dessus sont vides.
Une tâche pourrait se terminer avec un état OK mais contient tout de même encore des avertissements ou d'autres messages, qui sont inscrits dans les fichiers d'erreur. Dans ces cas, le document de résultat contiendra les URI de fichiers d'erreur même si la tâche s'est terminée avec l'état OK.

 

Accéder aux documents d'erreur et de sortie listés dans le document de résultat

Les documents d'erreur et de sortie peuvent être accédés avec des requêtes GET HTTP. Ils sont décrits dans la section suivante, Obtenir des documents Erreur/Sortie.

 


© 2019 Altova GmbH