Ce TP est à rendre pour le 24/10/2012, à raison d'un rendu par binôme.
URL de rendu SPIRAL: http://spiralconnect.univ-lyon1.fr/spiral/spiral.html#/activities/goto_folder/1825947
test-services-soapui-project.xml
dans lequel on aura ajouté les tests des services développésservices
mis à jour avec les services supplémentaires à développer dans le TP.L'objectif de cette partie consiste à déployer un service SOAP de location de DVDs. Dans un premier temps on récupérera la dernière version des sources “énoncé” de TIW5 en clonant le dépôt de la forge:
hg clone https://forge.univ-lyon1.fr/hg/inf2018m-2012-tpbase
En plus d'une implémentation du modèle du TP1 et l'implémentation du service exemple du TP2, le projet contient à présent un sous-projet services
. Ce projet est prévu pour être déployé sur JBoss 7.11) et s'appuie sur une datasource java:jboss/datasources/EtudiantDS
. Cette dernière doit être déployée dans le serveur en déployant le driver postgresql et la description de la dite source (etudiant-ds.xml).
Le projet services
contient deux exemples de services SOAP déployés:
web.xml
2), pas de fichier de configuration. Peu de dépendance maven aussi, les dépendances “runtime” étant fournies par le serveur d'application.test-services-soapui-project.xml
contient une requête pour chacun de ces services.Mettre à jour le modèle pour y intégrer une notion d'exemplaire d'un film, qui peut être loué. Créer ensuite un service avec une opération de location, prenant en argument le titre et l'année du film à louer et qui renvoie le prix de la location et le numéro de l'exemplaire obtenu. Y ajouter une opération permettant de rendre un exemplaire emprunté.
Créer un test soapUI pour votre service.
Similairement au cas SOAP, le projet services
contient une implémentation exemple d'un service REST. La classe RestApplication
est juste utilisée pour activer et configurer la gestion de jax-rs via RESTeasy, ce dernier étant fourni avec JBoss. La classe CoucouService
implémente un service qui sera déployé via REST. Analyser les différentes annotations3) et comparer avec les requêtes REST de test-services-soapui-project.xml
.
Reprendre la fonctionnalité du service exemple du TP2 et en faire un service REST. On fera traitera les méthodes GET, PUT, POST et DELETE en essayant de rester au maximum fidèle à la sémantique de celles-ci. On pourra s'inspirer de code du service exemple, en faisant attention aux points suivants:
services
utilise une mécanique plus JEE, en particulier avec des composants EJB.Créer des tests soapUI pour vos services.