# getChildren gibt nicht alle children zurück



## muge (19. Mai 2005)

Ich habe folgenden kleinen XML parser (mit jdom):


```
List<Element> users;

            SAXBuilder builder = new SAXBuilder();
            Document doc = builder.build("user.xml");
            Element rootElement = doc.getRootElement();
            users = rootElement.getChildren();

            Iterator<Element> it;
            it = users.iterator();
            Element e;
            while (it.hasNext()){
                e = it.next();
                System.out.println(e.getChild("name").getText());
                System.out.println(e.getChild("passwd").getText());
                System.out.println(e.getChild("expires").getText());
                List<Element> privileges;
                privileges = e.getChildren("privileges");
                System.out.println(privileges.size());
                Iterator<Element> pit;
                pit = privileges.iterator();
                Element f;
                while (pit.hasNext()){
                    f = pit.next();
                    System.out.println(f.getChild("privilege").getText());   
                }
            }
        }
```

Damit will ich das folgende File parsen:



> <users>
> <user>
> <name>Hans</name>
> <passwd>test</passwd>
> ...



Nun bekomme ich aber beim aufruf 
	
	
	
	





```
privileges = e.getChildren("privileges");
```
 nur eine Liste mit einem Element zurück (anstatt einmal 3 und einmal 4).
Das 
	
	
	
	





```
users = rootElement.getChildren();
```
 gibt mir die korrekte anzahl elemente zurück (2). Kann mir jemand sagen, was ich falsch mache?

thx


----------



## Roar (19. Mai 2005)

die rückgabe ist korrekt, da es auch nur ein privileges element gibt pro user element. was erwartest du zu bekommen?


----------



## stev.glasow (19. Mai 2005)

Jeder User hat  nur ein Element  <privileges>  diese haben dann jeweils 3 und 4 Elemente <privilege>. Klor?


----------



## muge (20. Mai 2005)

ich dachte mit getChildren direkt an die <privilege> elemente ranzukommen. Habe es jetzt hinbekommen.

Danke für die Hilfe
muge


----------

