présentation Génération de Stubs AXIS 1.4 et 2.4

Preview:

Citation preview

All Rights Reserved © Icaredesign2009

Mohammed Boukoutaya

Web Services, Génération et

utilisation des Stubs

Icare Design 2009

All Rights Reserved © Icaredesign 2009

Plan

1. Les prérequis

2. Génération des stubs

3. La documentation WSDL

4. L’utilisation des stubs.

All Rights Reserved © Icaredesign2009

Les prérequis

All Rights Reserved © Icaredesign 2009

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.

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

Génération des stubs

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

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:

Génération des Stubs

All Rights Reserved © Icaredesign 2009

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 

Génération des Stubs

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

La documentation WSDL

All Rights Reserved © Icaredesign 2009

ApiFrameWork

Consulter la documentation de l’apiFrameWork

Cliquez ici

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

L’utilisation des stubs.

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

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

www.icaredesign.com

Recommended