Mobile

Java [XML] The content of elements must consist of well-formed character data or markup.

Elcrian

Commander
Registriert
Feb. 2008
Beiträge
2.493
Hallo,
"The content of elements must consist of well-formed character data or markup." erscheint an folgender Zeile im Code:

Code:
try{
		builder = DocumentBuilderFactory.newInstance().newDocumentBuilder();
		if (this.getClass().getClassLoader().getResourceAsStream("LibaryMorse.xml") == null){
			System.out.println("DatabaseXML not found!");
		}
		else {
			libary = [COLOR="Red"][B]builder.parse(this.getClass().getClassLoader().getResourceAsStream("LibaryMorse.xml"));[/B][/COLOR]
		System.out.println("XML-Version: "+libary.getXmlVersion());
		}	
	 }

Das XML-Layout sieht wie folgt aus:
Code:
<?xml version="1.0"?>
<LibaryMorse>
  <char2>
  	<a>0 1</a>
  	<b>1 0 0 0</b>
  </char2>
</LibaryMorse>

Sinn ist der Zugriff auf eine XML-Datenbank zum Auslesen in binär dargestellter Zeichen, in diesem Falle der Einfachkeit halber Morse-Code.

Mein gesamter Vorgang (nur um zu überprüfen ob ich dieses Internet-Anweisungen-Konglomerat richtig verstanden habe):
  • DocumentBuilder-Instanz erstellen
  • XML-Datenbank verifzieren via getResourceAsStream
  • mit dem DocumentBuilder in Document-Object parsen
  • ---- später ----
  • einer NodeList die Elemente des XML-Documents via getElementsByTagName zuweisen
  • dieses NodeList-Element in ein Node parsen
  • diesen Node via getNodeValue() als String ausgeben
  • -> glücklich

Danke!
 
Liebe mit-Nerds, weiß denn niemand einen Rat?
 
Hmm, die Meldung ist eindeutig.

Das eingelesene XML (wird wirklich genau diese Datei eingelesen und nicht ein zufällig gleich benannte) ist nicht wohl geformt, d.h. es verstößt gegen grundsätzliche XML-Syntax

Die Frage ist also warum dein XML nicht wohlgeformt ist. Das einzig Ungewöhnliche was mir auffällt ist, dass du ein Tag mit einer Zahl hast - ich bin mir nicht sicher, ob das erlaubt ist.

Ansonsten sieht es eigentlich gut aus, Tag sind nicht "interleaved", werden ordentlich geöffnet und geschlossen mit dem selben Tagnamen.

Was mir noch in den Augen wehtut, ist dass du "Library" falsch schreibst, aber daran wird es nicht liege :)
 
Es war ein verdammt (!) dummer Fehler: Ein XML-Tag war nicht geschlossen...

Danke trotzdem, der Mist rennt nun wunderbar. ;)
 
Zurück
Oben