L'assistant de service Web vous aide à créer un nouveau service
Web. Une fois votre service Web déployé, l'assistant vous aide à générer le proxy de client et l'exemple d'application pour tester le service Web. Lorsque vous
avez terminé le test, vous pouvez publier votre service Web dans un
registre métier UDDI à l'aide de l'assistant d'exportation.
Avant de commencer
- 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.
- Créez ou importez un bean dans le dossier source Java™ d'un projet Web ou d'un projet Java.
Pour procéder à l'importation, sélectionnez le dossier Ressources Java : src, et dans le menu Fichier, sélectionnez , puis accédez à l'emplacement de votre package.
Pourquoi et quand exécuter cette tâche
Pour créer un service Web depuis un bean avec l'environnement d'exécution IBM® WebSphere JAX-WS :
Procédure
- Passez à la perspective Java EE (Fenêtre > Ouvrir la perspective > Java EE).
- Dans la vue Explorateur d'entreprise, sélectionnez le bean à créer ou importer dans le dossier source de votre projet Web.
- Cliquez sur Fichier > Nouveau > Autre. Sélectionnez Services
Web pour afficher les différents assistants de services Web. Sélectionnez l'assistant de services Web. Cliquez sur Suivant.
- Dans la page Services Web, sélectionnez Service Web de bean Java ascendant comme type de service Web. En option, vous pouvez effectuer les opérations suivantes :
- Faites glisser le curseur à gauche de l'illustration pour indiquer jusqu'à quelle étape
du développement du service Web vous souhaitez aller. 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 service Web. Inclut des tâches telles que la création des packages qui contiendront 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 va héberger le service Web est associé à un fichier EAR lorsque le serveur d'application cible le demande.
- Déploiement : Création du code de déploiement pour le service.
- Installation : installation et configuration du module Web et des 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émarrage du serveur une fois le service installé sur le serveur.
- Test : Permet l'accès à différentes options de test du service, comme l'utilisation du client de service générique, l'explorateur de services Web ou les exemples de page JSP.
- Sélectionnez votre environnement d'exécution de serveur : le serveur par défaut s'affiche.
Pour déployer votre service sur un serveur différent, cliquez sur le lien du serveur et spécifiez 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électionnez votre environnement d'exécution de service Web : l'environnement d'exécution par défaut s'affiche. Pour déployer votre service dans l'environnement d'exécution IBM WebSphere JAX-WS, cliquez sur le lien de l'environnement d'exécution et sélectionnez-le dans la fenêtre qui s'ouvre.
- Sélectionnez le projet de service et le projet EAR de service : le projet sélectionné dans votre espace de travail s'affiche. Seuls les projets Web pour lesquels la facette Java 5.0, Java 6.0 ou Java 7.0 est activée sont pris en charge. Pour sélectionner un projet et un fichier EAR différents, cliquez sur le lien du projet ou entrez un nom et autorisez l'assistant à créer un projet pour vous. Vérifiez que le projet sélectionné comme projet Web client est différent du projet de service Web, sinon le service
sera 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.
- Pour créer un client, sélectionnez le type de proxy à générer et répétez les étapes 1 à 4 pour le client. Le client peut être créé ultérieurement en suivant les étapes décrites dans Génération d'un client de service Web à partir d'un document WSDL avec l'environnement d'exécution IBM WebSphere JAX-WS.
- Contrôle du 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.
- Configuration d'un service Web ascendant WebSphere JAX-WS :
Remarque : Si le bean comporte déjà une annotation @javax.jws.WebService, la plupart des zones de cette page sont désactivées car l'assistant n'a pas besoin de générer un bean délégué pour vous. Vous pouvez opter pour la génération d'un fichier WSDL seulement. Si vous n'avez ajouté que l'annotation @javax.jws.WebService à votre bean Java et voulez activer d'autres options telles que la liaison SOAP 1.2 ou MTOM, vous devez quitter l'assistant et supprimer l'annotation ou continuer de créer le service Web à l'aide de la documentation sur les annotations. L'assistant ne vous autorise pas à ajouter de nouvelles annotations à un bean existant partiellement annoté.
- Page de configuration d'interface WSDL WebSphere JAX-WS : Si, dans la page précédente, vous avez choisi de générer un fichier WSDL, cette page s'affiche et vous permet de configurer le fichier WSDL généré. Vous pouvez configurer :
- L'espace de nom cible WSDL
- Le nom de service WSDL
- Le nom de port WSDL
- Page Tester le service Web : si vous avez choisi de tester le service Web, sélectionnez la fonction de test pour le service Web généré et cliquez sur Lancer. Le service Web s'ouvre dans l'explorateur de services Web ou le client de service générique. Sélectionnez l'opération à tester, entrez les
informations requises, puis cliquez sur OK. Le résultat s'affiche dans le volet
Statut. Cliquez sur Suivant.
- Page de configuration d'un client de service Web WebSphere JAX-WS : si vous avez choisi de générer un client, vous pouvez spécifier les options suivantes pour le client dans cette page :
- Dossier de sortie : Il s'agit de l'emplacement où le code client est généré.
- Package cible : l'assistant du client de service Web génère plusieurs fichiers Java. Par défaut, il crée un package dont le nom repose 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 le client de service Web. Si cette option est sélectionnée, la page suivante de l'assistant vous permet de parcourir les fichiers de déclarations de liaisons personnalisées.
- Personnaliser le nom de classe du proxy client : sélectionnez cette case à cocher pour changer le mappage par défaut entre le nom de port et le nom de classe
de l'implémentation du service.
- Page Déclarations de liaisons personnalisées : si vous avez choisi de spécifier des fichiers de liaisons JAX-WS ou JAXB, vous pouvez rechercher les fichiers dans cette page.
- Page Configuration de la génération du proxy : pour chaque port défini, vous pouvez entrer un nom pour la classe de proxy ou accepter la valeur par défaut.
- Page Test du client du service Web :
- Tester le proxy généré : si cette option est sélectionnée, le client exemple est démarré dans un navigateur Web pour que vous puissiez tester la fonctionnalité.
- 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 doit se trouver 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 : sélectionnez cette option pour que le serveur soit démarré
automatiquement.
Résultats
Une fois le service Web créé, les événements
suivants se produisent selon les options sélectionnées :
- Si vous avez choisi de tester le proxy généré à l'aide de pages JSP de service Web, le proxy est lancé dans un navigateur Web à l'adresse URL suivante : http://localhost: port/
ProjetWebClient/sampleNomBean/
NomServiceWeb/TestClient.jsp Vous pouvez utiliser
cet exemple d'application pour tester le service Web en sélectionnant une
méthode, en entrant une valeur pour la méthode, puis en cliquant sur
Appeler.
Le résultat de la méthode s'affiche dans la fenêtre de
résultats.
- Si vous avez choisi de tester le proxy généré avec Universal Test Client, il est démarré dans une fenêtre de navigateur à une adresse URL similaire à la suivante : http://localhost:port/UTC/preload?object=PackageBean.ProxyServiceBean.
Sous Objets, développez le module de remplacement de proxy pour afficher les méthodes du service Web. Cliquez sur la méthode à tester, entrez une valeur dans la fenêtre Paramètres et cliquez
sur Appeler. Le résultat est généré automatiquement.
- 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, puis cliquez sur
OK.
Le résultat s'affiche dans
le volet Statut.
Restriction : Lors de la génération d'un service Web JAX-WS à partir d'un fichier classe qui dépend d'autres classes qui se trouvent dans des fichiers JAR distincts, le projet doit référencer ces fichiers JAR depuis les dépendances de module Java EE ou les bibliothèques utilisateur. L'utilisation de dépendances de module Java EE est possible lorsque les fichiers JAR se trouvent dans le projet EAR.
Lorsque les fichiers JAR se trouvent dans une bibliothèque partagée configurée dans WebSphere Application Server, vous devez utiliser une bibliothèque utilisateur afin de configurer le projet pour le développement avant de générer le service Web. Pour ajouter une bibliothèque utilisateur au projet :
- Cliquez avec le bouton droit de la souris sur le projet et cliquez sur.
- Cliquez sur .
- Créez une bibliothèque utilisateur et ajoutez-y votre fichier jar d'utilitaire.