J'ai un objet Employé avec les attributs :

String nom, String Prenom, List<Facture>

Un objet Facture avec les attributs :

String numero, String type

Je parcours un fichier XML et je récupère les informations pour remplir mes objets, à la fin du parse du fichier XML j'ai une liste d"employé

J'ai un soucis pour remplir ma List<Facture>

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
if (xmlEvent.isStartElement()){
                    StartElement startElement = xmlEvent.asStartElement();
                    if(startElement.getName().getLocalPart().equals("facture")){
 
                        facture = new Facture();
 
 
                        Attribute idAttr = startElement.getAttributeByName(new QName("numerofacture"));
                        if(idAttr != null){
                            facture.setNumero(idAttr.getValue());
 
 
                        }
 
 
                        Attribute idAttr2 = startElement.getAttributeByName(new QName("type"));
                        if(idAttr2 != null){
                            facture.setType(idAttr2.getValue());
                            }
 
 
 
                    }
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
if(xmlEvent.isEndElement()){
                    EndElement endElement = xmlEvent.asEndElement();
                    if(endElement.getName().getLocalPart().equals("facture")){
                        facList.add(facture);  
 
 
                    }
                                    }
 
 
 
                    if(xmlEvent.isEndElement()){
                        EndElement endElement = xmlEvent.asEndElement();
                        if(endElement.getName().getLocalPart().equals("employe)){
                            emp.setListActe(facList);
                            empList.add(emp);
 
 
                        }
                    }
                }
Le problème c'est que dans mon objet employé, j'ai les factures de tout on XML et non pas seulement d'un seul employé


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
Liste emp = [numero= 1 type= acte1,* numero= 2 type= acte1_1,* numero= 1 type= XXXXXX,* numero= 2 type= YYYYYY]
Liste emp = [ numero= 1 type= acte1,* numero= 2 type= acte1_1,* numero= 1 type= XXXXXX,* numero= 2 type= YYYYYY]]
resultat que je voudrais :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
Liste emp = [numero= 1 type= acte1,* numero= 2 type= acte1_1]
Liste emp = [numero= 1 type= XXXXXX,* numero= 2 type= YYYYYY]]

Et pourquoi quand je fais ça et que j'affiche faclist, ma liste de facture est vide ?

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
if(xmlEvent.isEndElement()){
                        EndElement endElement = xmlEvent.asEndElement();
                        if(endElement.getName().getLocalPart().equals("employe)){
                            emp.setListActe(facList);
                            empList.add(emp);
                            facList.clear();

Merci d'avance