Ping and Echo - Configurer


Exécution de l'exemple
Exécution de l'exemple client léger
Activation d'une messagerie et d'une sécurité fiables

L'exemple Ping and Echo présente deux services Web JAX-WS simples.

L'exemple Ping montre une opération unidirectionnelle. Une valeur de chaîne simple est transmise au service. L'intervention du client est terminée lorsqu'il a contacté le service. L'exemple contient deux noeuds finaux. L'un des noeuds finaux utilise SOAP 1.1 et l'autre utilise SOAP 1.2.

L'exemple Echo montre une opération bidirectionnelle. Une valeur de chaîne simple est transmise au service. Le service ajoute en préfixe une valeur de chaîne d'identificateur et retourne cette valeur au client. L'exemple contient deux noeuds finaux. L'un des noeuds finaux utilise SOAP 1.1 et l'autre utilise SOAP 1.2. L'exemple Echo montre également les modèles de programmation synchrone et asynchrone ainsi que le comportement filaire synchrone et asynchrone :


Exemple de noeuds finaux de service
URI Description
http://localhost:9080/WSSampleSei/PingService
Exemple de service Ping utilisant SOAP 1.1
http://localhost:9080/WSSampleSei/PingService12
Exemple de service Ping utilisant SOAP 1.2
http://localhost:9080/WSSampleSei/EchoService
Exemple de service Echo utilisant SOAP 1.1
http://localhost:9080/WSSampleSei/EchoService12
Exemple de service Echo utilisant SOAP 1.2

Le port 9080 est la valeur par défaut, mais le numéro de port sera différent si vous installez un profil autre que le profil AppSrv01.



Configuration de l'exemple

Pour terminer la configuration de l'exemple Ping and Echo, déployez l'application exemple de services Web Jax-WS sur le serveur. Si le modèle d'application n'est pas déjà déployé, reportez-vous aux instructions Régénération et déploiement du fichier JaxWSServicesSamples.ear.

Exécution de l'exemple

Avant de commencer, vous devez vérifier que le serveur d'applications fonctionne avant d'exécuter les clients.

L'exemple Ping and Echo inclut deux services, Ping et Echo.

Exécution de l'exemple Ping et Echo

L'exemple Ping montre une transaction de service unidirectionnel. Le source pour cet exemple est situé dans le répertoire racine_profil/samples/src/JaxWSServicesSamples/SampleClientSei.

L'exemple Echo montre une transaction de service bidirectionnel. Le source pour cet exemple est situé dans le répertoire racine_profil/samples/src/JaxWSServicesSamples/SampleClientSei.

Pour exécuter le servlet client Ping and Echo à partir de WebSphere Application Server, procédez comme suit :

  1. Démarrez le serveur.
  2. Cliquez sur Exécuter.

Exécution de l'exemple client léger Ping et Echo

L'exemple client léger Ping and Echo est semblable au servlet client Ping and Echo. Cet exemple accède aux mêmes beans de services Web Ping et Echo, mais utilise un fichier d'archive Java (JAR) qui requiert le client léger pour JAX-WS avec le fichier JAR de WebSphere Application dans le chemin d'accès aux classes.

Vous trouverez le fichier WSSampleClientSei.jar dans le répertoire samples/lib/JaxWSServicesSamples.

L'exemple client léger Ping and Echo crée un proxy JAX-WS pour le service Web Ping ou Echo en fonction des paramètres que vous fournissez. Le proxy contacte ensuite le noeud final de service avec le message. L'exemple Echo attend la réponse.

Dans les étapes suivantes, la variable, racine_serveur_applications, fait référence au répertoire racine d'installation du serveur d'applications.

