xml .pdf



Nom original: xml.pdfTitre: Guide du développeur d’applications XMLAuteur: Borland Technical Publications

Ce document au format PDF 1.3 a été généré par FrameMaker 5.5.6p145 / Acrobat Distiller 4.05 for Windows, et a été envoyé sur fichier-pdf.fr le 29/01/2016 à 21:06, depuis l'adresse IP 160.176.x.x. La présente page de téléchargement du fichier a été vue 896 fois.
Taille du document: 1.5 Mo (130 pages).
Confidentialité: fichier public


Aperçu du document


Guide du développeur
d’applications XML

Borland ®
VERSION 5

JBuilder



Consultez le fichier DEPLOY.TXT situé dans le répertoire redist de JBuilder pour avoir la liste complète des fichiers
que vous pouvez distribuer en accord avec votre contrat de licence JBuilder.
Les applications mentionnées dans ce manuel sont brevetées par Borland Software Corporation ou en attente de
brevet. Ce document ne donne aucun droit sur ces brevets.
COPYRIGHT © 1997, 2001 Borland Software Corporation. Tous droits réservés. Tous les produits Borland sont des
marques commerciales ou des marques déposées de Borland Software Corporation aux Etats-Unis et dans les
autres pays. Les autres noms de produits sont des marques commerciales ou des marques déposées de leurs
fabricants respectifs.
Pour connaître les conditions et limites des fournisseurs tiers, lisez les Remarques version sur votre CD JBuilder.
JB5XML 1E0R0501
0102030405-9 8 7 6 5 4 3 2 1
PDF

Table des matières
Chapitre 1

Chapitre 3

Introduction
Comment contacter le support développeur
de Borland . . . . . . . . . . . . . . . . . .
Ressources en ligne. . . . . . . . . . . . .
World Wide Web . . . . . . . . . . . . . .
Groupes de discussion Borland. . . . . .
Groupes de discussion Usenet . . . . . .
Rapports de bogues . . . . . . . . . . . .
Conventions de la documentation . . . . . .
Conventions pour le Macintosh . . . . . . .

1-1
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

Utilisation des composants
de bases de données XML
de JBuilder

1-2
1-2
1-2
1-3
1-3
1-3
1-4
1-6

Chapitre 2

Utilisation des fonctionnalités XML
de JBuilder

3-1

Utilisation des composants basés
sur des templates . . . . . . . . . . . . . .
Définition des propriétés
des beans templates . . . . . . . . . . .
Utilisation du personnaliseur
de composants . . . . . . . . . . . .
Utilisation de l’inspecteur. . . . . . .
Document de requête XML . . . . . .
Utilisation des composants basés
sur des modèles . . . . . . . . . . . . . . .
XML-DBMS . . . . . . . . . . . . . . . .
JBuilder et XML-DBMS . . . . . . . . . .
Expert XML-DBMS . . . . . . . . . . . .
Définition des propriétés
des composants basés sur des modèles
Utilisation du personnaliseur
de composants . . . . . . . . . . . .
Utilisation de l’inspecteur. . . . . . .

2-1

Présentation . . . . . . . . . . . . . . . . . . . . 2-1
Création et validation de XML . . . . . . . . . . 2-2
Création de documents XML . . . . . . . . . 2-2
Expert DTD vers XML . . . . . . . . . . . 2-2
Expert XML vers DTD . . . . . . . . . . . 2-4
Visualisation de documents XML . . . . . . 2-5
Visualiseur XML de JBuilder . . . . . . . 2-5
Validation de documents XML . . . . . . . . 2-7
Présentation de XML . . . . . . . . . . . . . . . 2-10
Structure de publication XML Cocoon . . . . 2-10
Transformation de documents XML . . . . . 2-13
Application de feuilles de style internes . 2-14
Application de feuilles de style externes . 2-15
Définition des options de suivi
de la transformation . . . . . . . . . . . 2-17
Configurations XML. . . . . . . . . . . . . . . . 2-18
Ressources XML . . . . . . . . . . . . . . . . . . 2-19
Manipulation de XML par programme . . . . . 2-19
Création d’un gestionnaire SAX . . . . . . . 2-19
Liaison de données . . . . . . . . . . . . . . . 2-21
BorlandXML. . . . . . . . . . . . . . . . . 2-22
Castor . . . . . . . . . . . . . . . . . . . . 2-24
Interface avec des données métier
dans des bases de données . . . . . . . . . . . 2-25

. . . 3-2
. . . 3-2
. . . 3-2
. . . 3-9
. . . 3-9
.
.
.
.

.
.
.
.

3-11
3-11
3-12
3-13

. . 3-17
. . 3-17
. . 3-21

Chapitre 4

Tutoriel : Validation et transformation
de documents XML
4-1
Présentation . . . . . . . . . . . . . . . . .
Etape 1 : Création d’un document XML
à partir d’une DTD . . . . . . . . . . . .
Etape 2 : Insertion des données
dans le document XML généré . . . . .
Etape 3 : Validation du document XML .
Etape 4 : Association de feuilles de style
au document . . . . . . . . . . . . . . . .
Etape 5 : Transformation du document
à l’aide de feuilles de style . . . . . . . .
Etape 6 : Définition des options de suivi
de la transformation . . . . . . . . . . .

i

. . . . 4-1
. . . . 4-2
. . . . 4-3
. . . . 4-4
. . . . 4-6
. . . . 4-8
. . . . 4-9

Chapitre 5

Entrée d’informations concernant
la connexion JDBC. . . . . . . . . . . . . . . 8-4
Test de la connexion . . . . . . . . . . . . . 8-5
Spécification des noms de fichiers . . . . . . . 8-6
Création des tables de base de données . . . . . 8-7
Utilisation de l’exemple d’application test . . . . 8-8
Utilisation du personnaliseur
de XMLDBMSTable . . . . . . . . . . . . . . 8-9
Sélection d’une connexion JDBC . . . . . . 8-9
Transfert de données d’un document XML
vers la table de base de données . . . . 8-10
Transfert de données d’une table de base de
données vers un document XML. . . . 8-11
Utilisation du personnaliseur
de XMLDBMSQuery . . . . . . . . . . . . 8-15
Sélection d’une connexion JDBC . . . . . 8-16
Transfert de données
avec une instruction SQL . . . . . . . . 8-16
Fichiers d’affectation du composant
XMLDBMSQuery . . . . . . . . . . . . 8-17

Tutoriel : Création
d’un Gestionnaire SAX pour analyser
des documents XML
5-1
Présentation . . . . . . . . . . . . . . . . .
Etape 1 : Utilisation
de l’expert Gestionnaire SAX . . . . . . .
Etape 2 : Modification de l’analyseur SAX
Etape 3 : Exécution du programme . . . .
Etape 4 : Ajout d’attributs . . . . . . . . . .
Code source de MySaxParser.java . . . . .

. . . 5-1
.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

5-2
5-4
5-6
5-7
5-8

Chapitre 6

Tutoriel : Liaison de données DTD
avec BorlandXML
Présentation . . . . . . . . . . . . . . . . . . .
Etape 1 : Génération de classes Java
à partir d’une DTD . . . . . . . . . . . . . . .
Etape 2 : Dé-marshalling des données . . . . .
Etape 3 : Ajout d’un employé. . . . . . . . . .
Etape 4 : Modification d’un employé . . . . .
Etape 5 : Exécution de l’application terminée.

6-1
. 6-1
.
.
.
.
.

6-2
6-5
6-6
6-7
6-8

Chapitre 9

Tutoriel : Transfert de données
avec les composants base de données
XML basés sur des templates
9-1

Chapitre 7

Tutoriel : Liaison de données
par schéma avec Castor
Présentation . . . . . . . . . . . . . . . . . . .
Etape 1 : Génération de classes Java
à partir d’un schéma . . . . . . . . . . . . . .
Etape 2 : Dé-marshalling des données . . . . .
Etape 3 : Ajout d’un employé. . . . . . . . . .
Etape 4 : Modification des données
du nouvel employé . . . . . . . . . . . . . .
Etape 5 : Exécution de l’application terminée.

Introduction . . . . . . . . . . . . . . . . . . . .
Utilisation de l’exemple d’application test . . .
Utilisation du personnaliseur de XTable . .
Entrée d’informations concernant
la connexion JDBC . . . . . . . . . . . .
Transfert de données de la table de base
de données vers un document XML . .
Utilisation du personnaliseur de XQuery. .
Sélection d’une connexion JDBC . . . . .
Transfert de données
avec une instruction SQL . . . . . . . .

7-1
. 7-1
. 7-2
. 7-5
. 7-6
. 7-7
. 7-8

Chapitre 8

Index

Tutoriel : Transfert de données
avec les composants base de données
XML basés sur des modèles
8-1
Introduction . . . . . . . . . . . . . . . . . . . . 8-2
Création des fichiers script SQL
et d’affectation . . . . . . . . . . . . . . . . . . 8-4

ii

. 9-2
. 9-2
. 9-3
. 9-3
. 9-4
. 9-7
. 9-7
. 9-8

I-1

Chapitre

1

Introduction

Chapitre1

Le support XML
est une fonctionnalité
de JBuilder Professionnel
et de JBuilder Entreprise.

Le Guide du développeur d’applications XML explique comment utiliser les
fonctionnalités XML de JBuilder ; il se compose des chapitres suivants :
• Chapitre 2, “Utilisation des fonctionnalités XML de JBuilder”
Explique comment utiliser les fonctionnalités XML de JBuilder pour
créer, valider et présenter des documents XML.

