Utilisation du port d'écoute des réponses asynchrones JMS JAX-WS

Java™ API for XML-Based Web Services (JAX-WS) inclut un programme d'écoute de réponses asynchrones Java Message Service (JMS), utilisé pour recevoir des réponses aux requêtes JAX-WS asynchrones qui utilisent le transport JMS. Le programme d'écoute de réponses asynchrones JMS est utilisé dans les environnements de serveur d'applications et de client d'application.

Avant de commencer

JAX-WS fournit un support pour l'appel d'opérations de services Web de façon asynchrone via un modèle de rappel ou d'interrogation. Lorsque le client JAX-WS utilise le transport JMS pour un appel d'opérations asynchrones, les réponses sont reçues par le programme d'écoute de réponses asynchrones. Pour savoir comment utiliser le modèle d'appel client asynchrone JAX-WS, consultez les informations relatives à l'appel des services Web JAX-WS Web de manière asynchrone.

Pourquoi et quand exécuter cette tâche

Le programme d'écoute de réponses asynchrones JMS est utilisé dans l'environnement client des services Web pour recevoir des réponses asynchrones entrantes lorsque l'application client utilise le transport JMS. Le programme d'écoute requiert une fabrique de connexions et une file d'attente pour fonctionner correctement. Commencez par configurer la fabrique de connexions et la file d'attente, puis spécifiez les noms JNDI de la fabrique de connexions et de la file d'attente pour le programme d'écoute en paramétrant les propriétés du système Java. L'environnement dans lequel le client est exécuté détermine la façon de paramétrer les propriétés système.

Le programme d'écoute de réponses asynchrones JMS est lancé automatiquement par l'environnement d'exécution du client de services Web lors de l'appel par le client de la première opération JAX-WS asynchrone via le transport JMS.

La fabrique de connexions et la file d'attente configurées avec le programme d'écoute des réponses asynchrones sont utilisées pour toutes les requêtes faisant l'objet d'un appel dans le cadre d'un processus Java particulier comme pour le serveur d'applications ou un conteneur de client d'application. Vous pouvez partager la fabrique de connexions entre différents processus Java. Cependant, vous ne pouvez pas partager de file d'attente entre des processus Java.

Procédure

  1. Déterminez si vous voulez que le client JAX-WS utilise le mécanisme de transport JMS.
  2. Pour chaque processus Java qui utilisera JMS comme transport des requêtes JAX-WS asynchrones, configurez la fabrique de connexions et la file d'attente utilisées par le programme d'écoute des réponses asynchrones JMS pour ce processus. Vous pouvez partager une fabrique de connexions entre plusieurs processus Java, mais vous ne pouvez pas partager de file d'attente entre processus Java.
  3. Pour chaque processus Java, paramétrez les propriétés système com.ibm.websphere.webservices.jms.AsyncReplyQueueName et com.ibm.websphere.webservices.jms.AsyncReplyCFName Java de façon à spécifier les noms JNDI de la file d'attente et de la fabrique de connexions utilisés par le programme d'écoute de réponses asynchrones JMS pour ce processus.

    Si le nom JNDI de la file d'attente est la valeur par défaut, jms/DefaultAsyncReplyQueue, il est alors inutile de paramétrer la propriété AsyncReplyQueueName. De même, si le nom JNDI de la fabrique de connexions est la valeur par défaut, jms/DefaultAsyncReplyCF, il est inutile de paramétrer la propriété AsyncReplyCFName.

    Si votre client s'exécute dans l'environnement du serveur d'applications, paramétrez les propriétés comme propriétés système du serveur d'applications en utilisant la console d'administration ou la commande wsadmin.

    Si votre client s'exécute dans l'environnement de conteneur client d'application, vous devez paramétrer les propriétés en utilisant l'option –CCD sur la ligne de commande launchClient.

Résultats

Votre client de services Web JAX-WS est configuré pour utiliser le programme d'écoute des réponses asynchrones de façon à recevoir des messages de réponses asynchrones lors de l'utilisation du transport.

Exemple

Imaginez que vous avez un client de services Web JAX-WS qui s'exécute dans l'environnement de conteneur de client d'application et qui utilise le transport JMS pour communiquer avec le serveur. Supposez également que le client appelle des opérations JAX-WS asynchrones. Vous pouvez créer une fabrique de connexions avec le nom JNDI jms/MyAppCF, et une file d'attente avec le nom JNDI jms/MyAppAsyncReplyQueue. Lorsque vous appelez le client avec la commande launchClient , spécifiez les noms JNDI de la file d'attente et de la fabrique de connexions tel qu'illustré sur la commande suivante :
launchClient MyAppClient.ear \
   -CCDcom.ibm.websphere.webservices.jms.AsyncReplyQueueName=jms/MyAppReplyQueue \
   -CCDcom.ibm.websphere.webservices.jms.AsyncReplyCFName=jms/MyAppCF \
   <arguments de l'application>

Icône indiquant le type de rubrique Rubrique de tâche



Icône d'horodatage Dernière mise à jour: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=twbs_jmsasyncresplistener
Nom du fichier : twbs_jmsasyncresplistener.html