Développement de Services Web en Java
Durée : | 4 jour(s) |
Tarif : | Consultez-nous |
DEMANDE DE DEVIS SANS ENGAGEMENT - CLIQUEZ ICI
La formation s'appuie par défaut sur l'IDE Eclipse et le serveur d'applications Tomcat.
La formation peut être réalisée avec un autre IDE (NetBeans, IBM WSAD/RAD) et un autre serveur d'applications (JBoss, GlassFish, WebSphere, WebLogic).
La formation peut être réalisée avec un autre IDE (NetBeans, IBM WSAD/RAD) et un autre serveur d'applications (JBoss, GlassFish, WebSphere, WebLogic).
Public :
- Développeurs Java SE et/ou Java EE.
Objectifs :
- Comprendre les principes de développement des Services en Java
- Développer des applications Java mettant en œuvre et/ou consommant des Services Web SOAP et des Services REST.
- Déployer les Services sur un serveur d'applications.
Pré-requis :
- Avoir impérativement suivi le cours " T449-010 - XML et technologies associées (DTD/XSD, XPath, XSLT, …) ", ou connaissances équivalentes.
- Avoir impérativement suivi les cours " T443-010 - Programmation Java (Java SE) - Niveau 1 " et " T443-020 - Développement Web Java EE ", ou avoir les connaissances équivalentes.
Rappels fondamentaux sur XML
- Concepts de document
-
- Document bien formé et document valide
- Les applications d'XML
-
- Analyse, transformation (XSLT), formatage (XSL-FO)
- Les modèles de données : XML Schema.
- Validation de données : DTD, XML Schema
Introduction aux Services Web SOAP
- Rappels sur les architectures n-tiers et les composants distribués
- Inconvénients et limites du développement à base de composants distribués
- Principes et objectifs des Services Web SOAP
-
- Avantages et limitations
- Les technologies des Services Web SOAP
-
- SOAP, WSDL, UDDI
- Vers une architecture orientée service (SOA)
- Le standard WS-I et les extensions WS-*
Introduction aux architectures REST
- Les concepts fondamentaux de REST (REpresentational State Transfer)
- Utilisation de REST dans une architecture informatique.
- Architecture client/serveur HTTP.
-
- Structure d'une requête et d'une réponse HTTP.
- L'identification des ressources par URI.
- SOAP vs. REST
- Les formats de données utilisables
-
- XML, HTML, JSON, ATOM…
Développement de Services Web SOAP en Java
- Java et le langage XML
-
- API d'analyse et de transformation : JAXP, DOM, SAX
- Structure des programmes Java utilisant XML
- Java et les Services Web
-
- JAX-RPC, JAX-WS, la norme JSR-109
- Les variations du développement en fonction du type de conteneur Java EE
-
- Moteur SOAP intégré ou moteur SOAP autonome
- Panorama des moteurs SOAP (Axis, CXF) et leur configuration
- Services Web JAX-RPC (J2EE 1.4) et JAX-WS (Java EE 5)
-
- Différence dans le processus de développement
- Écriture de composants Java destinés à être invoqués en tant que Services Web
-
- Contraintes de développement
- Choix des types de composants Java (JavaBeans, EJB, …)
- Génération des contrats WSDL pour les composants Java
- Structure et principe des documents WSDL
- Utilisation d'outils pour la génération WSDL/Java et Java/WSDL
- Anatomie des messages SOAP
- Gestion des erreurs Java (Exceptions) avec SOAP Fault
- Fonctionnalités avancées
-
- Développement de Services SOAP asynchrones
- Gestion des pièces jointes dans les messages SOAP
- Publication de Services Web dans les services UDDI
-
- Notion de Services Web dynamiques et statiques
Écriture de clients de Services Web SOAP
- Génération de classes de proxy à partir des contrats WSDL
- Utilisation du proxy pour le développement du client
Déploiement de Services Web SOAP
- La sécurisation des Services Web
-
- Authentification, autorisation, cryptage, WS-Security
- Packaging des applications Services Web
- Publication de Services Web sur un serveur d'applications
Développement de Services REST en Java
- Présentation de JAX-RS
-
- Présentation de la spécification JAX-RS.
- Les annotations JAX-RS.
- Implémentation de référence de JAX-RS : Jersey
-
- Présentation du projet Jersey.
- Développement d'une classe ressource.
-
- Configuration de Jersey
- Mise en œuvre des annotations JAX-RS
- Utilisation des formats de données (XML, Text, JSON, …)
Les clients REST
- Le client le plus simple : le navigateur Web
- Une application Java cliente
-
- Emission de requêtes HTTP
- L'API cliente de Jersey
- Une alternative : la bibliothèque Commons HTTP Client
Déploiement d'un service REST basé sur Jersey.
- Les problématiques liées à la sécurité des services.
- Sécurisation des services REST avec les API de sécurité Java EE
- Publication d'un service REST