Catalogues Formations

Primes et subsides




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).

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.

Contenu pédagogique

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