Hallo,
ich möchte eine XML Datei mit JDOM auslesen, aber an einer Stelle kommt mir eine Fehlermeldung:
Exception in thread "main" java.lang.ClassCastException: org.jdom.Text
at aur.xmlMenuBean.getMenu(xmlMenuBean.java:45)
at aur.xmlMenuBean.main(xmlMenuBean.java:97)
Vielleicht kann mir jemand helfen, da ich in Sachen XML blutiger Anfänger bin. Hier der Fehler verursachende Code (hier Zeile 7 ... in der Fehlermeldung "xmlMenuBean.java:45"):
Hier noch die XML Datei, die ich auslesen möchte:
Ich weiß nun nicht, wo mein Problem liegt. Ich weiß, das der Cast auf "Element" nicht passt, aber ich weiß nicht, wie ich sonst an die Elemente unter Root ran komme. Ich befürchte, ich mache einen Grundlegenden Fehler. Aber welcher ist es?
ich möchte eine XML Datei mit JDOM auslesen, aber an einer Stelle kommt mir eine Fehlermeldung:
Exception in thread "main" java.lang.ClassCastException: org.jdom.Text
at aur.xmlMenuBean.getMenu(xmlMenuBean.java:45)
at aur.xmlMenuBean.main(xmlMenuBean.java:97)
Vielleicht kann mir jemand helfen, da ich in Sachen XML blutiger Anfänger bin. Hier der Fehler verursachende Code (hier Zeile 7 ... in der Fehlermeldung "xmlMenuBean.java:45"):
Code:
// Lesen des Wurzelelements des JDOM-Dokuments doc
Element root = doc.getRootElement();
List nav0 = root.getContent();
Iterator nav0Iterator = nav0.iterator();
while ( nav0Iterator.hasNext()){
Element nav0Element = (Element) nav0Iterator.next();
//something more to do
}
Hier noch die XML Datei, die ich auslesen möchte:
Code:
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<nav>
<menu link="nav.htm" text="Hauptmenü 1" id = "010000">
<uMenu link="nav.htm" text="Untermenü 1" id = "010100">
<uUMenü link = "nav.htm" text = "UnterUntermenü 1" id = "010101"/>
<uUMenü link = "nav.htm" text = "UnterUntermenü 2" id = "010102"/>
<uUMenü link = "nav.htm" text = "UnterUntermenü 3" id = "010103"/>
</uMenu>
<uMenu link="nav.htm" text="Untermenü 2" id = "010200">
<uUMenü link = "nav.htm" text = "UnterUntermenü 1" id = "010201"/>
<uUMenü link = "nav.htm" text = "UnterUntermenü 2" id = "010202"/>
<uUMenü link = "nav.htm" text = "UnterUntermenü 3" id = "010203"/>
</uMenu>
<uMenu link="nav.htm" text="Untermenü 3" id = "010300">
<uUMenü link = "nav.htm" text = "UnterUntermenü 1" id = "010301"/>
<uUMenü link = "nav.htm" text = "UnterUntermenü 2" id = "010302"/>
<uUMenü link = "nav.htm" text = "UnterUntermenü 3" id = "010303"/>
</uMenu>
<uMenu link="nav.htm" text="Untermenü 4" id = "010400">
<uUMenü link = "nav.htm" text = "UnterUntermenü 1" id = "010401"/>
<uUMenü link = "nav.htm" text = "UnterUntermenü 2" id = "010402"/>
<uUMenü link = "nav.htm" text = "UnterUntermenü 3" id = "010403"/>
</uMenu>
</menu>
<menu link="nav.htm" text="Hauptmenü 2" id = "020000">
//Something more ......
</menu>
</nav>
Ich weiß nun nicht, wo mein Problem liegt. Ich weiß, das der Cast auf "Element" nicht passt, aber ich weiß nicht, wie ich sonst an die Elemente unter Root ran komme. Ich befürchte, ich mache einen Grundlegenden Fehler. Aber welcher ist es?