Services Web JAX-WS |
|
|
![]() |
|
Exécuter | Configurer | Notes techniques | Javadoc | Génération avec Ant |
Mise en route |
Recherche du code source |
Notes relatives au codage |
Cet exemple illustre l'utilisation du mécanisme MTOM SOAP (Message Transmission Optimization Mechanism) pour transmettre des fichiers binaires à l'aide d'un service JAX-WS.
L'exemple de service MTOM implémente un service Web qui retourne le contenu binaire d'un fichier au client. L'exemple inclut un client servlet, org.apache.axis2.jaxws.sample.servlet.SampleServlet, et une application client léger de service MTOM, org.apache.axis2.jaxws.sample.mtom.SampleMTOMTests. Le servlet de service client et l'application client léger utilisent le même code pour fonctionner avec le service en utilisant les clients dispatch et proxy dans le fichier source SampleMTOMTests.java.
Le code Java pour le servlet client de l'exemple de service MTOM et l'application de client léger se trouvent dans le répertoire racine_profil/samples/src/JaxWSServicesSamples/SampleMTOMClient/src.
Le code Java pour l'application de service MTOM se trouve dans le répertoire racine_profil/samples/src/JaxWSServicesSamples/SampleMTOMService/src.
Sur les systèmes d'exploitation z/OS : L'arborescence du code source des exemples JAX-WS n'est pas fournie sur le système d'exploitation z/OS car les modèles d'application ne sont pas générés sur ce système d'exploitation.
L'exemple de service MTOM a été généré à l'aide de l'outil Rational Application Developer à partir de deux fichiers WSDL (Web Services Description Language) qui définissent les services. L'un des noeuds finaux de service fourni utilise SOAP 1.1 et l'autre utilise SOAP 1.2. Le serveur identifie automatiquement les messages optimisés MTOM entrants en fonction du type de contenu et désérialise les messages en tenant compte du type de contenu détecté. Il n'y a donc pas de code explicite dans l'exemple de service MTOM pour gérer MTOM dans les services.
Côté client toutefois, MTOM doit être activé avant la transaction de service. Au sein de l'application client léger de service MTOM, org.apache.axis2.jaxws.sample.mtom.SampleMTOMTests.java, dans les méthodes testMtomWithDispatch et testMtomWithProxy, un appel de la méthode setMTOMEnabled se trouve sur la liaison. Une fois cette méthode appelée, les messages sortants sont sérialisés et envoyés en tant que messages MTOM optimisés. Si la méthode setMTOMEnabled n'est pas définie sur la liaison, alors toutes les données binaires des noeuds de contenu binaire sont sérialisées en tant que chaînes codées en Base64.
Le client servlet, org.apache.axis2.jaxws.sample.servlet.SampleServlet.java, n'a aucun code de service spécifique et appelle les méthodes fournies dans le fichier SampleMTOMTests.java.
Le client fourni dans cet exemple appelle le service MTOM à l'aide des modèles de programmation dispatch et proxy. Le client montre comment accéder aux deux méthodes dispatch et proxy.
Pour en savoir plus sur l'activation de MTOM pour les services Web JAX-WS, voir la bibliothèque du Centre de documentation WebSphere Application Server.