 -
Page 1
TP2 : Création et tests de services Web basés SOAP
Objectif du TP
  

Environnement de veloppement

IDE Netbeans
JDK 6 ou 7
Serveur TomEE Plus 1.7.1
Librairies : Spring 2.5.6
             

1. Création dun projet Maven
Télécharger le serveur TomEE plus1
Ajouter ce serveur à Netbeans en le renommant TomEE plus.
Cer une Maven Web application que vous nommerez « Spring_WS » : nouveau
projet
Maven
Web application et lui associer le serveur TomEE Plus. Maven est un
outil de construction de projets (build) open source veloppé par la fondation
Apache. Il permet de gérer des pendances vis-à-vis des bibliothèques nécessaires au
projet.
2. Création du service Web
     CalculService    
service (java class) « CalculServiceImpl ».
Pour créer le service Web, vous av CalculService » avec
 -          Déclarer la
méthode de interface annotée.
3. Configuration de Spring et des dépendances
Définir les dépendances2 de Jax-ws et Spring3 dans le fichier « pom.xml »
<!Jax-ws framework -->
<dependency>
<groupId>com.sun.xml.ws</groupId>
<artifactId>jaxws-rt</artifactId>
<version>2.2.7</version>
</dependency>
<!-- Spring framework -->
1 http://tomee.apache.org/download/tomee-1.7.1.html
2 https://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html
3 https://mvnrepository.com/artifact/org.springframework
I. Prise en main de JAX-WS Spring Web Services
 -
Page 2
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>${spring-version}</version>
<exclusions>
<exclusion>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>${spring-version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>${spring-version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>${spring-version}</version>
</dependency>
<!-- JAX-WS/Spring integration -->
<dependency>
<groupId>org.jvnet.jax-ws-commons.spring</groupId>
<artifactId>jaxws-spring</artifactId>
<version>1.8</version>
<exclusions>
<exclusion>
<groupId>org.springframework</groupId>
<artifactId>spring</artifactId>
</exclusion>
</exclusions>
</dependency>
Configurer le fichier « web.xml » (standard deployment descriptor) qui se trouve
sous Webapp/WEB-INF. Ce fichier contient la finition des servlets4.
<web-app>
<!-- this is for Spring -->
<listener>
<listener-
class>org.springframework.web.context.ContextLoaderListener</list
ener-class>
</listener>
<!-- these are for JAX-WS -->
<servlet>
<servlet-name>jaxws-servlet</servlet-name>
<servlet-
class>com.sun.xml.ws.transport.http.servlet.WSSpringServlet</serv
let-class>
4 https://jax-ws-commons.java.net/spring/
 -
Page 3
</servlet>
<servlet-mapping>
<servlet-name>jaxws-servlet</servlet-name>
<url-pattern>/add</url-pattern>
</servlet-mapping>
... if you deploy more services,
you might need more <servlet-mapping>s ...
</web-app>
Configurer le fichier « applicationContext.xml » qui est le fichier de configuration de
Spring5. Il doit se trouver sous sous Webapp/WEB-INF. Ce fichier va comporter les
espaces de noms, les imports de fichiers, la finition des beans et le endpoint.
Voici un exemple :
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:ws="http://jax-ws.dev.java.net/spring/core"
xmlns:wss="http://jax-ws.dev.java.net/spring/servlet"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
http://jax-ws.java.net/spring/core
http://jax-ws.java.net/spring/core.xsd
http://jax-ws.java.net/spring/servlet
http://jax-ws.java.net/spring/servlet.xsd">
<wss:binding url="/add" service="#addService" />
<wss:binding url="/sub">
<wss:service><!-- nested bean is of course fine -->
<ws:service bean="#myService" />
</wss:service>
</wss:binding>
<!-- this bean implements web service methods -->
<bean id="myService" class="foo.MyService" />
<!-- simplest definition only needs the class name -->
<ws:service id="addService" impl="foo.MyAddService"
handlers="#myHandler"/>
<bean id="myHandler" class="foo.MyHandler" />
4. ploiement de l’application
 du projet.
Vous allez ajouter un nouveau service qui réalise le produit de deux entiers et
reployer votre projet.
5. Test du service
Tester votre service avec SOAPUI. Quels noms portent les arguments ?
Ajouter les annotations cessaires à votre service.
5 http://cxf.apache.org/docs/writing-a-service-with-spring.html
 -
Page 4
              

Lister les vols selon un critère de recherche : , jour et
horaire de départ.
Fournir des opérations pour la gestion  servation pour un client donné.
1.           
 
2. 
o          

o           
          
rechercher un vol par son numéro.
o 
3. 
o 

o         

           

4. Déployer et Tester vos services.




II .Service Web de Réservation de vols avec Maven et Spring
III. Client des services Pays, aéroport et réservation
 -
Page 5
Etape 1 : Création d’un projet Java
 TripBookingClient »
         


Etape 2 : Conception de la couche d’affichage
 

Etape 3 : Création de la couche SOAP

Airport Information Web Service :
http://www.webservicex.net/New/Home/ServiceDetail/20
 http://www.webservicex.net/airport.asmx?WSDL
Country Details : http://www.webservicex.net/New/Home/ServiceDetail/17
WSDL : http://www.webservicex.net/country.asmx?WSDL
Etape 4 : Création de la couche XML (couche tier)
         -


1 / 5 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !