Vous êtes sur la page 1sur 15

Icare Design 2009

Web Services, Génération et utilisation


des Stubs

Mohammed Boukoutaya

All Rights Reserved © Icaredesign2009


Plan

1. Les prérequis
2. Génération des stubs
3. La documentation WSDL
4. L’utilisation des stubs.

All Rights Reserved © Icaredesign 2009


Les prérequis

All Rights Reserved © Icaredesign2009


 IDE : eclipse.
 AXIS (On utilisera la version 1.4) http://ws.apache.org/axis/
 JDK 1.6
 Les fichiers WSDL du web service à attaquer.
 La doc de WSDL.

All Rights Reserved © Icaredesign 2009


Génération des stubs

5 | Presentation Title | Month All Rights Reserved © Icaredesign 2009


Génération des Stubs

 Avec la version 1.4 il n’y a pas de plugin eclipse adapté.


 La génération des Stubs est manuelle.
 En entrée un fichier wsdl
 WSDL2JAVA est une commande réalisée pour la version 2.0 de Axis. On l’a adapté pour la version 1.4 voir le fichier :
 Example d’utilisation :
 Cd $AXIS_HOME
 wsdl2java -o c:\test -p nomDuPackage c:\monfichierWsdl.wsdl
-o repertoire de generation
-p : le package de génération des classes java.
Le nom du fichier WSDL source

All Rights Reserved © Icaredesign 2009


Génération des Stubs

 Les classes générées représentent le


service web avec ses différentes
méthodes et fonctionnalités.
 Les classes principales sont :
 ServiceNamePortSoapBindingStub 
 ServiceNameService .
 ServiceNameServiceLocator:

All Rights Reserved © Icaredesign 2009


Génération des Stubs

 ServiceNamePortSoapBindingStub : Cette classe représente le squelette coté


client. Elle regroupe l’ensemble des méthodes définit par le fichier WSDL. Ces
méthode permettent d’attaquer le service web.

 ServiceNameService : C’est une interface qui représente le service web. Elle


est implémentée dans la classe ServiceNameServiceLocator.

 ServiceNameServiceLocator: Elle permet d’instancier le service, de positionner


son adresse, l’utilisateur et le mot de passe en cas de besoin, le numéro de
port … etc. pour attaquer le service correctement. Cette classe est utilisée
dans la classe : ServiceNamePortSoapBindingStub 

All Rights Reserved © Icaredesign 2009


La documentation WSDL

9 | Presentation Title | Month All Rights Reserved © Icaredesign 2009


ApiFrameWork

 Consulter la documentation de l’apiFrameWork


 Cliquez ici

All Rights Reserved © Icaredesign 2009


L’utilisation des stubs.

11 | Presentation Title | Month All Rights Reserved © Icaredesign 2009


Importation des classes dans Eclipse.

 Créer un nouveau projet Java sous eclipse,


 Importer les classes générées dans le projet.

All Rights Reserved © Icaredesign 2009


Exemple d’utilisation AlcServiceLocator

GetServicesInfoRequest getServicesInfoRequest = new GetServicesInfoRequest();

getServicesInfoRequest.setAwaitedVersion(AwaitedVersion);
getServicesInfoRequest.setRequester(requester);
getServicesInfoRequest.setTags(tags);

AlcLocalizationServiceLocator alc = new AlcLocalizationServiceLocator();

AlcLocalizationPortSoapBindingStub stub =
new AlcLocalizationPortSoapBindingStub
(new java.net.URL("http://"+Config.ICS_SERVER_IP+ Config.LOCALIZATION_SERVICE_URL),
alc);

GetServicesInfoResponse serviceInfoResponse = stub.getServicesInfo(getServicesInfoRequest);

All Rights Reserved © Icaredesign 2009


Travaux Pratiques

Implémentation d’une classe pour faire l’authentification. Avec


ApiFrameWork

All Rights Reserved © Icaredesign 2009


www.icaredesign.com

15 | Presentation Title | Month All Rights Reserved © Icaredesign 2009

Vous aimerez peut-être aussi