Services Web JAX-RPC |
|
|
![]() |
|
Configuration et exécution | Notes techniques | Javadoc | Génération avec Ant |
Configuration de l'exemple |
Exécution de l'exemple |
Il existe deux clients AddressBook, une version J2SE (Java 2 Standard Edition) et une version J2EE (Java 2 Enterprise Edition) gérée par le conteneur. Si vous souhaitez tirer parti des services de conteneur de la plateforme J2EE, exécutez la version J2EE.
Pour terminer la configuration de cet exemple, déployez l'application exemple de services Web JAX-RPC sur le serveur. Si le modèle d'application n'est pas déjà déployé, reportez-vous aux instructions de régénération et de déploiement du fichier WebServicesSamples.ear.
Vérifiez que le serveur est lancé avant d'exécuter les clients.
Il existe deux clients AddressBook, une version J2SE externe et une version J2EE (Java 2 Enterprise Edition) gérée par le conteneur. Chaque client sollicite les quatre variantes du bean de service Web AddressBook déployé dans le serveur. Les beans de service Web AddressBook renvoient une valeur fixe et ne nécessitent pas de connexion Internet pour s'exécuter.
Exécution de la version J2SE simple du client d'AddressBook |
Exécution de la version application J2EE du client d'AddressBook |
Le client version J2SE montre le principe d'interrogation d'un service Web. A cet effet, il interroge le bean AddressBook afin d'obtenir une adresse de celui-ci. Vous trouverez son code source dans le répertoire racine_profil/samples/src/WebServicesSamples/Clients/simpleClients/samples/address.
Le fichier AddressBook.wsdl doit se trouver dans le répertoire courant au moment où vous exécutez AddressBookClient. Extrayez le fichier AddressBook.wsdl de l'archive simpleClients.jar et placez-le dans le répertoire où vous comptez exécuter l'exemple. Vous trouverez le fichier simpleClients.jar dans le répertoire racine_installation/samples/lib/WebServicesSamples.
Le client J2SE effectue deux boucles sur chaque bean de service Web AddressBook déployé sur le serveur. Au cours de la première boucle, il appelle la méthode getPort afin d'obtenir un port unique pour chaque bean du modèle d'application. Le client appelle la méthode getAddressFromName sur chaque port. La seconde boucle démarre arbitrairement avec l'un des ports obtenus, puis elle s'exécute et définit l'adresse de point de contact (endpoint) sur chacune des quatre valeurs possibles. Le client appelle la méthode getAddressFromName sur chaque port.
Pour des instructions plus générales sur l'appel d'un client WebSphere, reportez-vous à la rubrique relative au développement d'un code de client d'application partiel dans le Centre de documentation.
Pour exécuter la version J2SE simple du client d'AddressBook à partir
d'un serveur d'applications WebSphere, procédez comme suit, en tenant compte de votre
système d'exploitation :
C:\>"%JAVA_HOME%\bin\java" %WAS_LOGGING% -classpath "%WAS_CLASSPATH%;%WAS_HOME%\samples\lib\WebServicesSamples\simpleClients.jar;%WAS_HOME%\runtimes\com.ibm.ws.webservices.thinclient_7.0.0.jar" samples.address.AddressBookClient >> Querying address for 'Purdue Boilermaker' using port AddressBookW2JE >> Response is: 1 University Drive West Lafayette, IN 47907 Phone: (765) 555-4900 >> Querying address for 'Purdue Boilermaker' using port AddressBookJ2WE >> Response is: 2 University Drive West Lafayette, IN 47907 Phone: (765) 555-4900 >> Querying address for 'Purdue Boilermaker' using port AddressBookJ2WB >> Response is: 3 University Drive West Lafayette, IN 47907 Phone: (765) 555-4900 >> Querying address for 'Purdue Boilermaker' using port AddressBookW2JB >> Response is: 4 University Drive West Lafayette, IN 47907 Phone: (765) 555-4900 >> >> Get port AddressBookJ2WB >> Set port AddressBookJ2WB's endpoint to http://localhost:9080/AddressBookW2JE/services/AddressBook >> Querying address for 'Purdue Boilermaker' >> Response is: 1 University Drive West Lafayette, IN 47907 Phone: (765) 555-4900 >> Set port AddressBookJ2WB's endpoint to http://localhost:9080/AddressBookJ2WE/services/AddressBook >> Querying address for 'Purdue Boilermaker' >> Response is: 2 University Drive West Lafayette, IN 47907 Phone: (765) 555-4900 >> Set port AddressBookJ2WB's endpoint to http://localhost:9080/AddressBookJ2WB/services/AddressBook >> Querying address for 'Purdue Boilermaker' >> Response is: 3 University Drive West Lafayette, IN 47907 Phone: (765) 555-4900 >> Set port AddressBookJ2WB's endpoint to http://localhost:9080/AddressBookW2JB/services/AddressBook >> Querying address for 'Purdue Boilermaker' >> Response is: 4 University Drive West Lafayette, IN 47907 Phone: (765) 555-4900 |
La version application J2EE du client d'AddressBook fonctionne sur le même principe que la version J2SE simple. Elle accède aux mêmes beans de service Web AddressBook, mais elle le fait à partir d'un conteneur de client de type application J2EE en utilisant la commande launchClient.
Le client J2EE effectue une boucle d'exécution sur chaque bean de service Web AddressBook déployé sur le serveur. Il utilise une commande JNDI lookup pour localiser le service Web AddressBook, puis il invoque la méthode getPort à plusieurs reprises afin d'obtenir un port unique pour chacun des quatre beans AddressBook. Le client appelle la méthode getAddressFromName sur chaque port.
Dans les étapes suivantes, la variable racine_installation symbolise la racine d'installation de WebSphere.
Pour exécuter la version application J2EE du client du service AddressBook à partir d'un serveur d'applications WebSphere,
procédez comme suit, en tenant compte de votre système d'exploitation :
C:\WebSphere\AppServer\samples>\WebSphere\AppServer\bin\launchClient \WebSphere\AppServer\samples\lib\WebServicesSamples\ApplicationClients.ear -CCjar=AddressBookClient.jar IBM WebSphere Application Server, Release 7.0 J2EE Application Client Tool Copyright IBM Corp., 1997-2008 WSCL0012I: Traitement des arguments de la ligne de commande. WSCL0013I: Initialisation de l'environnement J2EE Application Client. [3/29/06 14:47:51:062 CST] 0000000a W UOW=null source=com.ibm.ws.ssl.config.SSLConfig org=IBM prod=WebSphere component=Application Server thread=[P=269328:O=0:CT] CWPKI0041W: Au moins un magasin de clés utilise le mot de passe par défaut. WSCL0035I: L'initialisation de l'environnement pour J2EE Application Client est terminée. WSCL0014I: Appel de la classe com.ibm.websphere.samples.webservices.addr.AddressBookClient du client d'application >> Querying address for 'Purdue Boilermaker' using port AddressBookW2JE >> Response is: 1 University Drive West Lafayette, IN 47907 Phone: (765) 555-4900 >> Querying address for 'Purdue Boilermaker' using port AddressBookJ2WE >> Response is: 2 University Drive West Lafayette, IN 47907 Phone: (765) 555-4900 >> Querying address for 'Purdue Boilermaker' using port AddressBookJ2WB >> Response is: 3 University Drive West Lafayette, IN 47907 Phone: (765) 555-4900 >> Querying address for 'Purdue Boilermaker' using port AddressBookW2JB >> Response is: 4 University Drive West Lafayette, IN 47907 Phone: (765) 555-4900 |
Pour plus d'informations sur le client et le traitement opéré par l'application, vous pouvez vous reporter aux notes techniques relatives à l'exemple Address Book ainsi qu'à son code source Java.