Création d`un web service sous Eclipse/Tomcat
Transcription
Création d`un web service sous Eclipse/Tomcat
Création d’un web service sous Eclipse/Tomcat tutorial version 2 pour Windows 2 2 3 Téléchargement et mise en place des outils Dossiers d’installation Configuration d’Eclipse avec Tomcat/Axis 4 4 5 Développement Web Service Création du code métier Création du Web Service 6 7 8 Configuration du Web Service Lancement du Web Service Test du Web Service avec le Web Service Explorer 9 10 11 Partie Cliente Création de la classe principale Appel du service 12 12 13 14 15 Deploiement du Web Service Export WAR Configuration du serveur Apache Tomcat autonome. Vérification de la présence du service Export du client et test final David Durand - D314 : Web Services 1 Téléchargement et mise en place des outils La réalisation de ce projet de Web-Service repose sur l’utilisation de trois outils : • L’IDE Eclipse Galileo J2EE : http://eclipse.org/downloads/ La version standard peut également être utilisée, mais elle nécessite l’installation de plugins supplémentaires (Eclipse WTP http://www.eclipse.org/webtools/releases/3.1.1/ ) • Le serveur d’applications Apache Tomcat 6. La version actuelle est disponible à l’adresse http://tomcat.apache.org/download-60.cgi (prendre la version zip) • Le moteur de Web-services Apache Axis2, version 1.5.1 Release http://ws.apache.org/axis2/download/1_5_1/download.cgi (prendre la version «WAR») Dossiers d’installation Après décompression des archives téléchargées, on considère les dossiers de travail suivants : • c:\david : répertoire de travail principal • c:\david\workspace_WS : dossier des projets Eclipse; • c:\david\apache-tomcat-6.0.20 : dossier d’installation de Tomcat • c:\david\axis2-1.5.1 : dossier d’installation d’Axis Ces noms de dossiers sont à adapter selon le système utilisé. David Durand - D314 : Web Services 2 Configuration d’Eclipse avec Tomcat/Axis Dans la fenêtre de préférence d’Eclipse, configurer la partie Serveur et Web Services comme sur la figure suivante : David Durand - D314 : Web Services 3 Développement Web Service Création du code métier L’approche Bottom-up consiste à partir d’un code existant pour l’exposer en tant que Web-Service. On crée ici un simple projet Java nommé LibrairieMath, dans lequel on ajoute une classe math.Math : David Durand - D314 : Web Services 4 Création du Web Service A partir de la classe math.Math, utiliser le menu contextuel pour générer le Web Service associé. Un nouveau projet «WS_exemple1_start» sera créé : David Durand - D314 : Web Services 5 Configuration du Web Service L’assistant vous propose ensuite de sélectionner les méthodes exposées par le Web-Service. Dans notre exemple, nous n’avons qu’une seule méthode : David Durand - D314 : Web Services 6 Lancement du Web Service A l’étape suivante, l’assistant vous propose de démarrer le serveur Tomcat configuré dans Eclipse. il est possible que votre système ou votre pare-feu vous demande l’autorisation de démarrer un logiciel qui écoute sur un port. Après confirmation et fermeture de l’assistant, le serveur Tomcat est démarré dans Eclipse : David Durand - D314 : Web Services 7 Test du Web Service avec le Web Service Explorer Dans le projet généré, utiliser le menu contextuel sur le fichier Math.wsdl tester le service. Un formulaire vous est proposé pour appeler la méthode add, en lui passant des paramètres. Après soumission du formulaire, le résultat s’affiche dans la fenêtre de statut. David Durand - D314 : Web Services 8 Partie Cliente Nous créons maintenant dans un projet séparé le code client utilisé pour l’appel au service. Toujours à l’aide du menu contextuel utilisé sur Math.wsdl, générer le client comme sur la figure suivante, sans oublier de préciser le nom du projet : David Durand - D314 : Web Services 9 Création de la classe principale Dans le projet nouvellement créé, ajouter une classe Java. Dans le code suivant, MathServiceLocator est un objet vous mettant en relation avec le service math.Math . Il contient entre autre l’adresse utilisée pour localiser le service. Sa méthode getMath() renvoie un proxy vers le service, qui va se charger de lui transmettre les appels. David Durand - D314 : Web Services 10 Appel du service Lancer la classe MainClient nouvellement créée. Le résultat de l’opération s’affiche dans la console. (Ne pas tenir compte des messages d’avertissement signalant l’absence de certaines librairies, nous n’en avons pas besoin) David Durand - D314 : Web Services 11 Deploiement du Web Service Pour le moment, tout a été testé dans Eclipse, il s’agit maintenant de tester notre service dans un serveur autonome. Export WAR Sélectionner le dossier racine du projet Web Service, et utiliser le menu contextuel pour Exporter... sous la forme d’une Web Archive. Choisissez le dossier webapps de tomcat pour enregistrer l’archive. David Durand - D314 : Web Services 12 Configuration du serveur Apache Tomcat autonome. Pensez à arrêter le serveur Tomcat d’Eclipse avant les prochaines étapes. Configurez - si ce n’est pas déjà fait - la variable d’environnement système JRE_HOME pour qu’elle pointe sur le dossier d’installation de votre JRE. Tomcat a besoin de cette variable pour démarrer : David Durand - D314 : Web Services 13 Vérification de la présence du service Au démarrage de Tomcat, celui-ci a automatiquement chargé le fichier WAR présent dans son dossier webapps. On doit donc pouvoir tester le service directement dans le navigateur, en utilisant une adresse de la forme http://www.localhost:8080/NOM_DU_PROJET/services/Math Il est également possible de tester directement l’appel d’une méthode de notre service à partir de la barre d’adresse. On obtient alors la réponse SOAP contenant le résultat. David Durand - D314 : Web Services 14 Export du client et test final Dans Eclipse, exporter le projet client de manière à obtenir un JAR exécutable. Exécutez enfin le fichier JAR obtenu pour tester le service David Durand - D314 : Web Services 15
Documents pareils
Applications Réparties TD 4 Web Services en Java - Jean
notamment de générer automatiquement le fichier WSDL à partir d'une classe java et le code nécessaire à l'appel
du service web.
Pour son utilisation, Axis nécessite un J.D.K. 1.7 minimum et un cont...