INSTITUT SUPERIEUR DES ETUDES TECHNOLOGIQUES
DE SFAX
Département Technologies de Informatique
SOA -TD02
Développer un service Web SOAP avec JAX-WS
Objectifs
Développer déployer un Service Web en JAVA avec l’API JAX-WS
Définir un service web SOAP
Manipuler une liste d’objets à distance
A. Créer le service WEB
1. Reprendre le projet «serveurSOAP».
2. Ajouter la classe «Produit» :
package [Link] ;
import [Link];
import [Link];
import [Link];
public class Produit implements Serializable {
@Override
public String toString() {
return "Produit [id=" + id + ", designation=" + designation + ",
prix=" + prix + ", quantite=" + quantite + ", dateAchat=" + dateAchat +
"]";
}
private Long id;
private String designation;
private double prix;
private int quantite;
private static final long serialVersionUID = 1L;
private [Link] dateAchat;
public [Link] getDateAchat() {
return dateAchat;
}
public void setDateAchat([Link] dateAchat) {
[Link] = dateAchat;
}
SOA – TD02- Développer un service Web SOAP avec gestion d’objets – Mohamed ZAYANI Page 1
public Produit() {
super();
}
public Long getId() {
return [Link];
}
public void setId(Long id) {
[Link] = id;
}
public String getDesignation() {
return [Link];
}
public void setDesignation(String designation) {
[Link] = designation;
}
public double getPrix() {
return [Link];
}
public void setPrix(double prix) {
[Link] = prix;
}
public int getQuantite() {
return [Link];
}
public void setQuantite(int quantite) {
[Link] = quantite;
}
}
3. Ajouter l’interface suivante :
package [Link];
import [Link];
public interface ProduitServiceInterface {
public Produit addProduit(Produit p);
public Produit updateProduit(Produit p);
public void deleteProduit(Long id);
public Produit getProduit(Long id);
public List<Produit> getAllProduits();
}
SOA – TD02- Développer un service Web SOAP avec gestion d’objets – Mohamed ZAYANI Page 2
4. Définir une classe nommée «ProduitService» qui implémente l’interface
ci-dessus et déclare un service web nommé «ProduitSW».
Le service web «ProduitSW» permet de gérer des produits dans un objet
«HashMap » déclaré comme suit :
HashMap<Long, Produit> listeProduits =
new HashMap<Long, Produit >();
5. Générer le fichier wsdl et les classes proxys
6. Publier le service web «ProduitSW» avec l’url suivante :
[Link]
7. Visualiser le fichier wsdl du service web «ProduitSW» avec le
navigateur web
8. Tester les fonctionnalités du service «ProduitSW» avec SoapUI.
9. Dans le projet client, générer les proxy côté serveur en utilisant
la commande DOS suivante sous le dossier «src» :
wsimport -d ../bin -s . [Link]
10. Invoquer les fonctionnalités du service web «ProduitSW» dans
une classe «GestionProduitClient » dans le package « [Link] ».
(de préférence sous forme d’un menu avec choix)
Exemple d’exécution :
1-Ajouter un produit
2-Supprimer un produit
3-Modifier un produit
4-Affichier tous les produits
5-Quitter
Donner votre choix :
SOA – TD02- Développer un service Web SOAP avec gestion d’objets – Mohamed ZAYANI Page 3