Personnalisation des messages que les applications client envoient aux services Web et reçoivent des services Web

Vous pouvez personnaliser le balisage XML des messages que les applications client envoient aux services Web et reçoivent des services Web.

Pour chaque opération que vous ajoutez dans un service Web, le plan de travail génère un schéma XML par défaut qui décrit les messages XML d'entrée et de sortie. Si un message d'entrée pour une opération de service Web est en langage XML, il doit être balisé conformément à ce schéma XML par défaut. Tous les messages de sortie générés par les services Web pour l'opération sont également balisés conformément au schéma XML par défaut.

Vous pouvez configurer des transformations XSL pour les messages d'entrée XML, les messages de sortie, ou pour les deux types de message d'une opération de service Web. Ces transformations XSL ont lieu dans le flux des messages d'entrée et de sortie.

Le flux des messages SOAP/HTTP et HTTP POST (text/xml) personnalisés implique deux transformations XSL : une pour les messages d'entrée, l'autre pour les messages de sortie. Le flux des messages HTTP GET/POST (codé dans l'URL) personnalisés implique une transformation XSL uniquement, pour les messages de sortie.

Les sections ci-après décrivent les transformations XSL pour les messages utilisant les protocoles des messages pris en charge.

Transformations XSL avec le protocole des messages SOAP/HTTP

Cette section décrit le flux de messages par défaut pour les messages SOAP/HTTP puis le flux qui intègre les transformations XSL.

Le flux de messages par défaut, qui ne contient pas de transformation XSL, pour une opération de service Web, suit les étapes ci-dessous.
  1. Une application client envoie un message SOAP/HTTP qui accède à une opération dans un service Web. Le corps du message est en langage XML et est balisé conformément au schéma par défaut.
  2. Le service Web reçoit le message et transmet à la base de données l'instruction SQL ou l'appel de procédure mémorisée qui figure dans l'opération.
  3. Le service Web reçoit la réponse de la base de données et met en forme la réponse dans un message XML qui est balisé conformément au schéma XML par défaut pour l'opération.
  4. Le service Web envoie la réponse à l'application client.
Figure 1. Flux de messages par défaut
Lorsque vous configurez des transformations XSL, le flux de messages d'une opération de service Web suit les étapes ci-dessous.
  1. Une application client envoie un message SOAP/HTTP qui accède à une opération dans un service Web. Le message XML qui se trouve dans le corps SOAP est balisé conformément à un schéma XML personnalisé.
  2. Le message est transformé : il est balisé conformément au schéma XML par défaut.
  3. Le service Web reçoit le message et transmet à la base de données l'instruction SQL ou l'appel de procédure mémorisée qui figure dans l'opération.
  4. Le service Web reçoit la réponse de la base de données et met en forme la réponse dans un message XML qui est balisé conformément au schéma XML par défaut pour l'opération.
  5. Le message est transformé : il est balisé conformément au schéma XML personnalisé.
  6. Le service Web envoie la réponse à l'application client.
Figure 2. Flux de messages intégrant les transformations XSL
Tableau 1. Entrées et sorties des transformations XSL
  Entrée de la transformation XSL Sortie de la transformation XSL
Première transformation XSL Document XML valide, encapsulé dans SOAP, utilisant un schéma XML personnalisé Document XML valide, encapsulé dans SOAP, utilisant le schéma XML par défaut
Deuxième transformation XSL Document XML valide, encapsulé dans SOAP, utilisant le schéma XML par défaut Document XML valide, encapsulé dans SOAP, utilisant un schéma XML personnalisé
Lorsque vous créez le service Web, vous devez fournir les fichiers suivants, répertoriés dans le tableau ci-dessous :
  • Pour activer la première transformation, vous devez fournir au service Web une copie du schéma XML personnalisé et un fichier XSL qui mappe le schéma XML personnalisé au schéma XML par défaut.
  • Pour activer la deuxième transformation, vous devez fournir au service Web une copie du schéma XML personnalisé et un fichier XSL qui mappe le schéma XML par défaut au schéma XML personnalisé.
Tableau 2. Fichiers à fournir au service Web.
Transformation XSL du message d'entrée Transformation XSL du message de sortie
Schéma XML personnalisé (fichier XSD) Fichier XSL Schéma XML personnalisé (fichier XSD) Fichier XSL
X X X X

Transformations XSL avec le protocole des messages HTTP POST (text/xml)

Cette section décrit le flux de messages par défaut pour les messages HTTP POST (text/xml) puis le flux qui intègre les transformations XSL.

Le flux de messages par défaut, qui ne contient pas de transformation XSL, pour une opération de service Web, suit les étapes ci-dessous.
  1. Une application client envoie un message HTTP POST (text/xml) qui accède à une opération dans un service Web. Le message est en langage XML et est balisé conformément au schéma par défaut.
  2. Le service Web reçoit le message et transmet à la base de données l'instruction SQL ou l'appel de procédure mémorisée qui figure dans l'opération.
  3. Le service Web reçoit la réponse de la base de données et met en forme la réponse dans un message XML qui est balisé conformément au schéma XML par défaut pour l'opération.
  4. Le service Web envoie la réponse à l'application client.
Figure 3. Flux de messages par défaut
Lorsque vous configurez des transformations XSL, le flux de messages d'une opération de service Web suit les étapes ci-dessous.
  1. Une application client envoie un message HTTP POST (text/xml) qui accède à une opération dans un service Web. Le message est balisé conformément à un schéma XML personnalisé.
  2. Le message est transformé : il est balisé conformément au schéma XML par défaut.
  3. Le service Web reçoit le message et transmet à la base de données l'instruction SQL ou l'appel de procédure mémorisée qui figure dans l'opération.
  4. Le service Web reçoit la réponse de la base de données et met en forme la réponse dans un message XML qui est balisé conformément au schéma XML par défaut pour l'opération.
  5. Le message est transformé : il est converti en XML et est balisé conformément au schéma XML personnalisé ou est converti dans un format non XML tel qu'HTML ou texte en clair.
  6. Le service Web envoie la réponse à l'application client.
Figure 4. Flux de messages intégrant les transformations XSL
Tableau 3. Entrées et sorties des transformations XSL
  Entrée de la transformation XSL Sortie de la transformation XSL
Première transformation XSL Document XML valide utilisant un schéma XML personnalisé Document XML valide utilisant le schéma XML par défaut
Deuxième transformation XSL Document XML valide utilisant le schéma XML par défaut Document non XML ou document XML valide utilisant un schéma XML personnalisé
Lorsque vous créez le service Web, vous devez fournir les fichiers suivants, répertoriés dans le tableau ci-dessous :
  • Pour activer la première transformation, vous devez fournir au service Web un fichier XSL uniquement qui mappe un schéma XML personnalisé au schéma par défaut. Il n'est pas nécessaire de fournir une copie du schéma XML personnalisé.
  • Pour activer la deuxième transformation, les fichiers que vous fournissez au service Web dépendent de la sortie que vous voulez obtenir :
    • Pour activer la transformation en XML, vous devez fournir au service Web un fichier XSL uniquement qui mappe un schéma XML personnalisé à un schéma par défaut. Il n'est pas nécessaire de fournir une copie du schéma XML personnalisé.
    • Pour activer la transformation en format non XML, vous devez fournir un fichier XSL qui mappe le schéma XML par défaut au format non XML.
Tableau 4. Fichiers à fournir au service Web.
Transformation XSL du message d'entrée Transformation XSL du message de sortie
Schéma XML personnalisé (fichier XSD) Fichier XSL Schéma XML personnalisé (fichier XSD) Fichier XSL
  X   X

Transformations XSL avec le protocole des messages HTTP GET/POST (codé dans l'URL)

Cette section décrit le flux de messages par défaut pour les messages HTTP GET (codé dans l'URL) et HTTP POST (codé dans l'URL) puis le flux qui intègre une transformation XSL.

Le flux de messages par défaut, qui ne contient pas de transformation XSL, pour une opération de service Web, suit les étapes ci-dessous.
  1. Une application client envoie un message HTTP GET (codé dans l'URL) ou HTTP POST (codé dans l'URL) qui accède à une opération dans un service Web. Le message est une séquence codée de paramètres dans une chaîne de texte.
  2. Le service Web reçoit le message et transmet à la base de données l'instruction SQL ou l'appel de procédure mémorisée qui figure dans l'opération.
  3. Le service Web reçoit la réponse de la base de données et met en forme la réponse dans un message XML qui est balisé conformément au schéma XML par défaut pour l'opération.
  4. Le service Web envoie la réponse à l'application client.
Figure 5. Flux de messages par défaut
Lorsque vous configurez une transformation XSL, le flux de messages pour une opération de service Web suit les étapes ci-dessous.
  1. Une application client envoie un message HTTP GET (codé dans l'URL) ou HTTP POST (codé dans l'URL) qui accède à une opération dans un service Web. Le message code les paramètres. Les transformations XSL ne sont pas possibles pour ces messages.
  2. Le service Web reçoit le message et transmet à la base de données l'instruction SQL ou l'appel de procédure mémorisée qui figure dans l'opération.
  3. Le service Web reçoit la réponse de la base de données et met en forme la réponse dans un message XML qui est balisé conformément au schéma XML par défaut pour l'opération.
  4. Le message est transformé : il est converti en XML et est balisé conformément au schéma XML personnalisé ou est converti dans un format non XML tel qu'HTML ou texte en clair.
  5. Le service Web envoie la réponse à l'application client.
Figure 6. Flux de messages intégrant une transformation XSL
Tableau 5. Entrées et sorties des transformations XSL.
  Entrée de la transformation XSL Sortie de la transformation XSL
Première transformation XSL Les transformations XSL ne sont pas prises en charge pour les messages provenant des applications client.
Deuxième transformation XSL Document XML valide utilisant le schéma XML par défaut Document non XML ou document XML valide utilisant un schéma XML personnalisé
Lorsque vous créez le service Web, vous devez fournir les fichiers suivants, répertoriés dans le tableau ci-dessous :
  • Pour activer la transformation en XML, vous devez fournir au service Web un fichier XSL uniquement qui mappe un schéma XML personnalisé à un schéma par défaut. Il n'est pas nécessaire de fournir une copie du schéma XML personnalisé.
  • Pour activer la transformation en format non XML, vous devez fournir un fichier XSL qui mappe le schéma XML par défaut au format non XML.
Tableau 6. Fichiers à fournir au service Web.
Transformation XSL du message d'entrée Transformation XSL du message de sortie
Schéma XML personnalisé (fichier XSD) Fichier XSL Schéma XML personnalisé (fichier XSD) Fichier XSL
      X

Commentaires