Comprendre le besoin.
- Architecture JEE : multi-tiers, composants distribués
- Architecture orientée service (SOA) : composantes, technologies
- Présentation des Web Services (WS) : fonctionnement, intérêt, interopérabilité
- Technologies : protocole SOAP, Architecture REST
- Plates-formes à services web
- Choix de l'implémentation : Axis, CXF, JBossWS, Metro...
- Liste des API Java.
Atelier : Installation de l'environnement de développement et d'exécution, choix d'une implémentation de WS, description d'un service
Manipuler du XML et du JSON en Java.
- Contexte d'utilisation du XML et du JSON dans les Web Services
- Structure d'une requête/réponse SOAP
- Rappels des notions fondamentales du XML : prologue, éléments et attributs, espaces de noms
- Les schémas (XSD)
- Parseurs XML : SAX, DOM
- Push parsing et pull parsing (StAX)
- APIs java pour le parsing et la transformation XML
- Mapping xml-objet avec JAXB
- Structure JSON (JavaScript Object Notation)
- Java API for JSON Processing.
Atelier : Manipuler des données XML via les API SAX, DOM et JAXB. Traiter les informations XML échangées via le protocole SOAP.
Implémenter et interroger des services web SOAP.
- Protocole SOAP : description, structures
- Gestion des erreurs SOAP Faults
- Pièces jointes
- WSDL (Web Services Description Language) : structure, schémas associés
- Annuaires de services eb : UDDI, WS-Inspection, solutions de gouvernance OSS (Mule Galaxy)...
- Implémentation d'un web service SOAP avec JAX-WS
- Correspondance données XML/Java
- Plateformes disponibles : JAX-WS-RI, Axis, CXF,... Outils de génération de stubs serveur/client
- Apache SOAP
- Outils de test de services web
- Implémentation d'un client de service web
- Restriction des appels depuis un terminal mobile
- Gestion de l'authentification.
Atelier : Création et interrogation de services web SOAP.
Implémenter et interroger des services web REST.
- Architecture REST : composantes, méthodes d'appel
- Gestion des erreurs
- Java API for RESTful services
- Implémentations disponibles : Jersey, Restlet,...
- Développement de services RESTful
- Sérialisation Xml-Java, JSON-Java
- Envoi de paramètres, validations
- Type de réponse, format
- Déploiement d'un service RESTful
- Interrogation de web services REST.
Atelier : Création et interrogation de services web REST.
Déployer/Publier des web services.
- Annuaires de Web Services : rôle, types, restrictions
- API UDDI : principales classes
- Vue d'ensemble et architecture de JAXR : accès, interrogation.
Atelier : publication d'un web service sur un annuaire UDDI - recherche de services.
Sécuriser un web services.
- Niveaux de sécurité
- Gestion de l'authentification dans un web service
- Gestion des droits
- Cryptographie au niveau des messages
- Signatures de messages
- Standards de sécurité disponibles.
Atelier : sécurisation globale de l'application web.