Ping and Echo -
Configurer
|
 |
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 :
- Synchrone : le client attend la réponse du service.
- Asynchrone avec communication synchrone : le client de service
n'attend pas la réponse du service. Une méthode de rappel est fournie. Lorsque le service répond, la méthode de rappel est appelée pour gérer la chaîne de réponse. Toutefois, la
communication par câble reste synchrone.
- Asynchrone avec communication asynchrone : le client de service
n'attend pas la réponse du service. Une méthode de rappel est fournie. Lorsque le service répond, la méthode de rappel est appelée pour gérer la chaîne de réponse. Le service
contacte le client sur un canal différent de celui utilisé par le client pour contacter le service.
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.
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 .
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.
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 :
- Démarrez le serveur.
- Cliquez sur Exécuter.
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 :
- Démarrez le serveur.
- Ouvrez une invite de commande.
- 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
- 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.
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.
- Ouvrez une invite de commande à l'aide du menu Démarrer :
Cliquez sur Démarrer-> Exécuter. Entrez cmd.
- Accédez au répertoire
racine_serveur_applications/samples/bin/JaxWSServicesSamples. Par
exemple : cd C:/Program
Files/IBM/WebSphere/AppServer/samples/bin/JaxWSServiceSamples
- Exécutez les scripts Reliable Messaging.
- Pour exécuter les scripts d'activation Reliable Messaging, entrez la commande : enableRMQos.bat
- Pour exécuter les scripts de désactivation Reliable Messaging, entrez la commande : disableRMQos.bat
- (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 :
- profile : profil du serveur d'applications
- cell : cellule du serveur d'applications
- node : noeud du serveur d'applications
- server : nom du serveur d'applications
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
- 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
- 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.
Pour tester l'exemple client léger Ping and Echo avec les ensembles de règles sur la qualité de service, suivez ces instructions.
- 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.
- Editez le script runSampleSei pour votre système d'exploitation.
- 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
- 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.
- 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
$@
- Créez un répertoire nommé META-INF sous le répertoire
racine_serveur_applications/samples/bin/JaxWSServicesSamples.
- 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.
- 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.
- Choisissez le répertoire racine_serveur_applications/samples/bin/JaxWSServicesSamples, puis exécutez l'exemple.