Ce cours (UE4 — Services Web, semestre 5) fait suite aux « Principes des services web » : après l’architecture et les standards, on passe à la réalisation. L’étudiant apprend à organiser un projet à base de services, à intégrer l’existant, puis à développer, tester et déployer des services SOAP et REST dans les deux grands écosystèmes industriels : Java / Jakarta EE (JAX-WS, JAXB, JAX-RS, Metro, Apache CXF et Axis2, serveurs GlassFish, WebLogic, WebSphere) et Microsoft .NET (ASMX, .NET Remoting, WCF, ASP.NET Core, Visual Studio, BizTalk). Dans une optique cybersécurité, chaque étape insiste sur le code sûr : validation des entrées, requêtes paramétrées, authentification, gestion des secrets et journalisation. Les exemples s’appuient sur des besoins réalistes au Niger : scolarité d’une école, services bancaires, téléservices administratifs.
Objectifs d’apprentissage
- Organiser une application multicanale à base de services et l’inscrire dans une démarche SOA.
- Intégrer un système existant (base de données, application héritée) derrière une façade de services.
- Développer, publier et consommer des services SOAP et REST en Java (JAX-WS, JAXB, JAX-RS).
- Développer, publier et consommer des services en .NET (WCF/CoreWCF, ASP.NET Core Web API).
- Choisir une plateforme d’exécution, mettre en place un cycle de tests (unitaires, contrat, charge, sécurité) et exploiter les services de façon sécurisée.
Prérequis
Programmation Java et C# orientée objet, SQL, cours « Principes des services web » (SOAP, WSDL, REST, WS-Security).
Plan du cours
- Leçon 1 — Architecture et organisation des développements à base de services Web
- Leçon 2 — Les services Web dans l’offre Java / Jakarta EE
- Leçon 3 — Les services Web dans l’environnement .NET
- Leçon 4 — Plateformes d’exécution, déploiement, tests et exploitation sécurisée
Modalités d’évaluation
Volume horaire : 20 h de CM, 10 h de TD, 10 h de TP, 40 h de travail personnel ; 4 crédits. Contrôle continu (40 % : TP Java et .NET notés sur livrables et grille de contrôle) et examen terminal (60 %).
Bibliographie
- Martin Kalin, Java Web Services: Up and Running, O’Reilly.
- Antonio Goncalves, Beginning Java EE 7, Apress.
- Juval Löwy, Programming WCF Services, O’Reilly.
- Eclipse Foundation, spécifications Jakarta XML Web Services, Jakarta XML Binding et Jakarta RESTful Web Services ; Microsoft Learn, documentation ASP.NET Core.
- OWASP, Application Security Verification Standard (ASVS).
