Chapitre 4 - Les Services Web SOAP - Partie 2 [PDF]

  • 0 0 0
  • Gefällt Ihnen dieses papier und der download? Sie können Ihre eigene PDF-Datei in wenigen Minuten kostenlos online veröffentlichen! Anmelden
Datei wird geladen, bitte warten...
Zitiervorschau

Exercices

59

Exercice › Qu’elle est l’usage classique de HTTP ? › HTTP est-il classiquement un protocole d'appel de procédure distante (justifiez votre réponse) ? › Quelles sont les différentes méthodes offertes en HTTP ? › Quels avantages voyez-vous à la réalisation de communications SOAP en utilisant le protocole HTTP ? › Quels sont les avantages de l’utilisation de XML pour représenter la structure des messages échangés en SOAP ? 60

Exercice Préciser le nom de la méthode invoquée et les paramètres d’appel de ce message SOAP



FT35ZBQ

Åke Jógvan Øyvind 123456789099999 2005-02



61

Mise en pratique

63

Mise en Œuvre avec JAVA › Il existe trois méthodes différentes pour développer des services Web SOAP avec JAVA : – En utilisant l’API JAX-WS – Avec la méthode Bottom Up sous Eclipse – Avec le méthode Top Down sous Eclipse

64

Mise en pratique L’API JAX-WS

65

Mise en Œuvre avec JAVA : JAX-WS › JAX-WS permet de développer très simplement des services web en Java. › JAX-WS fournit un ensemble d'annotations pour mapper la

correspondance Java-WSDL. Il suffit pour cela d'annoter directement les classes Java qui vont représenter le service

web. 66

Mise en Œuvre avec JAVA : JAX-WS @WebService(serviceName="BanqueWS") Public class BanqueService { @WebMethod(operationName="ConversionEuroToTND") public double conversion(@WebParam(name="montant") double mt){ return mt*3.27; } @WebMethod public String test(){ return "Test"; } @WebMethod public Compte getCompte(){ return new Compte(1,7000); } @WebMethod public List getComptes(){ List cptes = new ArrayList(); cptes.add(new Compte(1, 7000)); cptes.add(new Compte(2, 9000)); return cptes; } }

67

Mise en Œuvre avec JAVA : JAX-WS › Une classe Java utilise des annotations JAX-WS afin de générer le document WSDL. › Le document WSDL est auto-généré par le serveur

d'application au moment du déploiement.

68

L’API JAX-WS pour les Web Services de JAVA › L’API JAX-WS est très simple : – Vous aurez juste à écrire le service désiré… – … amélioré par des annotations

› Vous n’aurez pas à gérer comment les requêtes SOAP sont traités › Juste vous aurez à vous concentrer à la logique du service

› Nous allons voir les annotations principales fournies par JAX-WS…

69

Développement d’un Web Service avec JAX-WS › Pour définir un Service Web, on utilise l’annotation @WebService @WebService public class CircleFunctions { public double getArea(double r) { return java.lang.Math.PI * (r * r);

} public double getCircumference(double r) { return 2 * java.lang.Math.PI * r; } }

70

Développement d’un Web Service avec JAX-WS › L’API JAX-WS fourni aussi l’annotation @WebMethod pour personnaliser les méthodes du Service Web : @WebMethod public double getArea(double r) { return java.lang.Math.PI * (r * r); }

72

Développement d’un Web Service avec JAXWS sous Eclipse › Créer un projet Web dynamique › Choisir le serveur Wildfly comme

Target runtime

75

Développement d’un Web Service avec JAXWS sous Eclipse › Créer la classe d’implémentation du service › Ajouter les annotations

76

Développement d’un Web Service avec JAXWS sous Eclipse › Lancer le service web sur le serveur Wildfly

77

Génération du fichier WSDL › Comment générer le fichier WSDL correspondant au Service Web créé ? – JAX-WS le fait pour vous !

› On peut retrouver le chemin dans l’output sur la console de eclipse

78

Développement d’un Web Service avec JAXWS sous Eclipse › Tester le service web avec l’explorateur web service

80

Développement d’un Web Service avec JAXWS sous Eclipse › Tester le service web avec l’explorateur web service

81

Consommer un Web Service avec JAX-WS › JAX-WS est une API qui peut être utilisé : – Du côté serveur pour définir des Web Services – Du côté client pour consommer des Web Services

› Les Web Services SOAP sont interopérable ! – Vous pouvez utiliser JAX-WS pour consommer un Web Service développer avec d’autres technologies

– Tous ce que JAX-WS a besoin est la localisation du fichier WSDL et les librairies JAX-WS

82

Consommer un Web Service avec JAX-WS › Un environnement de développement IDE comme Eclipse fournie des outils pour générer automatiquement le client Web Service.

83

Mise en pratique La méthode Bottom Up

84

Développement d’un Web Service avec la méthode Bottom up sous Eclipse › Créer un projet web dynamique › Choisir le serveur WildFly

comme Target Runtime › Choisir JavaSE-8 comme

« Execution environment » dans le Build Path

85

Développement d’un Web Service avec la méthode Bottom up sous Eclipse › Créer la classe qui implémente le service web

86

Développement d’un Web Service avec la méthode Bottom up sous Eclipse › Générer le service web Bouton droit classe d’implémentation /new/other/web services/web service

87

Développement d’un Web Service avec la méthode Bottom up sous Eclipse › Démarrer le serveur

88

Développement d’un Web Service avec la méthode Bottom up sous Eclipse › Monitoring du service web

89

Mise en pratique La méthode Top Down

90

Développement d’un Web Service avec la méthode Top Down sous Eclipse › Créer un projet web dynamique › Choisir le serveur WildFly

Comme Target Runtime › Choisir JavaSE-8 comme

« Execution environment » dans le Build Path

91

Développement d’un Web Service avec la méthode Top Down sous Eclipse › Importer le fichier wsdl dans le dossier WebContent › Générer le service web Bouton droit fichier wsdl /new/other/web services/web service

92

Développement d’un Web Service avec la méthode Top Down sous Eclipse › Démarrer le serveur › La classe d’implémentation

(AreaServiceSOAPImpl.java) apparait.

93

Développement d’un Web Service avec la méthode Top Down sous Eclipse › Changer les méthodes pour correspondre à l’implémentation souhaité

94

Développement d’un Web Service avec la méthode Top Down sous Eclipse › Créer le client web service › Sélectionner le fichier wsdl généré lors de la création du web service

(AreaServiceSOAP.wsdl) › File -> New -> Other... ->

Web Services -> `Web Service Client. 95

Développement d’un Web Service avec la méthode Top Down sous Eclipse › Changer le nom du projet client

96

Développement d’un Web Service avec la méthode Top Down sous Eclipse

97

Tester les services web SOAP › L’outil SoapUI

98