L'assistant de client de service Web vous aide à générer un proxy de bean Java™ et une application exemple. L'application Web exemple explique comment coder un fichier de proxy.
Avant de commencer
Prérequis :
- Si vous utilisez WebSphere Application Server, il est fortement recommandé de démarrer le serveur avant d'exécuter l'assistant de services Web car le démarrage de WebSphere Application Server peut prendre plusieurs minutes selon la vitesse de votre ordinateur. Pour démarrer le serveur, sélectionnez-le dans la vue Serveurs (Fenêtre > Afficher la vue > Serveurs), puis cliquez avec le bouton droit de la souris et sélectionnez Démarrer.
- Reconnaissez ou importez un document WSDL dans l'espace de travail. Vous pouvez utiliser un fichier WSDL qui contient un élément de service. Vous pouvez utiliser un fichier WSDL statique de votre espace de travail, un fichier WSDL qui se trouve à une adresse URL, ou si vous disposez d'un bean annoté agissant comme un service Web JAX-WS dans votre espace de travail, le fichier WSDL généré dynamiquement par l'environnement d'exécution de WebSphere Application Server Feature Pack for Web Services. Ce fichier WSDL se trouve à l'adresse URL suivante : http://localhost:port/nom_projet_service/nom_serviceService?wsdl. Par exemple, dans le carnet d'adresses, le service Web JAX-WS qui est créé dans le tutoriel et les exemples qui accompagnent Feature Pack for Web Services, le fichier WSDL dynamique se trouve à l'adresse URL suivante : http://localhost:9082/jwsAddressBook/AddressBookService?wsdl.
Restriction : Pour exécuter un client de service Web Java simple hors d'un conteneur J2EE (Java Platform, Enterprise Edition), vous devez générer le client de service Web dans un projet Java simple. L'assistant de services Web ne peut pas créer de projet Java simple. La forme la plus proche d'un projet simple qu'il peut créer est un projet d'utilitaire ; toutefois, l'exécution d'un client de service Web Java simple (sans conteneur) à partir d'un projet d'utilitaire n'est pas prise en charge. Vous devez créer un projet Java simple avant d'exécuter l'assistant de client de service Web.
Pourquoi et quand exécuter cette tâche
Pour générer un proxy de client
Java
et un exemple d'application à partir d'un document WSDL reconnu :
Procédure
- Passez à la perspective Java EE (Fenêtre > Ouvrir la perspective > Java EE).
- Cliquez sur Fichier > Nouveau > Autre. Sélectionnez Services Web pour afficher les divers assistants de services Web. Sélectionnez l'assistant Client de service Web. Cliquez sur Suivant.
- Page Services Web : sélectionnez le fichier WSDL que vous utilisez pour générer le client. En option, vous pouvez effectuer les opérations suivantes :
- Sélectionnez les stades de développement de client de service Web à effectuer à l'aide du curseur. Cette opération définit plusieurs valeurs par défaut dans les panneaux restants de l'assistant.
- Développement : développe la définition WSDL et l'implémentation du client de service Web. Inclut des tâches telles que la création des modules qui contiennent le code généré, les fichiers WSDL, les descripteurs de déploiement et les fichiers Java, le cas échéant.
- Assemblage : garantit que le projet qui héberge le client de service Web est associé à un fichier EAR lorsque le serveur d'application cible le demande.
- Déploiement : crée le code de déploiement du client.
- Installation : installe et configure le module Web et les fichiers EAR sur le serveur cible. Si des modifications des noeuds finaux du fichier WSDL sont requises, elles sont apportées à ce stade.
- Démarrage : démarre le serveur une fois que le client y a été installé.
- Test : permet l'accès à diverses options de test du service, comme l'utilisation de l'explorateur de services Web ou d'exemples de page JSP.
- Sélection du serveur : affichage du serveur par défaut.
Pour déployer
votre service sur un autre serveur, cliquez sur le lien de sélection d'un autre
serveur.
Cette tâche prend en charge les environnements d'exécution de serveur suivants :
- WebSphere Application
Server version 7.0 ou ultérieure
- WebSphere Application
Server Liberty Profile version 8.5.5
- Sélection de l'environnement d'exécution : affichage de l'environnement
d'exécution par défaut.
Pour déployer votre service dans un autre environnement
d'exécution, cliquez sur le lien de sélection d'un autre environnement
d'exécution.
- Sélection du projet de client : le projet sélectionné dans votre espace de travail est affiché. Pour sélectionner un autre projet et
un autre fichier EAR, cliquez sur le lien du projet. Vous pouvez sélectionner un projet Web, un projet EJB, un projet Java ou un projet de client d'application Java comme emplacement pour le code client. Vérifiez que le projet sélectionné
comme projet Web client est différent du projet de service Web, sinon le service
est remplacé par les artefacts générés du client.
Dans le cas des services Web JAX-WS, le service et le client peuvent partager le même
fichier EAR.
- Contrôler le service Web : le trafic du service Web est envoyé via le
moniteur TCP/IP, ce qui vous permet de surveiller le trafic SOAP généré par le
service Web et de tester la conformité de ce trafic à la norme WS-I. Vous pouvez aussi configurer manuellement un moniteur TCP/IP comme décrit dans la rubrique Utilisation
du moniteur TCP/IP pour tester les services Web.
- Page de configuration d'un client de service
Web WebSphere JAX-WS :
- Dossier de sortie : sélectionnez le dossier dans lequel les classes Java du client doivent être générées ou acceptez la valeur par défaut.
- Package cible : l'assistant du client de service Web génère plusieurs fichiers Java à partir du document WSDL spécifié. Par défaut, il crée un nom de package reposant sur l'espace de nom spécifié dans le fichier WSDL. Vous pouvez toutefois spécifier votre propre nom de package.
- Générer un client portable : si vous sélectionnez cette case à cocher, vous pouvez déplacer le code de votre client de service Web d'une machine à une autre ou d'une instance de WebSphere Application Server à une autre. Si cette option est sélectionnée, le document WSDL et le schéma XML ainsi que tous les autres documents WSDL dont il dépend sont copiés dans le projet de client sous WEB-INF/wsdl
et un élément file:relativeURL désignant cette copie est injecté dans le bloc d'initialisation statique de la classe de service JAX-WS.
- Activer l'appel asynchrone pour le client généré : si vous choisissez d'activer un client asynchrone, pour chaque méthode du service Web, deux méthodes supplémentaires sont créées. Il s'agit de méthodes d'interrogation et de rappel qui permettent au client de fonctionner en mode asynchrone.
- Spécifier des fichiers de liaisons JAX-WS ou JAXB : si vous avez créé des fichiers de liaisons personnalisées
JAX-WS ou JAXB, cochez cette case pour les utiliser afin de créer ce service Web.
- Personnaliser le nom de classe du proxy client : vous pouvez accepter le nom de proxy par défaut ou entrer le nom de votre choix.
- Générer un descripteur de déploiement de service Web : pour les services Web JAX-WS, les informations
de déploiement sont générées dynamiquement par l'environnement d'exécution ; les descripteurs de déploiement
statiques ne sont plus indispensables. Si vous sélectionnez cette case à cocher, ils seront tout de même générés..
- Autoriser les extensions de fournisseurs tiers : si vous sélectionnez cette case à cocher, l'option -extension est ajoutée à la commande wsgen ou wsimport.
L'option -extension indique si des extensions personnalisées doivent être activées ou acceptées pour les fonctionnalités qui ne sont pas définies par la spécification JAX-WS. L'utilisation des extensions peut donner lieu à des applications non portables ou non interopérables avec d'autres implémentations.
Pour des détails, voir les rubriques Commande wsgen pour les applications JAX-WS et Commande wsimport pour les applications JAX-WS disponibles dans le centre de documentation de WebSphere Application Server.
- Page Déclaration de liaisons personnalisées : Si vous avez choisi de fournir un fichier de liaisons JAX-WS ou JAXB dans la page précédente, vous pouvez accéder à son emplacement.
- Page Configuration de la génération du proxy : Si vous avez choisi de personnaliser le nom de classe du proxy du client, utilisez cette page pour
spécifier un nom de classe de proxy pour chaque port.
- Page Test du client du service Web :
- Tester le proxy généré : si cette option est sélectionnée, le client exemple est lancé dans un navigateur Web pour que vous puissiez tester la fonction.
- Sélectionnez votre fonction de test. Vous pouvez tester le proxy généré dans le client
de service générique ou dans l'explorateur de services Web. Vous pouvez
aussi opter pour la génération de pages JSP
JAX-WS 2.0..
- Dossier : si vous avez choisi de tester le proxy via une page JSP, vous pouvez
sélectionner le dossier dans lequel se trouve la page JSP ainsi que les
méthodes incluses dans la page JSP.
- Méthodes : sélectionnez les méthodes à exposer. Si vous avez choisi d'activer l'appel asynchrone, les méthodes asynchrones sont également répertoriées.
- Exécuter le test sur le serveur : démarre le serveur pour vous automatiquement.
- Cliquez sur Terminer. Si vous avez choisi de tester
le proxy, le client de test s'ouvre dans une fenêtre du navigateur.
Résultats
Le proxy de bean
Java
généré fournit une interface d'appel de procédure distante au service Web. L'exemple d'application Web illustre le mode de codage du fichier proxy.
Une fois que vous avez généré votre proxy client Java, vous pouvez tester les méthodes du service Web via le proxy à l'aide des exemples JSP de services Web,
ou l'Explorateur de services Web.
- Si vous avez choisi de tester le service Web avec l'explorateur de services Web, l'explorateur s'ouvre. Sélectionnez l'opération à tester, entrez les informations requises et cliquez sur OK. Le résultat s'affiche dans la sous-fenêtre Statut.
- Si vous avez choisi de tester un client léger Java, la sortie système de l'exécution de votre client léger Java s'affiche dans la vue Console.
Vous pouvez exécuter le client léger Java en cliquant sur Exécuter dans la boîte de dialogue Configurations d'exécution. En tant qu'application Java standard, le client utilise le fichier JAR de conteneur de l'environnement d'exécution du client léger WebSphere Application Server.