Utilisation de JAXB pour les liaisons de données XML
JAXB (Java™ Architecture for XML Binding) est une technologie Java qui offre un moyen pratique de mapper des classes Java et un schéma XML pour un développement simplifié des services Web. JAXB fournit l'outil de compilation de schéma xjc, l'outil de génération de schéma schemagen et une infrastructure d'exécution pour prendre en charge la conversion et la déconversion de documents XML à partir d'objets ou en objets Java.
Pourquoi et quand exécuter cette tâche
JAXB est une technologie de liaison XML vers Java qui permet une transformation entre un schéma et des objets Java, ainsi qu'entre des documents d'instance XML et des instances d'objet Java. JAXB comprend une API d'exécution accompagnée d'outils simplifiant l'accès aux documents XML. Vous pouvez utiliser les JAXB API et les outils pour établir des mappages entre les classes Java et le schéma XML. Un schéma XML définit les éléments de données et la structure d'un document XML. La technologie JAXB fournit un outil qui vous permet de convertir vos documents XML vers et à partir des objets Java. Les données stockées dans un document XML sont accessibles sans qu'il soit nécessaire de comprendre la structure des données XML.
JAXB est une technologie par défaut de liaison de données utilisée par l'outil et l'implémentation JAX-WS (Java API for XML Web Services) à l'intérieur de ce produit. Vous pouvez développer des objets JAXB à utiliser dans vos applications JAX-WS. Vous pouvez aussi utiliser JAXB indépendamment du modèle de programmation JAX-WS comme vos applications Java.


JAXB fournit l'outil de compilation de schémas xjc, l'outil de génération de schémas schemagen et une infrastructure d'exécution. L'outil de compilateur de schéma xjc vous permet de démarrer avec un XSD (XML schema definition) pour créer un ensemble de JavaBeans qui mappent aux éléments et aux types définis dans le schéma XSD. Vous pouvez également démarrer avec un jeu de JavaBeans et utiliser l'outil générateur de schémas schemagen pour créer le schéma XML. Après l'utilisation du compilateur de schéma ou des outils de générateur de schéma, vous pouvez convertir vos documents XML à partir d'objets ou en objets Java et utiliser les classes Java en résultant pour assembler une application de services Web.
Outre l'utilisation des outils à partir de la ligne de commande, vous pouvez appeler ces outils JAXB à partir des environnements de génération Ant. Utilisez la tâche Ant com.sun.tools.xjc.XJCTask à partir de l'environnement de génération Ant pour appeler l'outil de compilation de schéma xjc. Utilisez la tâche Ant com.sun.tools.jxc.SchemaGenTask à partir de l'environnement de génération Ant pour appeler l'outil de génération de schéma schemagen. Ces tâches Ant nécessitent que les fichiers com.ibm.jaxb.tools.jar et com.ibm.jaxws.tools.jar soient dans le chemin d'accès aux classes.
Les artefacts et classes annotés JAXB contiennent toutes les informations requises par l'API d'exécution JAXB pour le traitement des documents d'instance XML. L'API d'exécution JAXB active la conversion des objets JAXB en XML et la déconversion du document XML en instances de classe JAXB. Le package de liaisons JAXB, javax.xml.bind, définit les interfaces et les classes abstraites utilisées directement avec les classes de contenu. De plus, le package définit les API de conversion et de déconversion.
(Facultatif) Vous pouvez utiliser les personnalisations de liaison JAXB pour substituer les mappages de type générés par défaut. Vous pouvez personnaliser les liaisons JAXB à l'aide d'annotations en ligne dans le schéma source, ou à l'aide d'un fichier de personnalisation de liaisons externe qui passe vos personnalisations au compilateur de liaison JAXB, xjc, afin de contrôler les mappages de type Java. Sinon, vous pouvez ajouter les annotations Java aux classes Java existantes et les passer au générateur de schéma (schemagen) afin de contrôler le schéma ou les mappages de type XML. Voir la spécification JAXB pour plus d'informations sur les options de personnalisation de liaison et les annotations Java.
A l'aide de JAXB, vous pouvez manipuler les objets de données en procédant comme suit :
Procédure
- Générez un schéma XML à partir d'une classe Java. Utilisez la commande de générateur de schéma schemagen pour générer un schéma XML à partir des classes Java.
- Générez les classes Java à partir d'un schéma XML. Utilisez la commande de compilateur de schéma xjc pour créer des classes Java annotées JAXB à partir d'un schéma XML.
- Convertissez et annulez la conversion de documents XML. Une fois le mappage entre un schéma XML et des classes Java réalisé, utilisez l'exécution de liaison JAXB pour convertir des documents d'instance XML en objets Java et vice versa.