User Tools

Site Tools


sysrep:tp3

This is an old revision of the document!


Exo Web Services

Il s'agit d'écrire un service web “AccountService” qui représente un service de compte banquaire offrant les opérations suivantes :

public interface Account {
  public void deposit(float amount);
  public void withdraw(float amount);
  public float balance();
}

Ce service devant conserver un état, il n'est pas possible d'utiliser un service Web de type JWS dans ce cas :-( Il va falloir réaliser un déploiement de type WSDD.

1) Environnement


Editez le fichier “env.sh” et positionnez la variable ROOT comme il faut. Puis charger l'environnement Tomcat/Axis avec ce script.

2) Implantation du service web


Implantez trivialement l'interface “Account” dans la classe “AccountService”. Compilez votre service.

$ javac AccountService.java

Puis installez votre service web dans Axis :

$ cp AccountService.class $CATALINA_HOME/webapps/axis/WEB-INF/classes/

N'oubliez pas de rédémarrer le serveur web :

$ $CATALINA_HOME/bin/shutdown.sh ; $CATALINA_HOME/bin/startup.sh

3) Déploiement du service web


Editez maintenant les fichiers WSDD pour le déploiement “deploy.wsdd” et “undeploy.wsdd”. Vérifiez leur contenu.

Nota Bene : La ligne importante dans ce fichier est celle qui régit la durée de vie du service web (scope). Par défaut, celle-ci est réduite à la durée de vie d'une requête (value=“request”) ; mais on peut l'augmenter à la durée de vie de la session (value=“session”) ou de celle du serveur (value=“application”).

Pour effectuer le déploiement :

$ java org.apache.axis.client.AdminClient -h localhost -p 8080 deploy.wsdd 

Après cela, le service web doit être visible à l'URL suivante :

Le service web est normalement accessible à l'URL suivante :

Pour terminer le service web, il suffit de taper :

  java org.apache.axis.client.AdminClient undeploy.wsdd

4) Programmation du client


En vous inspirant de HelloWorldClient.java, écrire un client Java testant votre service.

5) Bonus


Pour terminer, proposez une interface Web à base de Servlet/JSP permettant d'utiliser votre service web.

sysrep/tp3.1352894141.txt.gz · Last modified: 2024/03/18 15:05 (external edit)