Université Claude Bernard Lyon 1 – M2 TI – TI 1
Dans ce TP, vous allez utiliser le framework Spring et certains des principaux projets de l'infrastructure Spring. Dans un premier temps, vous réaliserez quelque chose de similaire à ce que vous avez fait pendant le TP sur les EJB. pour cela, vous travaillerez à partir d'une version orientée-composants de votre application répertoire, c'est-à-dire comprenant plusieurs répertoires (conformes à la même interface), un annuaire, etc. Vous pouvez reprendre celle de la question sur les entity managers du premier TP ou vous inspirer de la version Web développée dans le TP EJB.
Dans cette section, vous allez utiliser les différents modules de Spring Framework, dont vous trouverez une documentation ici.
Créez un projet Forge et passez le projet de votre application en Spring Framework via la config Maven décrite ici.
Faites les manipulations suivantes pour que votre code puisse être utilisé par Spring Core Container :
Refactorez votre code en MVC pour qu'il fonctionne selon l'architecture Spring Web MVC.
Comme pour le TP d'implémentation de services de TIW5, faites en sorte que les répertoires soient exposés comme des ressources REST et que le client interroge l'application avec des pages statiques et de l'AJAX. Vous êtes libres d'utiliser CXF ou pas.
Utilisez Spring Test pour écrire des tests :
Utilisez Spring AOP pour créer un nouvel aspect chargé de valider les données du formulaire, notamment la forme des numéros de téléphone.
À l’aide de Spring Data, créez un DAO s’appuyant sur JPA pour implémenter la persistance des répertoires (cf. question entity manager du TP1).
À l’aide de Spring Security, utilisez l’authentification via OAuth pour faire en sorte que chaque utilisateur puisse accéder à son répertoire personnel.
Ce TP n'est pas à rendre, mais vous devez le terminer avant la fin de la séance suivante car vous en aurez besoin pour celui de microservices.