Pour exécuter le client léger Ping and Echo à partir d'un serveur d'applications WebSphere, procédez comme suit, en tenant compte de votre système d'exploitation :

  1. Démarrez le serveur.
  2. Ouvrez une invite de commande.
  3. Allez au répertoire JaxWSServicesSamples.

    Sur les systèmes d'exploitation Windows :

    cd racine_serveur_applications\samples\bin\JaxWSServicesSamples

    Sur des systèmes d'exploitation tels qu'AIX, Linux et z/OS :

    cd racine_serveur_applications/samples/bin/JaxWSServicesSamples

    Sur les systèmes d'exploitation iSeries :

    cd racine_serveur_applications/samples/bin/JaxWSServicesSamples

  4. Exécutez l'exemple client léger Ping and Echo.

    Sur les systèmes d'exploitation Windows :

    runSampleSei.bat -h nomhôte -p port -f suffixeUrl -m MessageTest -s service -t délai -w FilaireAsynchrone -c nombre -1 -2

    Sur des systèmes d'exploitation tels qu'AIX, Linux et z/OS :

    ./runSampleSei.sh -h nomhôte -p port -f SuffixeUrl -m MessageTest -s service -t délai -w FilaireAsynchrone -c nombre -1 -2

    Sur les systèmes d'exploitation iSeries :

    ./runSampleSei -h nomhôte -p port -f SuffixeUrl -m MessageTest -s service -t délai -w FilaireAsynchron -c nombre -1 -2

    Les paramètres sont :
    -h <nomhôte> est le nom de l'hôte. Le nom d'hôte par défaut est hôte_local.
    -p <port> est le numéro de port. La valeur par défaut est 9080.
    -f <urlsuffix> correspond au contexte du noeud final de service. La valeur par défaut est /WSSampleSei/EchoService.
    -m <message> correspond au texte du message. La valeur par défaut est hello. Si le message contient des blancs, placez le message entre guillemets.
    -c nombre spécifie le nombre de transactions à exécuter. La valeur par défaut est 1.
    -1 spécifie l'utilisation de SOAP 1.1. La valeur par défaut est SOAP 1.1.
    -2 spécifie l'utilisation de SOAP 1.2.

    L'exemple suivant illustre une exécution réussie du client Ping and Echo sur le système d'exploitation Windows :


    runSampleSei.bat -p 9081
    Aug 8, 2007 7:01:00 PM com.ibm.ws.ssl.config.SSLConfigManager
    INFO: ssl.disable.url.hostname.verification.CWPKI0027I
    >> CLIENT: SEI Async to http://localhost:9081/WSSampleSei/EchoService
    [WAShttpAsyncResponseListener] listening on port 4733
    >> CLIENT: SEI Async invocation complete.
    >> CLIENT: SEI Async response is: JAX-WS==>>HELLO


Pour en savoir davantage sur la façon dont l'exemple de client et l'application fonctionnent, reportez-vous aux notes techniques sur Ping and Echo ou consultez le code source Java.

Pour en savoir plus sur les clients de Services Web, reportez-vous à la documentation sur le développement et le déploiement de clients de services Web dans la bibliothèque du Centre de documentation WebSphere Application Server.

Activation d'une messagerie et d'une sécurité fiables

Scripts d'ensemble de règles
Application de la qualité de service sur l'exemple client léger Ping and Echo

Scripts d'ensemble de règles

Les ensembles de règle sont utilisés pour activer la qualité de service telle que ReliableMessaging et SecureConversation. Les ensembles de règles associés à une application définissent la qualité de service pour cette application. Un ensemble de scripts est fourni pour activer les ensembles de règles pour WS-ReliableMessaging (WS-RM), WS-SecureConversation (WS-SC) et WS-I Reliable Secure Profile (RSP). RSP est une combinaison de WS-RM et WS-SC. Ces scripts sont fournis à titre d'exemple. Vous pouvez également activer les ensembles de règles en utilisant la console d'administration. Ces scripts sont conçus pour fonctionner avec les modèles d'application uniquement. Les tableaux suivants décrivent les scripts d'exemple d'ensemble de règles.