C’est une fonctionnalité
de JBuilder Entreprise.

C’est une fonctionnalité
de JBuilder Entreprise.

Il contient aussi “Manipulation de XML par programme”, page 2-19,
qui explique comment créer un analyseur SAX et manipuler des
données XML par programme à l’aide de plusieurs solutions de liaison
des données.
• Chapitre 3, “Utilisation des composants de bases de données XML
de JBuilder”
Explique comment utiliser les composants bean modèle et template de
XML pour créer des requêtes sur une base de données et comment
transférer des données entre des documents XML et des bases de
données.
• Tutoriels
• Chapitre 4, “Tutoriel : Validation et transformation
de documents XML”

Ces tutoriels
sont disponibles
dans JBuilder Entreprise.

• Chapitre 5, “Tutoriel : Création d’un Gestionnaire SAX pour
analyser des documents XML”
• Chapitre 6, “Tutoriel : Liaison de données DTD avec BorlandXML”
• Chapitre 7, “Tutoriel : Liaison de données par schéma avec Castor”
• Chapitre 8, “Tutoriel : Transfert de données avec les composants
base de données XML basés sur des modèles”
• Chapitre 9, “Tutoriel : Transfert de données avec les composants
base de données XML basés sur des templates”
Introduction

1-1

Comment contacter le support développeur de Borland

Comment contacter le support développeur de Borland
Borland offre aux développeurs diverses options de support. Elles
comprennent des services gratuits sur Internet, où vous pouvez consulter
notre importante base d’informations et entrer en contact avec d’autres
utilisateurs de produits Borland. En outre, vous pouvez choisir parmi
plusieurs catégories de support, allant de l’installation des produits
Borland au support tarifé de niveau consultant, en passant par une
assistance complète.
Pour obtenir des informations sur les services Borland de support aux
développeurs, veuillez consulter notre site Web, à l’adresse
http://www.borland.fr/Support/.
Quand vous contacterez le support, préparez des informations complètes
sur votre environnement, la version du produit que vous utilisez et une
description détaillée du problème.
Pour avoir de l’aide sur les outils tiers, ou leur documentation, contactez
votre fournisseur.

Ressources en ligne
Vous pouvez obtenir des informations depuis les sources ci-après :
World Wide Web http://www.borland.fr/
FTP

ftp.borland.com
Documents techniques accessibles par anonymous ftp.

Listserv

Pour vous abonner aux bulletins électroniques, utilisez
le formulaire en ligne :
http://www.borland.com/contact/listserv.html
ou, pour l’international,
http://www.borland.com/contact/intlist.html

TECHFAX

1-800-822-4269 (Amérique du Nord)
Documents techniques accessibles par télécopie.

World Wide Web
Consultez régulièrement www.borland.fr/jbuilder. L’équipe produit de
JBuilder y place notes techniques, analyses des produits concurrents,
réponses aux questions fréquemment posées, exemples d’applications,
mises à jour du logiciel et informations sur les produits existants ou
nouveaux.

1-2

Guide du développeur d’applications XML

Comment contacter le support développeur de Borland

Vous pouvez vous connecter en particulier aux URL suivantes :
• http://www.borland.fr/Produits/jbuilder/ (mises à jour du logiciel et
autres fichiers)
• http://community.borland.com/ (contient notre magazine
d’informations web pour les développeurs)

Groupes de discussion Borland
Vous pouvez vous inscrire à JBuilder et participer à de nombreux groupes
de discussion dédiés à JBuilder.
Vous trouverez des groupes de discussion, animés par les utilisateurs,
pour JBuilder et d’autres produits Borland, à l’adresse
http://www.borland.fr/Newsgroups/

Groupes de discussion Usenet
Les groupes Usenet suivants sont dédiées à Java et concernent la
programmation :










Remarque

news:comp.lang.java.advocacy
news:comp.lang.java.announce
news:comp.lang.java.beans
news:comp.lang.java.databases
news:comp.lang.java.gui
news:comp.lang.java.help
news:comp.lang.java.machine
news:comp.lang.java.programmer
news:comp.lang.java.security
news:comp.lang.java.softwaretools

Ces groupes de discussion sont maintenus par les utilisateurs et ne sont
pas des sites Borland officiels.

Rapports de bogues
Si vous pensez avoir trouvé un bogue dans le logiciel, merci de le signaler
dans la page du support développeur de JBuilder, à l’adresse
http://www.borland.fr/Support/jbuilder/. Sur ce site, vous pouvez
également demander une fonctionnalité ou consulter la liste des bogues
déjà signalés.
Quand vous signalez un bogue, indiquez toutes les étapes nécessaires à la
reproduction de ce bogue, ainsi que tout paramètre spécial de votre
environnement et les autres programmes utilisés avec JBuilder. Précisez
bien le comportement attendu et ce qui s’est réellement passé.

Introduction

1-3

Conventions de la documentation

Si vous avez des commentaires (compliments, suggestions ou questions)
concernant la documentation de JBuilder, vous pouvez envoyer un e-mail
à jpgpubs@borland.com. Uniquement pour la documentation. Les
questions de support doivent être adressées au support développeur.
JBuilder est fait par des développeurs pour des développeurs. Nous
apprécions vraiment vos remarques, car elles nous aident à améliorer
notre produit.

Conventions de la documentation
La documentation Borland sur JBuilder utilise les polices et les symboles
décrits dans le tableau ci-dessous pour signaler du texte particulier.
Tableau 1.1 Polices et symboles

1-4

Police

Signification

Police à
espacement fixe

La police à espacement fixe représente :
• du texte tel qu’il apparaît à l’écran
• du texte que vous devez taper, comme “Entrez Hello World dans
le champ Titre de l’expert Application.”
• des noms de fichiers
• des noms de chemins
• des noms de répertoires ou de dossiers
• des commandes, comme SET PATH, CLASSPATH
• du code Java
• des types de données Java, comme boolean, int et long.
• des identificateurs Java, comme des noms de variables, classes,
interfaces, composants, propriétés, méthodes et événements
• des noms de paquets
• des noms d’argument
• des noms de champs
• des mots clés Java, comme void et static

Gras

Le gras est utilisé pour désigner les outils java, bmj (Borland Make
for Java), bcj (Borland Compiler for Java) et les options du
compilateur. Par exemple : javac, bmj, -classpath.

Italiques

L’italique est utilisé pour les termes nouveaux, les titres des
manuels et, parfois, pour la mise en valeur.

Touches

Cette police indique une touche de votre clavier. Par exemple,
“Appuyez sur Echap pour quitter un menu.”

[]

Les crochets droits dans le texte ou dans la syntaxe entourent les
éléments facultatifs. Ne tapez pas ces crochets.

Guide du développeur d’applications XML

Conventions de la documentation

Tableau 1.1 Polices et symboles (suite)
Police

Signification

<>

Les crochets angulaires dans le texte ou dans la syntaxe indiquent
une chaîne variable ; entrez la chaîne appropriée à votre code. Ne
tapez pas ces crochets. Les crochets angulaires sont également
utilisés pour les balises HTML.

...

Dans les exemples de code, les points de suspension indiquent du
code manquant. Sur un bouton, les points de suspension indiquent
que ce bouton ouvre un dialogue de sélection.

JBuilder est disponible sur plusieurs plates-formes. Reportez-vous au
tableau ci-dessous pour une description des conventions et répertoires
associés aux diverses plates-formes dans la documentation.
Tableau 1.2 Conventions et répertoires associés aux plates-formes
Elément

Signification

Chemins

Les chemins d’accès mentionnés dans la documentation sont
indiqués par une barre oblique (/).
Pour la plate-forme Windows, utilisez une barre oblique
inverse (\).

Répertoire de base

L’emplacement du répertoire de base dépend de la
plate-forme.
• Pour UNIX et Linux, le répertoire de base peut varier. Par
exemple, ce peut être /user/[username] ou /home/[username]
• Pour Windows 95/98, le répertoire de base est C:\Windows
• Pour Windows NT, le répertoire de base est C:\Winnt\
Profiles\[username]
• Pour Windows 2000, le répertoire de base est C:\Documents
and Settings\[username]

Répertoire
.jbuilder5

Le répertoire .jbuilder5, où sont stockés les paramètres de
fonctionnement de JBuilder, est placé dans le répertoire de
base.

Répertoire jbproject

Le répertoire jbproject, qui contient les fichiers projet, classe
et source, est placé dans le répertoire de base. JBuilder
enregistre les fichiers dans ce chemin par défaut.

Captures d’écran

Les captures d’écran reflètent l’apparence Metal de JBuilder
sur diverses plates-formes.

Introduction

1-5

Conventions pour le Macintosh

Conventions pour le Macintosh
JBuilder a été conçu pour supporter le Macintosh OS X si étroitement qu’il
prend l’apparence d’une application native. La plate-forme Macintosh a
des conventions d’apparence et de style qui diffèrent de celles de
JBuilder ; quand cela se produit, JBuilder prend l’apparence du Mac. Cela
veut dire qu’il y a quelques différences entre la façon dont JBuilder se
présente sur le Mac et ce qui est décrit dans la documentation. Par
exemple, la documentation utilise le mot “répertoire” alors que sur le Mac,
on dit “dossier”. Pour plus d’informations sur les chemins, la terminologie
et les conventions de l’interface utilisateur de Macintosh OS X, consultez
la documentation livrée avec votre OS X.

1-6

Guide du développeur d’applications XML

Chapitre

