Résumé Ce stage aborde en profondeur toutes les utilisations de XML dans des applications Java. Les principales APIs sont présentées en détail et à chaque fois les travaux pratiques illustrent les cas d'utilisation de XML.
Pré-requis
Connaître Java et posséder desnotions sur XML et les web services.
Prochaines dates
Dates disponibles sur demande. Nous consulter
Plus d'informations
Ce cours s’adresse à tout développeur, chef de projet ou architecte désireux d’utiliser XML dans des applications Java.
- Manipuler des documents XML
- Générer des classes Java à partir de XML
- Comprendre l'implication de XML dans les web services
Introduction
- Rappel sur les documents XML, XML dans l’entreprise, les domaines d’application, les recommandations W3C
- Syntaxe des DTDs et des Schémas
- Les manipulations sur les documents XML : parsing, vérification, validation, la sérialisation, la transformation, la sélection de noeud via XPath
- Cas d'utilisation : fichiers de configuration, EDI, data binding, persistance, web services
- Les APIs J2EE (JAXP,JAXWS, JAXB, SAAJ, JAXR)
Parsing de document XML
- Présentation de l’API JAXP Indépendance vis à vis des parseurs et des moteurs XSLT
- SAX et DOM : les différences d’approche et leurs avantages
- Présentation de l’API DOM, vision hiérarchique du document, les classes DocumentBuilderFactory, DocumentBuilder, notion de nœud, d’élément, d’attribut, de nœud texte, …
- Créer un document XML avec DOM, Parcourir l’arbre, le modifier, Sérialiser le document, le normaliser, le valider.
- Présentation de l’API SAX, les classes SAXParserFactory, SAXParser, SAXReader, les handlers, la résolution d’entité
- Parser un document XML avec SAX, Obtenir une instance d’un XMLReader, définir ses propres Handler, gérer les évènements, implémenter les méthodes startElement(), endElement(), characters(), …
- Caractéristiques et propriétés d’un parser, validation des documents XML d’entrée
- Organiser des pipe-line de traitements avec les filtres, gestion des espaces de nommage.
Les transformations XSL avec Java
- XSL-T «comment ça marche», principe de transformation, les différents moteurs de transformation disponibles
- Présentation de l’API XSLT, les classes TransformerFactory, Transformer
- Effectuer une transformation, chaîner des transformations
- La librairie Xalan
- XSL-FO cas d’utilisation et architecture requise
- La librairie FOP, génération de PDF avec FOP, XSL-FO
Génération de classes: Le Data Binding
- Le data binding, à quoi ça sert?
- Les avantages, la simplicité, l’évolutivité
- Présentation de JAXB, panorama de l’architecture
- Utilisation de JAXB, la compilation et ses options, l’influence du XML-schema, les classes dérivées du schéma
- Les opérations de marshalling et de unmarshalling; modification de document, validation de document
- Customisation du data binding
Les Webservices
- Rappel sur les web services, le rôle de SOAP, le déploiement, les annuaires, …
- Présentation de JAXM, son utilisation et son rôle
- Présentation de JAX-RPC, l’API pour développer et utiliser des web services
- Créer un web service avec JAX-RPC, interface et classe d’implémentation, construire puis déployer le web service
- Créer un client avec JAX-RPC, les différents patterns à utiliser, comment agir sur l’enveloppe SOAP
- Présentation de JAXR, l’API pour les registres XML. Qu’est-ce qu’un registre? l’architecture de JAXR, comment interroger un annuaire web services
- Présentation de SAAJ, notions de messages et de connexions, message avec ou sans attachement, comment construire son message SOAP
- Présentation du projet Axis, la création et l’utilisation de web services avec Axis, l’utilisation de WSDL