Scripts du système d'exploitation Windows
Nom du fichier Description
enableRMQoS.bat Active WS-ReliableMessaging Version 1.1
enableRM1QoS.bat Active WS-ReliableMessaging Version 1.0
enableSCQoS.bat Active WS-SecureConversation
enableRSPQoS.bat Active WS-ReliableMessaging et WS-SecureConversation
enableWSAQoS.bat Active WS-Addressing
disableRMQoS.bat Désactive WS-ReliableMessaging Version 1.1
disableRM1QoS.bat Désactive WS-ReliableMessaging Version 1.0
disableSCQoS.bat Désactive WS-SecureConversation
disableRSPQoS.bat Désactive WS-ReliableMessaging et WS-SecureConversation
disableWSAQoS.bat Désactive WS-Addressing

Script des systèmes d'exploitation tels qu'AIX, Linux et z/OS
Nom du fichier Description
enableRMQoS.sh Active WS-ReliableMessaging Version 1.1
enableRM1QoS.sh Active WS-ReliableMessaging Version 1.0
enableSCQoS.sh Active WS-SecureConversation
enableRSPQoS.sh Active WS-ReliableMessaging et WS-SecureConversation
enableWSAQoS.sh Active WS-Addressing
disableRMQoS.sh Désactive WS-ReliableMessaging Version 1.1
disableRM1QoS.sh Désactive WS-ReliableMessaging Version 1.0
disableSCQoS.sh Désactive WS-SecureConversation
disableRSPQoS.sh Désactive WS-ReliableMessaging et WS-SecureConversation
disableWSAQoS.sh Désactive WS-Addressing

Scripts du système d'exploitation i5/OS
Nom du fichier Description
enableRMQoS Active WS-ReliableMessaging Version 1.1
enableRM1QoS Active WS-ReliableMessaging Version 1.0
enableSCQoS Active WS-SecureConversation
enableRSPQoS Active WS-ReliableMessaging et WS-SecureConversation
enableWSAQoS Active WS-Addressing
disableRMQoS Désactive WS-ReliableMessaging Version 1.1
disableRM1QoS Désactive WS-ReliableMessaging Version 1.0
disableSCQoS Désactive WS-SecureConversation
disableRSPQoS Désactive WS-ReliableMessaging et WS-SecureConversation
disableWSAQoS Désactive WS-Addressing


Effectuez les étapes suivantes pour exécuter les scripts Reliable Messaging sur le système d'exploitation Windows. Vous pouvez exécuter tous les scripts de façon similaire sur votre système d'exploitation.

  1. Ouvrez une invite de commande à l'aide du menu Démarrer : Cliquez sur Démarrer-> Exécuter. Entrez cmd.
  2. Accédez au répertoire racine_serveur_applications/samples/bin/JaxWSServicesSamples. Par exemple : cd C:/Program Files/IBM/WebSphere/AppServer/samples/bin/JaxWSServiceSamples
  3. Exécutez les scripts Reliable Messaging.
  4. (Facultatif) Spécifiez votre nom de profil, cellule, noeud ou serveur lorsque vous exécutez les scripts Reliable Messaging ou de sécurité. Les scripts d'activation et de désactivation pour Reliable Messaging et la sécurité ont quatre paramètres facultatifs :

    L'exemple suivant montre comment exécuter le script Enable WS-ReliableMessaging avec les paramètres facultatifs profile, cell et node :

    enableRMQoS.bat AppSrv02 MyServerNode01Cell MyServerNode01

    L'exemple suivant montre comment exécuter le script Disable WS-ReliableMessaging avec les paramètres facultatifs profile, cell et node :

    disableRMQoS.bat AppSrv02 MyServerNode01Cell MyServerNode01

  5. Si nécessaire, ajoutez d'autres paramètres sur la ligne de commande. Si la sécurité administrative est activée sur votre serveur, vous devez fournir l'ID utilisateur et le mot de passe sinon le script va échouer, par exemple :
    ./enableRMQoS.sh -user MonIDutilisateur -password monMotdePasse
  6. Vérifiez que les modèles d'application démarrent correctement. Si vous recevez un message d'avertissement, c'est peut-être que les modèles d'application ont démarré de façon incorrecte. Utilisez la console d'administration pour arrêter puis redémarrer les modèles d'application.  