2

Utilisation des fonctionnalités
XML de JBuilder

Chapitre2

Présentation
Ces fonctionnalités
font partie
de JBuilder Professionnel
et de JBuilder Entreprise.

JBuilder offre plusieurs fonctionnalités et intègre divers outils pour
assurer le support du langage XML (Extensible Markup Language). XML
est un moyen de structurer les informations indépendant des
plates-formes. Comme XML sépare le contenu d’un document de sa
structure, il peut être utile lors de l’échange de données. Par exemple, il
peut servir à transférer des données entre des bases de données et des
programmes Java. Comme contenu et structure sont séparés, des feuilles
de style peuvent être appliquées pour afficher le même contenu dans
différent formats comme PDF (Portable Document Format), HTML pour
l’affichage dans un navigateur Web, etc.
Quand il travaille avec XML, JBuilder répartit les fonctionnalités dans
plusieurs couches :
• Création et validation de documents XML
• Présentation de documents XML

Ces fonctionnalités
font partie
de JBuilder Entreprise.
Voir aussi

• Manipulation de documents XML par programme
• Interface avec des données métier dans des bases de données
W3C (Consortium World Wide Web) à l’adresse http://www.w3.org/
Les XML Cover Pages à l’adresse http://www.oasis-open.org/cover/
sgml-xml.html (ou http://xml.coverpages.org/)
XML.org à l’adresse http://xml.org/
xmlinfo à l’adresse http://www.xmlinfo.com/

Utilisation des fonctionnalités XML de JBuilder

2-1

Création et validation de XML

Création et validation de XML
La création
et la validation
sont des fonctionnalités
de JBuilder Professionnel
et de JBuilder Entreprise.

JBuilder fournit un ensemble de fonctionnalités qui servent à créer,
modifier, visualiser et valider des documents XML sans jamais quitter
l’environnement de développement. Vous pouvez utiliser des experts
pour créer rapidement des documents XML, le visualiseur pour les voir
dans une vue arborescente réductible et l’éditeur de JBuilder pour
modifier le texte (cet éditeur met en évidence la syntaxe XML), rechercher
les erreurs et, finalement, valider les documents.
Pour trouver un tutoriel sur la création et la validation de documents
XML, consultez le Chapitre 4, “Tutoriel : Validation et transformation
de documents XML”.

Création de documents XML
JBuilder fournit des experts permettant de créer plusieurs documents
XML dans l’EDI :
• Expert DTD vers XML
• Expert XML vers DTD
Ces experts sont disponibles à partir du menu contextuel (clic droit) du
volet projet et de la page XML de la galerie d’objets (Fichier|Nouveau).
Astuce

Vous pouvez créer aussi des documents XML vides de la façon suivante ;
l’éditeur reconnaîtra le type de fichier et fournira la mise en évidence de la
syntaxe :

1 Choisissez Fichier|Ouvrir un fichier.
2 Dans le champ Nom de fichier, entrez un nom de fichier et une
extension, telle que .dtd, .xml, .xsl et .xsd.
3 Entrez le texte dans le fichier.
4 Enregistrez le fichier.
5 Ajoutez le fichier au projet avec le bouton Ajouter au projet.

Expert DTD vers XML
L’expert DTD vers XML permet de créer rapidement un document XML à
partir d’une DTD existante. Il crée un template XML à partir de la DTD
avec des paramètres fictifs pcdata représentant le contenu que vous
remplacez par le vôtre.
Pour utiliser l’expert DTD vers XML,

1 Cliquez avec le bouton droit sur le fichier DTD dans le volet projet et
choisissez Générer XML. Le nom du fichier DTD est automatiquement
mis dans le champ Fichier DTD d’entrée de l’expert.

2-2

Guide du développeur d’applications XML

Création et validation de XML

2 Sélectionnez l’élément racine dans la liste déroulante Elément racine.
3 Dans le champ Fichier XML de sortie, acceptez le nom de fichier par
défaut ou cliquez sur le bouton points de suspension pour entrer le
nom de fichier du document XML.
4 Facultatif : Entrez les identificateurs de la déclaration DOCTYPE.
• Public : entrez l’URI de la bibliothèque standard spécifiée.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML3.2 Final//EN">

• Système : entrez le nom du fichier DTD. Cela génère la déclaration
DOCTYPE. Par exemple :
<!DOCTYPE root SYSTEM "Employees.dtd">

5 Cliquez sur OK pour fermer l’expert. Le document XML s’ajoute au
projet et figure dans le volet projet.
L’expert gère aussi des attributs et convertit les définitions ATTLIST de la
DTD en attributs dans le document XML.
Figure 2.1

DTD avec des définitions ATTLIST

Utilisation des fonctionnalités XML de JBuilder

2-3

Création et validation de XML

Figure 2.2

XML créé par l’expert

Expert XML vers DTD
L’expert XML vers DTD permet de créer rapidement une DTD à partir
d’un document XML existant.
Pour utiliser l’expert XML vers DTD,

1 Pour ouvrir l’expert XML vers DTD, cliquez avec le bouton droit sur le
fichier XML dans le volet projet et choisissez Générer DTD. Le nom du
fichier XML est automatiquement mis dans le champ Fichier XML
d’entrée de l’expert.
2 Dans le champ Fichier DTD de sortie, acceptez le nom de fichier par
défaut ou cliquez sur le bouton points de suspension pour entrer un
nom de fichier XML différent.

3 Cliquez sur OK pour fermer l’expert. La DTD s’ajoute au projet et
figure dans le volet projet.

2-4

Guide du développeur d’applications XML

Création et validation de XML

Important

Si le document XML contient des attributs, l’expert XML vers DTD génère
dans la DTD les définitions ATTLIST correspondantes. Voir “Expert DTD
vers XML”, page 2-2, qui donne des exemples d’attributs.

Visualisation de documents XML
JBuilder fournit un visualiseur XML qui permet de voir vos documents
XML sans avoir à quitter l’environnement de développement. Le
document XML affiché peut utiliser une feuille de style définie par
l’utilisateur, une feuille de style JBuilder par défaut ou aucune feuille de
style. Le visualiseur XML de JBuilder, qui prend JavaScript en charge,
affiche la feuille de style JBuilder par défaut sus une forme arborescente
réductible.

Visualiseur XML de JBuilder
Dans JBuilder, vous pouvez voir un document XML en l’ouvrant et en
sélectionnant l’onglet Vue du volet contenu. Si cet onglet est indisponible,
il faut l’activer sur la page XML de la boîte de dialogue Options de l’EDI
(Outils|Options de l’EDI).
Si aucune feuille de style CSS n’est disponible, JBuilder applique une
feuille de style XSLT par défaut pour afficher le document dans une vue
arborescente réductible. Remarquez que l’onglet Vue ignore les feuilles de
style XSL. Pour savoir comment appliquer des feuilles de style, consultez
“Transformation de documents XML”, page 2-13.
Figure 2.3

Remarque

Vue XML avec la feuille de style par défaut

Vous pouvez développer et réduire la vue arborescente en cliquant sur les
symboles plus (+) et moins (–).

Utilisation des fonctionnalités XML de JBuilder

2-5

Création et validation de XML

Quand l’option Appliquer la feuille de style par défaut est désactivée,
vous pouvez voir votre document XML sans aucun style. Vous pouvez la
désactiver dans la page XML de la boîte de dialogue Options de l’EDI.
Figure 2.4

Vue XML sans feuille de style

Si votre fichier XML contient une feuille de style en cascade (CSS), le
visualiseur XML de JBuilder affiche le document en utilisant cette feuille
de style.
Par exemple, pour afficher le document XML suivant directement avec
une feuille de style plutôt qu’en le transformant, vous pouvez créer un
fichier CSS comme le montre l’illustration et y faire référence dans le
document XML de la façon suivante :
<?xml-stylesheet type="text/css" href="cd_catalog.css"?>

Figure 2.5

2-6

Document XML

Guide du développeur d’applications XML

Création et validation de XML

Figure 2.6

Source de la feuille de style en cascade

L’image suivante montre le résultat obtenu :
Figure 2.7

Document XML avec application d’une feuille de style en cascade

Validation de documents XML
Dans XML, il y a deux types de validation : construction correcte et
validité grammaticale. Pour qu’un document ait une construction
correcte, sa structure physique et sa syntaxe doivent respecter les règles
XML. Par exemple, tous les documents XML doivent avoir un élément
racine. De même, si le document a une DTD interne, toutes les entités
doivent être déclarées. Si un document a une construction correcte, les
DTD externes ne sont pas contrôlées.
Par contre, un document XML valide est un document dont la
construction est correcte mais qui respecte aussi les règles plus strictes
spécifiées dans la DTD (Document Type Definition) ou dans le schéma. La
DTD décrit une structure de document, spécifie quels types d’éléments
sont autorisés et définit les propriétés de chaque élément.
Utilisation des fonctionnalités XML de JBuilder

2-7

Création et validation de XML

JBuilder intègre l’analyseur Xerces pour fournir une analyse XML de
validation des documents XML. Pour avoir des informations sur Xerces,
consultez la documentation Xerces et les exemples disponibles dans le
répertoire extras de l’installation complète de JBuilder ou visitez le site
Web d’Apache à l’adresse http://xml.apache.org/.
Quand vous affichez un document XML ouvert dans JBuilder, le volet
structure affiche la structure du document. Si ce dernier n’a pas une
correction correcte, le volet structure montre un dossier Erreurs qui
contient des messages d’erreurs. Servez-vous de ces messages pour
corriger les erreurs d’une structure de document. Dans le volet structure,
cliquez sur un message d’erreur pour le mettre en évidence dans le code
source et double-cliquez pour envoyer la focalisation du curseur vers
l’éditeur.
Figure 2.8

Dossier Erreurs dans le volet structure

JBuilder peut valider aussi la grammaire XML de votre document selon
les définitions de la DTD. Le document XML étant affiché dans le volet
contenu, cliquez avec le bouton droit sur le fichier XML dans le volet
projet et choisissez Valider. Si le document est valide, une boîte de
dialogue le signale. Si le document contient des erreurs, les résultats sont
mis dans une page Trace de validation XML du volet message. Cliquez
sur un message d’erreur pour mettre en évidence l’erreur dans le code
source. Double-cliquez sur un message pour envoyer la focalisation du
curseur vers le code source.
Le volet message affiche deux types de messages d’erreurs : correctement
construit et valide. S’il n’y a pas de DTD, le document est déclaré invalide
et un message le signale dans le volet message. Une fois les erreurs
corrigées, faites une nouvelle validation du document pour le vérifier.

2-8

Guide du développeur d’applications XML

Création et validation de XML

Figure 2.9

Erreurs de validation XML en utilisant une DTD

JBuilder prend aussi en charge la validation des fichiers schéma (XSD).
Comme avec les DTD, cliquez avec le bouton droit sur le fichier schéma
dans le volet projet et choisissez Valider. Les erreurs sont visibles dans le
volet structure et/ou le volet message. Si un fichier schéma n’est pas
disponible, un message le signale dans le volet message. Si le schéma est
valide, une boîte de dialogue le précise.
Figure 2.10 Erreurs de validation XML en utilisant un schéma

Utilisation des fonctionnalités XML de JBuilder

2-9

Présentation de XML

Présentation de XML
La présentation
est une fonctionnalité
de JBuilder Professionnel
et de JBuilder Entreprise.

JBuilder fournit des outils destinés aux tâches de présentation des
documents XML :
• Cocoon comme couche présentation
• Validation de documents XML
• Transformation de documents XML

Structure de publication XML Cocoon
Cocoon, qui fait partie du projet XML Apache, est intégré dans JBuilder.
C’est une structure de publication Java basée sur des servlets, destinée à
XML, qui autorise la séparation du contenu, du style et de la logique, et
qui utilise une transformation XSL pour les fusionner. Cocoon peut
utiliser aussi des feuilles logiques, pages XSP (Extensible Server Pages),
pour intégrer un contenu dynamique à la logique de programme écrite en
Java. Le modèle Cocoon décompose le contenu Web en :
• Création XML : les fichiers XML sont créés par des propriétaires de
contenu qui ont besoin de comprendre les DTD mais pas de connaître
le traitement.
• Traitement XML : le fichier XML est traité selon les feuilles logiques. La
logique est séparée du contenu.
• Rendu XSL : l’affichage du document XML utilise une feuille de style et
un formatage tenant compte du type de ressource (PDF, HTML, WML,
XHTML, etc).
Quand vous exécutez l’expert Application Web Cocoon, Cocoon est
configuré pour utiliser la version fournie avec JBuilder. Utilisez l’expert
Application Web Cocoon sur la page XML de la galerie d’objets (Fichier|
Nouveau|XML) pour configurer Cocoon après avoir démarré un
nouveau projet :

1 Créez un projet en utilisant l’expert Projet de JBuilder (Fichier|
Nouveau projet).
2 Choisissez Fichier|Nouveau et choisissez l’onglet XML de la galerie
d’objets.
3 Double-cliquez sur l’icône Application Web Cocoon pour ouvrir
l’expert Application Web Cocoon.
4 Acceptez la base Cocoon par défaut.
5 Acceptez l’option Générer WAR si vous voulez créer un fichier WAR.
6 Cliquez sur OK pour fermer l’expert et générer les fichiers Cocoon.

2-10

Guide du développeur d’applications XML

Présentation de XML

7 Sélectionnez le fichier du projet dans le volet projet, cliquez avec le
bouton droit, et choisissez Construire le projet pour générer le fichier
WAR.
8 Dans le volet projet, développez le nœud cocoon pour voir les fichiers
Cocoon générés par l’expert :








cocoon.war - fichier archive Web
web.xml - descripteur de déploiement d’application Web
cocoon.properties - fichier de propriétés
cocoon.xml - fichier de configuration
index.xml - exemple de fichier xml
index.xsl - exemple de feuille de style

Vous pourrez ultérieurement apporter des modifications dans la
plupart de ces fichiers directement dans l’éditeur sans exécuter l’expert
une nouvelle fois.

9 Ajoutez au projet vos fichiers XML et XSL existants à l’aide du bouton
Ajouter au projet situé sur la barre d’outils du volet projet.
Pour avoir plus d’informations sur web.xml et sur l’éditeur du descripteur
de déploiement, consultez les rubriques “Descripteurs de déploiement”
dans “Utilisation des WebApp et des fichiers WAR” et “Déploiement de
votre application Web” dans le Guide du développeur d’applications Web.
Ouvrez un fichier exemple Cocoon, index.xml, et remarquez qu’il utilise
index.xsl comme feuille de style.

Utilisation des fonctionnalités XML de JBuilder

2-11

Présentation de XML

Figure 2.11 Code source XML de index.xml

Figure 2.12 Code source de la feuille de style index.xsl

Pour exécuter Cocoon, cliquez avec le bouton droit sur le nœud cocoon
dans le volet projet et choisissez Exécution Cocoon dans le menu
déroulant. Cocoon lance le moteur de servlet actuellement configuré et
s’insère dans l’environnement des servlets, en utilisant les informations
des fichiers web.xml et de cocoon.properties générés par l’expert Application
Web Cocoon. Vous pouvez modifier cocoon.properties pour ajouter des
bibliothèques XSP (Extensible Server Pages) et des ressources
individuelles à chaque feuille logique.
Maintenant, choisissez l’onglet Vue Web pour voir l’exemple Cocoon sur
lequel la feuille de style a été appliquée.

2-12

Guide du développeur d’applications XML

Présentation de XML

Figure 2.13 Vue Web de index.xml

Pour voir le code source de la vue Web, choisissez l’onglet Source Vue
Web.
Figure 2.14 Source de la vue Web de index.xml

Pour avoir des informations sur l’utilisation de Cocoon, consultez la
documentation Cocoon et les exemples dans le répertoire cocoon de votre
installation JBuilder ou visitez le site Web d’Apache à l’adresse
http://xml.apache.org/cocoon/index.html.

Transformation de documents XML
La conversion d’un document XML en un autre type de document est
appelée transformation XML. Pour la transformation des documents
XML, JBuilder incorpore Xalan comme processeur de feuilles de style et
utilise des feuilles de style écrites en XSLT (Extensible Style Language
Transformations). Une feuille de style XSL contient des instructions pour

Utilisation des fonctionnalités XML de JBuilder

2-13

Présentation de XML

la transformation des documents XML d’un type en un autre (XML,
HTML, PFD, WML ou autre).
Pour avoir des informations sur Xalan, consultez la documentation Xalan
et les exemples disponibles dans le répertoire extras de l’installation
complète de JBuilder ou visitez le site Web d’Apache à l’adresse
http://xml.apache.org/.

Application de feuilles de style internes
Pour appliquer une feuille de style à un document XML, choisissez
l’onglet Vue de la transformation dans le volet contenu. Si le document
contient une instruction de traitement XSLT et une seule feuille de style,
cette dernière est appliquée au document XML. Si une vue arborescente
est affichée à la place, appuyez sur le bouton Feuille de style par défaut
dans la barre d’outils de la vue de transformation pour désactiver la vue
arborescente. Le document transformé, mis dans un tampon temporaire,
est affiché sur l’onglet Vue de la transformation du volet contenu, avec la
feuille de style qui lui est appliquée. Un onglet Source de la vue de
transformation vous permet de voir le code source de cette
transformation.
Pour appliquer une autre feuille de style interne figurant dans
l’instruction des feuilles de style du document, choisissez-la dans la liste
déroulante des feuilles de style dans la barre d’outils de la vue de la
transformation.
Figure 2.15 Barre d’outils de la vue de la transformation

Tableau 2.1 Boutons de la barre d’outils de la vue de la transformation

2-14

Bouton

Description

Feuille de style
par défaut

Applique la feuille de style par défaut de JBuilder, qui est
une vue arborescente réductible.

Rafraîchir

Rafraîchit la vue.

Définir les options
de suivi

Ouvre la boîte de dialogue Définir les options de suivi de la
transformation qui permet de suivre le traitement de
l’application.

Ajouter des feuilles
de style

Ouvre la boîte de dialogue Configurer les feuilles de styles
du nœud dans laquelle vous pouvez associer des feuilles de
style à un document.

Guide du développeur d’applications XML

Présentation de XML

Application de feuilles de style externes
Vous pouvez également appliquer à un document des feuilles de style
externes. Commencez par les associer au document XML. Il y a plusieurs
façons d’ajouter et de retirer des feuilles de style externes associées à un
document :
• Cliquez avec le bouton droit sur le document XML dans le volet projet
et choisissez Propriétés.
• Cliquez sur le bouton Ajouter des feuilles de style dans la barre d’outils
de la vue de la transformation.

Ensuite, utilisez les boutons Ajouter et Retirer pour ajouter et retirer les
feuilles de style sélectionnées. Une fois les feuilles de style associées au
document, elles figurent avec les feuilles de style internes sur la barre
d’outils de la vue de la transformation, dans la liste déroulante des feuilles
de style.
Ensuite, choisissez l’onglet Vue de la transformation et sélectionnez une
feuille de style externe dans la liste déroulante pour l’appliquer. Si le
document est affiché dans une vue arborescente, désactivez-la en cliquant
sur le bouton Feuille de style par défaut de la barre d’outils, dans la vue de
la transformation.

Utilisation des fonctionnalités XML de JBuilder

2-15

Présentation de XML

Figure 2.16 Vue de la transformation avec une feuille de style externe appliquée

Si aucune feuille de style n’est disponible, un message le signale dans la
vue de la transformation indiquant qu’aucune feuille de style n’est
associée au document.
Figure 2.17 Vue de la transformation sans feuille de style

Pour afficher le résultat de la transformation dans une vue arborescente en
utilisant le feuille de style par défaut de JBuilder, cliquez sur le bouton
Feuille de style par défaut dans la barre d’outils de la vue de la
transformation. Cela est utile si la sortie d’une transformation est un autre
document XML sans feuille de style.

2-16

Guide du développeur d’applications XML

Présentation de XML

Figure 2.18 Vue de la transformation avec la vue arborescente de la feuille de style par défaut

Définition des options de suivi de la transformation
Vous pouvez définir les options de suivi de la transformation de façon à ce
que, lorsqu’une transformation a lieu, vous puissiez voir un suivi du
traitement de l’application. Ces options incluent Génération, Modèles,
Eléments et Sélections. Pour activer le suivi, choisissez Outils|Options de
l’EDI, choisissez l’onglet XML et cochez les options de suivi souhaitées.
Vous pouvez définir aussi ces options en cliquant sur le bouton Définir les
options de suivi dans la barre d’outils de la vue de la transformation. Le
suivi se trouve dans le volet message. Cliquez sur un suivi met en
évidence le code source correspondant. Double-cliquer sur un suivi
envoie la focalisation sur le code source dans l’éditeur pour que vous
puissiez commencer à le modifier.

Utilisation des fonctionnalités XML de JBuilder

2-17

Configurations XML

Configurations XML
Fonctionnalité
de JBuilder Professionnel
et de JBuilder Entreprise.

Vous pouvez définir des configurations XML dans la boîte de dialogue
Options de l’EDI. Choisissez Outils|Options de l’EDI et cliquez sur
l’onglet XML pour définir les options suivantes :
• Options générales
• Activer la vue du navigateur : active le visualiseur XML de JBuilder.
Quand cette option est activée, un onglet Vue est disponible dans le
volet contenu.
• Appliquer la feuille de style par défaut : La feuille de style par défaut
de JBuilder affiche un document XML dans une vue arborescente.
• Définir les options de suivi de la transformation : définit les options de
suivi de la transformation pour que, lorsqu’une transformation se
produit, vous puissiez suivre l’ordre dans lequel les divers éléments
des feuilles de style ont été appliqués. Les options de suivi
comprennent :





2-18

Génération
Modèles
Eléments
Sélections

Guide du développeur d’applications XML

Ressources XML

Ressources XML
D’autres ressources XML sont incluses dans le répertoire extras de
l’installation complète de JBuilder : Xerces, Xalan, Castor et Borland XML.
Vous y trouvez aussi la documentation, Javadoc et des exemples.

Manipulation de XML par programme
La manipulation
par programme
est une fonctionnalité
de JBuilder Entreprise.

En général, XML est manipulé par programme soit par des analyseurs soit
par une solution de liaison de données plus spécifique. JBuilder prend les
deux approches en charge et fournit des outils correspondants :
• Un expert SAX et des définitions de bibliothèques pour DOM et JAXP.
• BorlandXML pour la génération de sources Java à partir d’une DTD
• Castor pour la génération de sources Java à partir d’un schéma
Vous pouvez ajouter à votre projet des bibliothèques prédéfinies fournies
avec JBuilder : JDOM, JAXP, Xerces, BorlandXML, Castor, parmi d’autres.
Vous pouvez les ajouter à votre projet dans la boîte de dialogue Propriétés
du projet. Choisissez Projet|Propriétés du projet et sélectionnez la page
Chemins. Choisissez l’onglet Bibliothèques nécessaires et ajouter les
bibliothèques. Une fois les bibliothèques ajoutées, l’audit de code de
JBuilder y accède et peut afficher dans l’éditeur des fenêtres déroulantes
contextuelles qui montrent les méthodes et les membres de données, les
classes, les paramètres attendus par la méthode codée, ainsi qu’un examen
détaillé du code source.

Création d’un gestionnaire SAX
C’est une fonctionnalité
de JBuilder Entreprise.

SAX, acronyme de Simple API pour XML, est une interface standard pour
l’analyse XML basée sur les événements. Il y a deux types d’API XML : les
API basées sur des arborescences et les API basées sur des événements.
Avec une API basée sur des arborescences, qui compile un document
XML en une structure arborescente interne, une application peut naviguer
dans l’arborescence. Cette API basée sur des arborescences est
actuellement en cours de normalisation en tant que DOM (Document
Object Model).
SAX, API basée sur des événements, signale directement des événements
d’analyse à l’application au moyen de callbacks. L’application implémente
des gestionnaires pour traiter les différents événements, pour obtenir une
gestion semblable à celle des événements dans une interface utilisateur
graphique.

Utilisation des fonctionnalités XML de JBuilder

2-19

Manipulation de XML par programme

Par exemple, une API basée sur des événements étudie ce document :
<?xml version="1.0"?>
<page>
<titre>Exemple basé sur des événements</titre>
<contenu>Bonjour à tous !</contenu>
</page>

et le décompose en ces événements :
début document
début élément : page
début élément : titre
caractères : Exemple basé sur des événements
fin élément : titre
début élément : contenu
caractères : Bonjour à tous !
fin élément : contenu
fin élément : page
fin document

JBuilder facilite l’utilisation de SAX pour manipuler votre XML par
programme. L’expert Gestionnaire SAX crée un template
d’implémentation de l’analyseur SAX qui n’inclut que les méthodes à
implémenter pour analyser votre XML.
Pour utiliser l’expert Gestionnaire SAX,

1 Choisissez Fichier|Nouveau pour ouvrir la galerie d’objets, cliquez sur
l’onglet XML et double-cliquez sur l’icône de l’expert Gestionnaire SAX
pour ouvrir ce dernier.
2 Spécifiez le nom de la classe et les noms de paquets ou acceptez les
noms par défaut.

2-20

Guide du développeur d’applications XML

Manipulation de XML par programme

3 Sélectionnez les interfaces et les méthodes à redéfinir et cliquez sur
Suivant.
4 Sélectionnez les options de l’Analyseur SAX que vous voulez et cliquez
sur Terminer.
L’expert génère une classe qui implémente un analyseur SAX. Pour
achever l’implémentation, vous devez ensuite remplir les corps des
méthodes avec le code.

5 Configurez la page Exécution des Propriétés du projet en sélectionnant
la classe principale à exécuter et en spécifiant le fichier XML à analyser
dans le champ Paramètres de l’application.

Pour avoir plus d’informations sur SAX, visitez le site
http://www.megginson.com/SAX/index.html.
Pour obtenir un tutoriel sur l’expert Gestionnaire SAX, consultez le
Chapitre 5, “Tutoriel : Création d’un Gestionnaire SAX pour analyser des
documents XML”.

Liaison de données
C’est une fonctionnalité
de JBuilder Entreprise.

La liaison de données permet d’accéder à des données et de les manipuler,
puis de renvoyer les données modifiées à la base de données ou de les
afficher avec un document XML. Le document XML peut servir de
mécanisme de transfert entre la base de données et l’application. Ce
transfert se fait en liant un objet Java à un document XML. La liaison de
données est implémentée en générant des classes Java pour représenter les
contraintes contenues dans une grammaire, par exemple dans une DTD
Utilisation des fonctionnalités XML de JBuilder

2-21

Manipulation de XML par programme

ou dans un schéma XML. Vous pouvez ensuite utiliser ces classes pour
créer ou lire des documents XML conformes à la grammaire et valider des
documents XML par rapport à la grammaire au fur et à mesure de leur
modification.
JBuilder offre plusieurs solutions de liaison de données : BorlandXML et
Castor Open Source. BorlandXML utilise des fichiers DTD, alors que
Castor génère des classes Java à partir de fichiers schéma (.xsd).
Voir aussi

Les spécifications de liaison de données XML à l’adresse
http://www.oasis-open.org/cover/xmlDataBinding.html

BorlandXML
BorlandXML fournit un mécanisme de liaison de données qui masque les
détails de XML, réduit la complexité du code et facilite la maintenance.
BorlandXML est un générateur de classes programmable basé sur des
templates et utilisé pour générer des classes JavaBean à partir d’une DTD
(Document Type Definition). Il vous suffit ensuite d’utiliser la convention
de programmation JavaBean simple pour manipuler des données XML
sans avoir à vous préoccuper des détails XML.
Pour générer des classes Java, BorlandXML utilise des DTD dans un
traitement en deux étapes. Dans la première étape, BorlandXML génère
un fichier de modèles de classes à partir d’une DTD. C’est un fichier XML
qui porte l’extension .bom. Il décrit une structure de haut niveau des
classes cibles et fournit un moyen de personnaliser ces classes. Dans la
deuxième étape, BorlandXML génère des classes Java à partir du fichier
.bom (fichier XML de modèles de classes).
BorlandXML prend en charge plusieurs fonctionnalités :
• Manipulation JavaBean : manipule un bean pour construire un
document XML ou accéder à des données dans le document.
• Marshalling et dé-marshalling : conversion entre Java et XML.
• Marshalling : écrit un document XML à partir d’objets JavaBean Java vers XML.
• Dé-marshalling : lit un document XML dans des objets JavaBean XML vers Java.
• Validation de documents : valide des objets JavaBean avant d’effectuer
un marshalling vers XML ou après le dé-marshalling d’un document
XML en objets JavaBean.
• Personnalisation de PCDATA : permet de personnaliser PCDATA pour
prendre en charge différents types de données primitifs, tels que les
types Integer et Long, et pour prendre en charge des noms de
propriétés personnalisées.

2-22

Guide du développeur d’applications XML

Manipulation de XML par programme

• Noms de variables : permet l’ajout d’un préfixe et d’un suffixe
personnalisés aux noms de variables générées pour des éléments et des
attributs.
Pour générer des classes Java à partir d’une DTD à l’aide de l’expert
Liaison de données,

1 Cliquez avec le bouton droit sur le fichier DTD dans le volet projet et
choisissez Générer Java pour ouvrir l’expert Liaison de données. De
cette façon, le champ Fichier DTD de l’expert est automatiquement
rempli avec le nom du fichier. L’expert Liaison de données est
également disponible sur l’onglet XML de la galerie d’objets (Fichier|
Nouveau).
2 Comme Type de liaison de données, sélectionnez BorlandXML, qui est
basé uniquement sur des DTD, puis cliquez sur Suivant.
3 Remplissez les champs obligatoires, tels que le nom et l’emplacement
de la DTD utilisée, l’élément racine et le nom du paquet.
4 Entrez un identificateur PUBLIC ou SYSTEM à insérer dans la
déclaration DOCTYPE.

5 Cliquez sur Terminer.
6 Dans le volet projet, développez le nœud du paquet généré pour voir
les fichiers .java générés par l’expert.
Pour obtenir un tutoriel sur la liaison de données avec BorlandXML,
consultez le Chapitre 6, “Tutoriel : Liaison de données DTD avec
BorlandXML”.

Utilisation des fonctionnalités XML de JBuilder

2-23

Manipulation de XML par programme

Castor
Castor est une structure de liaison de données XML qui met en
correspondance (affecte) une instance de schéma XML avec un modèle
d’objet qui représente les données. Ce modèle d’objet inclut un ensemble
de classes et de types ainsi que des descripteurs utilisés pour obtenir des
informations sur une classe et ses champs.
Castor utilise une structure de marshalling qui inclut un ensemble de
ClassDescriptors et de FieldDescriptors pour décrire comment faire le
marshalling et le dé-marshalling d’un Objet à partir de XML.
Pour les personnes qui connaissent mal les termes “marshalling” et
“dé-marshalling”, il s’agit simplement de l’action de conversion d’un flux
(séquence d’octets) de données vers ou à partir d’un Objet. Le
“marshalling” est la conversion d’un Objet en flux, et le “dé-marshalling”
d’un flux en Objet.
Pour créer des classes Java, Castor utilise un schéma au lieu de DTD. Les
schémas (XSD), plus robustes et souples, présentent plusieurs avantages
par rapport aux DTD. Les schémas sont des documents XML, alors que les
DTD contiennent une syntaxe non XML. Les schémas acceptent aussi des
espacenoms (namespace), qui sont obligatoires pour éviter les conflits de
noms et offrent plus de types de données et une plus grande prise en
charge de l’héritage.
Pour générer des classes Java à partir d’un schéma XML, utilisez l’expert
Liaison de données de la façon suivante :

1 Cliquez avec le bouton droit sur le fichier schéma (XSD) dans le volet
projet et choisissez Générer Java pour ouvrir l’expert Liaison de
données. De cette façon, le champ Fichier schéma XML de l’expert est
automatiquement rempli avec le nom du fichier. L’expert Liaison de
données est également disponible sur l’onglet XML de la galerie
d’objets (Fichier|Nouveau).
2 Comme Type de liaison de données, sélectionnez Castor qui prend les
schémas XML en charge, puis cliquez sur Suivant.

2-24

Guide du développeur d’applications XML

Interface avec des données métier dans des bases de données

3 Remplissez les champs obligatoires, tels que le nom du paquet, et
spécifiez vos options.

4 Cliquez sur Terminer.
5 Dans le volet projet, développez le nœud du paquet généré pour voir
les fichiers .java générés par l’expert.
Remarque

Par défaut, la fonction de marshalling de Castor écrit des documents XML
sans indentation, puisque cette dernière augmente la taille des documents
XML générés. Pour activer l’indentation, modifiez le fichier des propriétés
de Castor comme suit : org.exolab.castor.indent=true. Ce fichier contient
aussi d’autres propriétés qu’il peut être utile de modifier. Le fichier
castor.properties est automatiquement créé par l’expert Liaison de
données dans le répertoire source du projet.
Pour obtenir un tutoriel sur la liaison de données avec Castor, consultez le
Chapitre 7, “Tutoriel : Liaison de données par schéma avec Castor”.
Le répertoire extras de l’installation complète de JBuilder contient des
exemples et la documentation Castor ; vous pouvez également visiter le
site Web Castor à l’adresse http://castor.exolab.org.

Interface avec des données métier dans des bases de données
L’interfaçage avec
des données métier
est une fonctionnalité
de JBuilder Entreprise.

La prise en charge de bases de données XML dans JBuilder se décompose
en deux catégories - basée sur des modèles et basée sur des templates. La
solution basée sur des modèles utilise un document d’affectation qui
détermine comment les données sont transférées entre une structure XML
et les métadonnées de la base de données. Les composants basés sur des
modèles, XMLDBMSTable et XMLDBMSQuery, sont implémentés en utilisant
XML-DBMS, middleware XML Open Source fourni avec JBuilder.

Utilisation des fonctionnalités XML de JBuilder

2-25

Interface avec des données métier dans des bases de données

La solution basée sur des templates utilise un template, ou ensemble de
règles. Les composants basés sur des templates, XTable et XQuery, sont très
souples et il n’y a pas de relation prédéfinie entre le document XML et
l’ensemble de métadonnées que vous interrogez dans la base de données.
Pour plus d’informations sur les composants de bases de données XML,
voir Chapitre 3, “Utilisation des composants de bases de données XML
de JBuilder”.
Voir aussi

2-26

XML-DBMS à l’adresse http://www.rpbourret.com/xmldbms/

Guide du développeur d’applications XML

Chapitre

3

Utilisation des composants
de bases de données XML
de JBuilder

Chapitre3

C’est une fonctionnalité
de JBuilder Entreprise.

Un ensemble de composants, proposé sur la page XML de la palette de
composants, assure la prise en charge de bases de données XML par
JBuilder. Le code d’exécution des beans fait partie d’une bibliothèque
transmissible située dans Xbeans.jar.
La bibliothèque XBeans se compose de deux types de composants de
bases de données XML
• Composants basés sur des templates
• Composants basés sur des modèles
Pour utiliser des composants basés sur des templates, vous fournissez une
instruction SQL et le composant génère un document XML approprié.
Cette instruction SQL sert de template remplacé dans le document XML
en tant que résultat de l’application du template. La solution basée sur des
templates est très souple car il n’y a pas de relation prédéfinie entre le
document XML et l’ensemble de métadonnées que vous interrogez dans la
base de données. Bien que les composants basés sur des templates
permettent une grande souplesse dans l’extraction de données d’une base
et leur intégration dans le document XML, le format de ce dernier reste
relativement simple et élémentaire. En outre, les composants basés sur des
templates peuvent générer des documents HTML basés sur des feuilles de
style par défaut ou sur une feuille de style personnalisée fournie par
l’utilisateur.
Les composants basés sur des modèles utilisent un document d’affectation
qui détermine la méthode de transfert les données entre une structure
XML et les métadonnées d’une base de données. En raison de la
Utilisation des composants de bases de données XML de JBuilder

3-1

Utilisation des composants basés sur des templates

correspondance entre un élément du document XML et une table ou une
colonne particulière d’une base de données, des documents XML
profondément imbriqués peuvent être transférés vers et depuis un
ensemble de tables de base de données. Les composants basés sur des
modèles sont implémentés en utilisant XML-DBMS, middleware XML
Open Source fourni avec JBuilder.

Utilisation des composants basés sur des templates
Les deux composants basés sur des templates, XTable et XQuery, sont le
premier et le deuxième composants de la palette de composants de
JBuilder.
Pour obtenir un tutoriel sur l’utilisation des composants XML basés sur
des templates, consultez le Chapitre 9, “Tutoriel : Transfert de données
avec les composants base de données XML basés sur des templates”.
Pour commencer à utiliser ces composants, sélectionnez-en un sur la page
XML de la palette des composants et mettez-le dans le Concepteur
d’interface utilisateur ou dans le volet structure pour l’ajouter à votre
application.

Définition des propriétés des beans templates
Il y a trois façons de définir les propriétés des deux composants basés sur
des templates :
• Utilisation du personnaliseur de composants
• Utilisation de l’inspecteur
• Avec un document de requête XML

Utilisation du personnaliseur de composants
Chaque composant de base de données XML dispose de son propre
personnaliseur. L’utilisation d’un personnaliseur de composants est la
façon la plus facile de définir les propriétés du composant. Vous pouvez
même tester votre connexion JDBC, effectuer le transfert pour voir le
document généré et afficher le DOM (Document Object Model).
Pour afficher un personnaliseur de composants, cliquez avec le bouton
droit sur le composant dans le volet structure et choisissez Personnaliser
dans le menu déroulant.

3-2

Guide du développeur d’applications XML

Utilisation des composants basés sur des templates

Voici le personnaliseur de XTable :

Connexion JDBC
Dans la page Connexion JDBC, vous pouvez spécifier la connexion JDBC
vers la base de données contenant les données à utiliser pour créer un
document XML. Elle contient les champs suivants :
Pilote

Dans la liste déroulante, spécifiez le pilote JDBC à
utiliser. Les pilotes affichés en noir sont ceux que
vous avez installés. Les pilotes affichés en rouge
ne sont pas disponibles sur votre système.

URL

Spécifiez l’URL de la source de données
contenant les informations à utiliser pour créer un
document XML. Quand vous cliquez dans le
champ, il affiche le masque que vous devez
utiliser pour spécifier l’URL en fonction du pilote
JDBC choisi.

Nom d’utilisateur

Si nécessaire, entrez le nom d’utilisateur de la
source de données.

Mot de passe

Si nécessaire, entrez le mot de passe d’accès à la
source de données.

Propriétés avancées

Ajoutez toutes les propriétés avancées dont vous
avez besoin. Un clic sur le bouton points de
suspension affiche la boîte de dialogue Propriétés
avancées permettant d’ajouter des propriétés.

Utilisation des composants de bases de données XML de JBuilder

3-3

Utilisation des composants basés sur des templates

Si vous avez déjà défini une ou plusieurs connexions JBuilder vers des
sources de données, cliquez sur le bouton Choisir une connexion existante
et sélectionnez la connexion voulue. La plupart des Propriétés de la
connexion sont automatiquement remplies.
Pour tester la validité de votre connexion JDBC, cliquez sur le bouton
Tester la connexion. Le personnaliseur signale si la connexion a réussi ou
non.
Après avoir réussi une connexion, cliquez sur l’onglet Transfert.

Transfert

3-4

Fichier requête

Document de requête XML. L’utilisation d’un
document de requête XML est facultative. Si vous
utilisez un document de requête XML, vous n’avez
aucun autre champ à remplir dans le personnaliseur,
sauf le nom du Fichier de sortie et facultativement le
nom du Fichier XSL, puisque le document de
requête spécifie vos propriétés. Pour avoir plus
d’informations sur la création et l’utilisation d’un
document de requête XML, consultez “Document de
requête XML”, page 3-9.

Fichier de sortie

Spécifiez le nom du fichier XML ou HTML à
générer.

Guide du développeur d’applications XML

Utilisation des composants basés sur des templates

Fichier XSL

Spécifiez le nom du fichier feuille de style XSL à
utiliser pour transformer le fichier de sortie, s’il y en
a un. Si aucun fichier n’est spécifié, une feuille de
style par défaut est générée et mise dans le même
répertoire que le fichier de sortie. Le fichier XSL
généré porte le nom JBuilderDefault.xsl. Pour créer
une présentation plus personnalisée, le fichier XSL
peut être copié, puis modifié. Si vous souhaitez
modifier le fichier XSL, vérifiez que la propriété du
nom du Fichier XSL pointe vers le fichier modifié.
Remarquez que JBuilder ne remplace pas une feuille
de style par défaut existante.

Format de colonne

Spécifiez sous quelle forme faire apparaître les
colonnes de la source de données dans le fichier
XML généré, éléments ou attributs.

Format de sortie

Spécifiez si le fichier généré doit avoir le format
XML ou HTML.

Noms d’élément

Spécifiez le nom de l’élément Document et un autre
pour l’élément Ligne.

Ignorer les valeurs
nulles

Pour que les valeurs nulles soient ignorées dans
votre sortie XML, cochez cette case. Si cette case à
cocher reste vide, “null” sera utilisé en tant
qu’espace réservé.

Nom de table

Spécifiez le nom de la table contenant les données
qui vous intéressent.

Clés

Spécifiez la ou les clés qui identifient la ou les lignes
de la table à insérer dans le document XML généré.
Pour ajouter une clé, cliquez sur le bouton Ajouter.
Dans l’éditeur de la propriété tableau de type chaîne
qui apparaît, cliquez sur le bouton Ajouter pour
ajouter un élément au tableau. Modifiez le nom de
l’élément ajouté dans une colonne du tableau.
Continuez à ajouter dans l’éditeur toutes les clés
dont vous avez besoin. Si vous spécifiez un nom de
table sans préciser de clé, toutes les lignes de la table
seront renvoyées.

Utilisation des composants de bases de données XML de JBuilder

3-5

Utilisation des composants basés sur des templates

DefaultParams

Dans le cas d’une requête paramétrée, ce champ
permet de spécifier un paramètre par défaut. Si vous
précisez une valeur dans le champ Clé, vous devez
spécifier un paramètre par défaut pour la ou les
colonnes constituant une clé. Pour ajouter un
paramètre par défaut à votre requête, cliquez sur le
bouton Ajouter. Dans la boîte de dialogue
Paramètres par défaut qui apparaît, cliquez sur le
bouton Ajouter pour ajouter un paramètre par
défaut. Dans la ligne vide ajoutée, spécifiez le nom
du paramètre en tant que Nom du paramètre et la
valeur du paramètre en tant que Valeur du
paramètre. Par exemple, si la clé est EMP_NO,
spécifiez EMP_NO en tant que Nom du paramètre et
spécifiez la valeur à trouver dans la colonne
EMP_NO. Pensez à placer les valeurs du type chaîne
entre apostrophes. Pour plus d’informations sur
l’ajout de paramètres par défaut, voir “Spécification
des paramètres”, page 3-7.

Le personnaliseur de XQuery a un aspect très semblable. Comme XTable, il a
une page Connexion JDBC :

Remplissez cette page comme vous le feriez pour XTable et testez la
connexion.

3-6

Guide du développeur d’applications XML

Utilisation des composants basés sur des templates

La page Transfert du personnaliseur de XQuery diffère de celle de XTable
par le champ SQL qui remplace les champs Nom de table et Clés :

Dans le champ SQL, vous pouvez spécifier n’importe quelle instruction
SQL. Si votre instruction SQL est une requête paramétrée, vous devez
spécifier un paramètre par défaut pour chaque variable paramétrée.

Spécification des paramètres
Si votre requête est paramétrée, vous devez spécifier une valeur de
paramètre par défaut avant de générer le fichier XML ou HTML. A
l’exécution, vous pouvez remplacer la valeur du paramètre par défaut par
une autre valeur. Si aucun paramètre n’est fourni à l’exécution, le
paramètre par défaut est utilisé.
L’exemple de requête ci-dessous montre comment utiliser les paramètres
et les paramètres par défaut :
Select emp_name from employee where emp_no = :emp_no

Disons que la table Employee contient les entrées suivantes :
emp_no

emp_name

1

Tom

2

Dick

Il y a deux façons de fournir le paramètre :emp_no. Vous pouvez utiliser un
paramètre par défaut et/ou un paramètre fourni à l’exécution. Voici les
possibilités
• Aucun paramètre d’aucune sorte n’est spécifié. Résultat : la requête
renvoie une erreur.

Utilisation des composants de bases de données XML de JBuilder

3-7

Utilisation des composants basés sur des templates

• defaultParams a la valeur :emp_no = 1 et aucun paramètre d’exécution
n’est spécifié. Résultat : la requête renvoie Tom.
• defaultParams a la valeur :emp_no = 1 et un paramètre d’exécution a la
valeur :emp_no = 2. Résultat : la requête renvoie Dick.
En d’autres termes, si aucun paramètre n’est spécifié, le paramètre par
défaut est utilisé. Si un paramètre est spécifié à l’exécution, il est utilisé à la
place du paramètre par défaut, dont la valeur est ignorée. Les noms des
paramètres distinguent les minuscules des majuscules.

Transfert vers XML ou HTML
Pour voir les résultats de vos définitions de propriétés, cliquez sur le
bouton Transférer. Si vous décidez de créer un fichier XML, vous pouvez
cliquer sur le bouton Voir DOM (Document Object Model) :

3-8

Guide du développeur d’applications XML

Utilisation des composants basés sur des templates

Si vous avez choisi de générer un fichier HTML, un clic sur Voir HTML
affiche le document HTML résultant :

Utilisation de l’inspecteur
Vous pouvez définir également ces propriétés dans l’Inspecteur du
concepteur. Pour ouvrir l’Inspecteur,
• Sélectionnez l’onglet Conception dans le volet contenu. L’inspecteur est
affiché à droite du concepteur.
• Cliquez sur le champ à droite d’une propriété et entrez les informations
appropriées.

Document de requête XML
Une autre façon de définir la connexion et les options de transfert consiste
à utiliser un document de requête XML. Pour créer un document de
requête XML et le spécifier en tant que valeur du champ Fichier requête,
utilisez le personnaliseur de composants ou l’Inspecteur. Voici un
exemple de document de requête pour un XTable :
<Query>
<Options
OutputType=XML"
ColumnFormat="AsElements"
IgnoreNulls="True"
DocumentElement="MyDoc"
RowElement="YourRow">
<Connection
Url="jdbc:odbc:foodb"
Driver="sun.jdbc.odbc.JdbcOdbcDriver"
User="me"
Password="ok">
<Params>
<Param Name=":Part" Default="’ab-c’">

Utilisation des composants de bases de données XML de JBuilder

3-9

Utilisation des composants basés sur des templates

<Param Name=":Number" Default="2">
</Params>
<table name="LINES">
<Key Name="Number">
<Key Name="Part">
</table>
</Query>

La requête ci-dessus doit renvoyer le document XML suivant :
<MyDoc>
<YourRow>
<col1>des données</col1>
<col2>des données</col2>
<Number>2</Number>
<Part>ab-c</Part>
</YourRow>
<YourRow>
<col1>d’autres données</col1>
<col2>d’autres données</col2>
<Number>2</Number>
<Part>ab-c</Part>
</YourRow>
</MyDoc>
Remarque

Si le format des colonnes du document de requête a la valeur
“AsAttributes”, alors col1, col2, Number et Part seraient des attributs de
YourRow.
Voici un exemple de document de requête pour un XQuery :
<Query>
<Options
OutputType="XML"
ColumnFormat="AsElements"
IgnoreNulls="True"
DocumentElement="MyDoc"
RowElement="YourRow">
<Connection
Url="jdbc:odbc:foodb"
Driver="sun.jdbc.odbc.JdbcOdbcDriver"
User="me"
Password="ok">
<Params>
<Param Name=":Part" Default="’ab-c’">
<Param Name=":Number" Default="2">
</Params>
<Sql Value="SELECT * FROM LINES where Number >= :Number AND Number <= :Number"/
>
<!--L’exemple ci-dessus doit utiliser une section CDATA ou un échappement avec
des références aux entités lt/gt-->
</Query>

3-10

Guide du développeur d’applications XML

Utilisation des composants basés sur des modèles

Pour obtenir un tutoriel sur l’utilisation des composants XTable et XQuery,
consultez le Chapitre 9, “Tutoriel : Transfert de données avec les
composants base de données XML basés sur des templates”.

Utilisation des composants basés sur des modèles
Dans les composants basés sur des modèles, JBuilder utilise XML-DBMS.
XML-DBMS, middleware de transfert de données entre des documents
XML et des bases de données relationnelles, affecte des objets à la base de
données en utilisant une affectation d’objets relationnels. XML-DBMS est
redistribué avec JBuilder et se trouve dans le répertoire XML du CD
JBuilder. Vous pouvez trouver la documentation XML-DBMS dans le
répertoire jbuilder5\extras\xmldbms\docs.
Pour effectuer réellement le transfert de données XML-DBMS, JBuilder
fournit deux beans : XMLDBMSTable et XMLDBMSQuery, qui sont les troisième et
quatrième beans sur la palette de composants au-dessus du concepteur de
JBuilder. XMLDBMSTable utilise une table spécifiée et des clés en tant que
critère de sélection du transfert, alors que XMLDBMSQuery se sert des résultats
d’une requête SQL.
Pour obtenir un tutoriel sur l’utilisation des composants XML basés sur
des modèles, consultez le Chapitre 8, “Tutoriel : Transfert de données
avec les composants base de données XML basés sur des modèles”.
Pour mettre un bean dans votre application, choisissez l’onglet
Conception et cliquez sur l’onglet XML de la palette de composants.
Choisissez un bean et mettez-le dans le concepteur.

XML-DBMS
La solution XML-DBMS se compose de :
• Une base de données relationnelle avec un pilote JDBC
• Un document XML servant à l’entrée et à la sortie des données
• Un document d’affectation XML qui définit l’affectation entre la base
de données et le document XML
• Une bibliothèque contenant un ensemble de méthodes API pour
transférer des données entre la base et le document XML
Au cœur de XML-DBMS se trouve le document d’affectation spécifié dans
XML. Il est défini par un langage d’affectation et est documenté dans la
distribution de XML-DBMS. Pour avoir plus d’informations, consultez la
documentation et les sources XML-DBMS.

Utilisation des composants de bases de données XML de JBuilder

3-11

Utilisation des composants basés sur des modèles

Les éléments principaux du langage d’affectation incluent :

ClassMap
ClassMap est la racine de l’affectation. Un ClassMap affecte une table de
base de données à des éléments XML qui contiennent d’autres éléments
(modèles de contenu d’éléments). En outre, un ClassMap imbrique
PropertyMaps et RelatedClassMap.

PropertyMap
PropertyMap affecte des éléments uniquement PCDATA et des attributs
de valeur simple à des colonnes spécifiques dans une table de base de
données.

RelatedClassMap
RelatedClassMap affecte des relations entre classes. Cela se fait par
référence à un autre ElementType (par exemple, ClassMap) déclaré
quelque part ailleurs et par spécification de la base de la relation.
L’affectation spécifie la clé primaire et la clé étrangère utilisées dans la
relation, et indique laquelle des deux tables contient la clé primaire.
Remarquez que l’identificateur CandidateKey sert à représenter une clé
primaire.
En outre, la génération de clé est prise en charge. Dans certains scénarios,
les clés sont des données métier réelles telles que NoClient ou NoEmp.
Dans d’autres, il faut créer des clés juste pour les besoins de la liaison.
Cela est possible en intégrant un attribut généré à la définition de la clé
respective.
Si nécessaire, un orderColumn facultatif avec génération automatique de
clé est également pris en charge par l’affectation.

MiscMaps et Options
Outre les affectations ci-dessus, il y en a quelques autres pour gérer les
valeurs nulles, ignorer un élément racine sans données en correspondance
dans la base de données mais servant uniquement d’élément de
regroupement, et les formats de date et d’heure.

JBuilder et XML-DBMS
JBuilder assure la prise en charge XML-DBMS suivante :





3-12

Expert XML-DBMS
XModelBean : classe de base pour XMLDBMSTable et XMLDBMSQuery
XMLDBMSTable : transfert des données sur la base d’une table et d’une clé
XMLDBMSQuery : transfert des données sur la base d’un ensemble de
résultats défini par une requête SQL

Guide du développeur d’applications XML

Utilisation des composants basés sur des modèles

Expert XML-DBMS
L’expert XML-DBMS de JBuilder fait partie de la solution basée sur des
modèles et sur l’affectation qui utilise l’API Map_Factory_DTD dans
XML-DBMS. A partir d’une DTD donnée, l’expert génère un document
template d’affectation et un fichier script SQL pour créer les métadonnées.
Dans tous les cas, sauf les plus simples, le document d’affectation ne sert
que de point de départ à la création de l’affectation nécessaire. Le script
SQL, ensemble d’instructions Create Table, doit être également modifié
puisque XML-DBMS ne régénère pas les scripts SQL à partir du document
d’affectation modifié.
Actuellement, XML-DBMS ne prend pas en charge la création d’un fichier
d’affectation à partir d’un schéma de base de données. Si vous commencez
par une base de données existante, vous devez créer manuellement le
fichier d’affectation. Si vous avez le document XML, vous pouvez l’ouvrir
et cliquez dessus avec le bouton droit pour générer la DTD. Ensuite, vous
pouvez utiliser la DTD générée pour générer le fichier d’affectation et le
modifier pour qu’il corresponde au schéma de la base de données.
Pour utiliser l’expert XML-DBMS,

1 Sélectionnez Fichier|Nouveau, puis cliquez sur l’onglet XML de la
galerie d’objets.
2 Double-cliquez sur l’icône XML-DBMS.

Utilisation des composants de bases de données XML de JBuilder

3-13

Utilisation des composants basés sur des modèles

Dans la première page, vous pouvez spécifier la connexion JDBC vers
la base de données contenant les données à utiliser pour créer un
document XML. Elle contient les champs suivants :
Pilote

Dans la liste déroulante, spécifiez le pilote
JDBC à utiliser. Les pilotes affichés en noir sont
ceux que vous avez installés. Les pilotes
affichés en rouge ne sont pas disponibles sur
votre système.

URL

Spécifiez l’URL de la source de données
contenant les informations à utiliser pour créer
un document XML. Quand vous cliquez dans
le champ, il affiche le masque que vous devez
utiliser pour spécifier l’URL en fonction du
pilote JDBC choisi.

Nom d’utilisateur

Si nécessaire, entrez le nom de l’utilisateur de
la source de données.

Mot de passe

Si nécessaire, entrez le mot de passe d’accès à
la source de données.

Propriétés avancées

Ajoutez toutes les propriétés avancées dont
vous avez besoin. Un clic sur le bouton points
de suspension affiche la boîte de dialogue
Propriétés avancées permettant d’ajouter des
propriétés.

Si vous avez déjà défini une ou plusieurs connexions JBuilder vers des
sources de données, cliquez sur le bouton Choisir une connexion
existante et sélectionnez la connexion voulue. La plupart des Propriétés
de la connexion sont automatiquement remplies.
Pour tester la validité de votre connexion JDBC, cliquez sur le bouton
Tester la connexion. Le personnaliseur signale si la connexion a réussi
ou non.

3-14

Guide du développeur d’applications XML


Aperçu du document xml.pdf - page 1/130
 
xml.pdf - page 2/130
xml.pdf - page 3/130
xml.pdf - page 4/130
xml.pdf - page 5/130
xml.pdf - page 6/130
 




Télécharger le fichier (PDF)


xml.pdf (PDF, 1.5 Mo)

Télécharger
Formats alternatifs: ZIP



Documents similaires


xml
stage cnam hubert monin rapport 2003 01
coursexcel2010 notions de base etape par etape 2
coursexcel2010
excel07cb
coursword2010

Sur le même sujet..