# JDOM SAXBuilder Validationschema - Problem



## xorz4u (21. Dez 2006)

Hallo,

ich suche nun schon eine Weile, doch ich finde einfach nicht, was mein Problem lösen könnte.
Habe folgende .xml, 

```
<?xml version="1.0"?>

<personen>
  <nutzer1 vorname="Max" name="Musterman" alter="85"/>
</personen>
```

und will den vornamen usw. auslesen,
doch mit:

```
...
SAXBuilder builder = new SAXBuilder( "org.apache.xerces.parsers.SAXParser", true );
Document doc = builder.build( xmlfile );
Element n = doc.getRootElement();
Element nutzer= n.getChild( "nutzer1" );
String nutzer1= n.getAttributeValue( "vorname" );
...
```

leider kriege ich keine Ausgabe und wenn ich das Validationsschema auf false setze, kommt wie ertwartet Null. Ich bin mir aber 100%ig sicher, dass der Eintrag existiert.
Oder liegt das Problem wo anders?
Bedanke mich für jede Hilfe.



edit:
habe weitergesucht aber noch nichts gefunden. Weiß aber nun, dass es mit:

```
<?xml version="1.0"?> 

<personen> 
  <nutzer1 vorname="Max" name="Musterman" alter="85"> 
  </nutzer1>
</personen>
```

funktioniert aber ich kriege die xml nur wie oben erwähnt. Scheint also wirklich am Validationsschema zu liegen, oder?


----------



## xorz4u (21. Dez 2006)

kann mir da keiner helfen oder eine Alternative anbieten wie ich es sonst noch an die daten komme? Habe mich erst vor kurzem in jdom eingelesen und daher nicht viel Erfahrung. Java mache ich auch erst seit ein paar Monaten.


----------



## Roar (21. Dez 2006)

> ...
> SAXBuilder builder = new SAXBuilder( "org.apache.xerces.parsers.SAXParser", true );
> Document doc = builder.build( xmlfile );
> Element n = doc.getRootElement();
> ...


wie wärs mit nutzer.getAttributeValue und nich n.getAttributeValue :?:


----------



## xorz4u (21. Dez 2006)

es ist nicht der originalquellcode, habe es nur ein wenig "vereinfacht" dargestellt.
Ne Fehlermeldung bekomme ich nicht, kann aber das Element in diesem Fall: "nutzer1" schon sehen, aber weiter komme ich einfach nicht.


----------



## Roar (21. Dez 2006)

es muss trotzdem nutzer.getAttributeValue heißen und nicht n.getAttributeValue :autsch:

edit:
ob du
   <nutzer1 vorname="Max" name="Musterman" alter="85"/> 
oder 
  <nutzer1 vorname="Max" name="Musterman" alter="85">
  </nutzer1> 
schreibst macht übrigens keinen unterschied


----------



## xorz4u (21. Dez 2006)

Doch bei mir macht es einen Unterschied.
Deshalb habe ich angenommen, dass es mit dem Validationsschema zusammenhängt.


----------



## Roar (21. Dez 2006)

- nein es macht keinen unterschied
- was für ein validationsschema? weder hast du ein schema gepostet, noch steht in dem java code was von validierung noch in der xml, noch tritt ein fehler auf
- dein java code ist einfach falsch, wie schon 2mal gesagt...


----------



## xorz4u (21. Dez 2006)

wie schon gesagt, der "richtige" code ist nicht falsch und funktioniert bei der anders aufgebauten xml-datei ohne Probleme.
Ich werde mir das ganze jetzt noch zum zigsten mal anschauen, ansonsten poste ich hier den richtigen code, dann siehst du das selbst.


----------



## xorz4u (21. Dez 2006)

Habe jetzt "alles" neu geschrieben, und es geht! dabei habe ich aber die alte Datei überschrieben und weiß nicht wo das problem lag. danke für die mühe.


----------