Application de le qualité de service sur l'exemple client léger Ping and Echo

Pour tester l'exemple client léger Ping and Echo avec les ensembles de règles sur la qualité de service, suivez ces instructions.
  1. Appliquez aux modèles d'application la qualité de service que vous souhaitez tester, en procédant comme indiqué dans la section des Scripts des ensembles de règles.
  2. Editez le script runSampleSei pour votre système d'exploitation.
  3. Pour ajouter les règles WS-I RSP et SecureConversation, ajoutez l'instruction suivante afin d'inclure le chemin au fichier de connexion JAAS (Java Authentication and Authorization) :

    Sur les systèmes d'exploitation Windows :

    set JAASLOGIN=-Djava.security.auth.login.config=<racine_profil>/properties/wsjaas_client.conf

    Sur des systèmes d'exploitation tels qu'AIX, Linux et z/OS :

    export JAASLOGIN=-Djava.security.auth.login.config=<racine_profil>/properties/wsjaas_client.conf

    racine_profil indique le répertoire du serveur dans lequel est situé votre profil, par exemple :
    set JAASLOGIN=-Djava.security.auth.login.config=C:/IBM/WebSphere/profiles/AppSrv02/properties/wsjaas_client.conf

  4. Changez l'instruction de chemin d'accès aux classes.

    Sur les systèmes d'exploitation Windows :

    set CLASSPATH=%THIN_JAR%;./WSSampleClientSei.jar;.

    Sur des systèmes d'exploitation tels qu'AIX, Linux et z/OS :

    export CLASSPATH=${THIN_JAR}:./WSSampleClientSei.jar:.

    Remarque : le point (.) est inclus à la fin de l'instruction de chemin d'accès aux classes. Ce point est inclus pour que le code de chargement d'ensemble de règles trouve le répertoire META-INF. Ne l'omettez pas.

  5. Ajoutez <JAASLOGIN> et -DUSER_INSTALL_ROOT="<racine_profil>" à la commande Java.

    Sur les systèmes d'exploitation Windows :

    java %JAASLOGIN% -DUSER_INSTALL_ROOT= "<racine_profil>" -cp "%CLASSPATH%" com.ibm.was.wssample.sei.cli.SampleClient %*

    Sur des systèmes d'exploitation tels qu'AIX, Linux et z/OS :

    java ${JAASLOGIN} -DUSER_INSTALL_ROOT="<racine_profil>" -cp "${CLASSPATH} " com.ibm.was.wssample.sei.cli.SampleClient $@

  6. Créez un répertoire nommé META-INF sous le répertoire racine_serveur_applications/samples/bin/JaxWSServicesSamples.
  7. Copiez le répertoire PolicySets sous le répertoire racine_profil/config/cells/NOM_CELLULE/ dans le répertoire racine_serveur_applications/samples/bin/JaxWSServicesSamples/META-INF.
  8. Copiez le sous-répertoire de liaisons et le fichier clientPolicyAttachment.xml du répertoire profile_root/config/cells/ CELL_NAME/applications/JaxWSServicesSamples.ear/deployments/JaxWSServicesSamples/META-INF dans le répertoire app_server_root/samples/bin/JaxWSServicesSamples/META-INF. Copiez l'intégralité du sous-répertoire de liaisons avec son contenu, par exemple, SecureConversationClientBinding ou RAMP_client_default_bindings.
  9. Choisissez le répertoire racine_serveur_applications/samples/bin/JaxWSServicesSamples, puis exécutez l'exemple.