Rappels sur REST et JAX-RS
- Rappels sur les concepts Representational State Transfer et architecture RESTful.
- Rappels sur l'API JAX-RS.
- Rappels sur XML et JAXB.
Travaux pratiques
Installation de Jersey, développement d'une classe ressource. Développement d'un service complet.
Invocation d'un service RESTful en Java
- Utiliser l'API Java de base pour récupérer une ressource.
- Utiliser l'API cliente de Jersey pour invoquer un service RESTful.
- Jakarta Commons HTTP Client.
Travaux pratiques
Invocation de services RESTful par diverses méthodes en Java.
Description d'un service REST avec WADL ou WSDL
- Présentation de la spécification Web Application Description Language (WADL).
- Positionnement par rapport à WSDL 2.0, utilisable avec des services REST.
Travaux pratiques
Analyse d'une description WADL de services RESTful. Utilisation de l'outil wadl2java.
JavaScript Object Notation
- Intérêt des flux JSON dans les architectures RESTful.
- Manipulation de données JSON en Java.
Travaux pratiques
Développement d'un service RESTful retournant un flux JSON. Invocation du service et parsing du résultat en Java.
Sécurisation d'un service REST
- Rappels des possibilités d'action au niveau transport HTTP.
- Présentation du protocole OAuth permettant une authentification sur Internet, utilisé par Google, Flickr, Yahoo...
- Mise en oeuvre avec JAX-RS.
Travaux pratiques
Sécurisation de services REST avec OpenAM, OAuth et JAX-RS.
Eléments d'architecture
- Les différentes possibilités d'emploi de REST dans une architecture ouverte.