Bonjour,
Je débute dans l'utilisation de Castor, et je rencontre un petit soucis dans la hiérarchisation de mes données...
Voici mes classes Java :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65 package fr.test.castor.ObjetXML; import java.util.ArrayList; public class StructurePERSONNE { private String nom; private String prenom; private ArrayList<StructureADRESSE> adresse; // constructors /** * constructeur de la classe * @param nom * @param prenom * @param adresse */ public StructurePERSONNE(String nom, String prenom, ArrayList<StructureADRESSE> adresse) { this.nom = nom; this.prenom = prenom; this.adresse = adresse; } /** * constructeur de la classe */ public StructurePERSONNE() { } // getters and setters /** * @return the nom */ public String getNom() { return nom; } /** * @param nom the nom to set */ public void setNom(String nom) { this.nom = nom; } /** * @return the prenom */ public String getPrenom() { return prenom; } /** * @param prenom the prenom to set */ public void setPrenom(String prenom) { this.prenom = prenom; } /** * @return the adresse */ public ArrayList<StructureADRESSE> getAdresse() { return adresse; } /** * @param adresse the adresse to set */ public void setAdresse(ArrayList<StructureADRESSE> adresse) { this.adresse = adresse; } }J'ai donc une classe StructurePERSONNE qui contient un élément adresse étant lui même une ArrayList d'éléments de type StructureADRESSE.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63 package fr.test.castor.ObjetXML; public class StructureADRESSE { private String rue; private String codePostal; private String ville; // constructors /** * constructeur de la classe * @param rue * @param codePostal * @param ville */ public StructureADRESSE(String rue, String codePostal, String ville) { this.rue = rue; this.codePostal = codePostal; this.ville = ville; } /** * constructeur de la classe */ public StructureADRESSE() { } // getters and setters /** * @return the rue */ public String getRue() { return rue; } /** * @param rue the rue to set */ public void setRue(String rue) { this.rue = rue; } /** * @return the codePostal */ public String getCodePostal() { return codePostal; } /** * @param codePostal the codePostal to set */ public void setCodePostal(String codePostal) { this.codePostal = codePostal; } /** * @return the ville */ public String getVille() { return ville; } /** * @param ville the ville to set */ public void setVille(String ville) { this.ville = ville; } }
Il me faut obtenir en sortie un XML qui ressemble à :
or avec mon fichier de mapping :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 <PERSONNE> <NOM>LeHaricot</NOM> <PRENOM>Toto</PRENOM> <ADRESSE> <ITEM> <RUE>rue du Havre</RUE> <CODE_POSTAL>92100</CODE_POSTAL> <VILLE>Boulogne Billancourt</VILLE> </ITEM> <ITEM> <RUE>rue des Couches Tards</RUE> <CODE_POSTAL>75001</CODE_POSTAL> <VILLE>Paris</VILLE> </ITEM> </ADRESSE> </PERSONNE>
je n'obtient que :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE databases PUBLIC "-//EXOLAB/Castor Object Mapping DTD Version 1.0//EN" "http://castor.org/mapping.dtd"> <mapping> <description>Mapping de StructurePERSONNE</description> <class name="fr.test.castor.ObjetXML.StructurePERSONNE"> <map-to xml="PERSONNE" /> <field name="nom"> <bind-xml name="NOM" /> </field> <field name="prenom"> <bind-xml name="PRENOM" /> </field> <field name="adresse" collection="arraylist" type="fr.ugap.sapconnexion.castor.ObjetXML.StructureADRESSE" > <bind-xml name="ADRESSE" /> </field> </class> <class name="fr.test.castor.ObjetXML.StructureADRESSE"> <field name="rue"> <bind-xml name="RUE"/> </field> <field name="codePostal"> <bind-xml name="CODE_POSTAL"/> </field> <field name="ville"> <bind-xml name="VILLE"/> </field> </class> </mapping>
c'est où que j'ai tout faux ???
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 <PERSONNE> <NOM>LeHaricot</NOM> <PRENOM>Toto</PRENOM> <ADRESSE> <RUE>rue du Havre</RUE> <CODE_POSTAL>92100</CODE_POSTAL> <VILLE>Boulogne Billancourt</VILLE> </ADRESSE> <ADRESSE> <RUE>rue des Couches Tards</RUE> <CODE_POSTAL>75001</CODE_POSTAL> <VILLE>Paris</VILLE> </ADRESSE> </PERSONNE>
Partager