Les services web conformes au style d’architecture REST établissent une interopérabilité entre les ordinateurs sur Internet. Vous pourrez compléter vos connaissances REST et développer en Java avec JAX-RS des solutions complètes de type RESTful. Vous étudierez notamment la spécification WADL, JSON et OAuth.

Description

Durée : 28 heures
Modalités techniques d’évaluation : Évaluation des connaissances par QCM, évaluation des compétences au travers de travaux pratiques et de cas d’études. Contrôle de l’acquisition des connaissances et des compétences pendant la formation par le formateur.
Moyens pédagogiques : Apports théoriques réalisés en classe et complétés par de nombreux travaux pratiques permettent aux participants de disposer d’une expérience concrète. A l’issue des sessions magistrales, réalisation de cas d’études tutorés.

Objectifs pédagogiques

À l’issue de la formation, le participant sera en mesure de :

  • Maîtriser l’Installation de Jersey
  • Invoquer un service RESTful en Java
  • Manipuler des données JSON en Java
  • Sécuriser un service REST avec JAX-RS

Travaux pratiques

PROGRAMME DE FORMATION

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.