Nach Export wird SAXParseException nicht mehr geworfen

sylo

Bekanntes Mitglied
Hi zusammen

folgendes Problem:

Ich habe ein Programm geschrieben, welches eine XML-Datei ausliest und sie in einer TextArea ausgibt. Wenn das XML-Dokument nicht valide ist, wird an dieser Stelle:
Java:
domXML = (Document) db.parse(new InputSource(new StringReader(xmlString)));
eine SAXParseException geworfen. Diese liefert mir die Zeilennummer des Fehlers, welche ich später weiterverarbeite. Dies funktioniert alles soweit.

Wenn ich aber mein Tool exportiere, dann wirft er an der oben genannten Stelle keine Exception. Er durchläuft die Methode parse(), zeigt mir auf der Konsole den Fehler an (Der DOM schreibt wohl mit system.out.print() den Fehler auf die Konsole) aber wirft die Exception nicht.

Hat einer ne Idee?

Grüße
sylo
 

sylo

Bekanntes Mitglied
Hi

als Nachtrag. Ich benutze Eclipse. Muss man da evtl. was in der "Run Configuration" ändern? Vielleicht zusätzliche Attribute?

Darüberhinaus steht in der API folgendes:
This exception may include information for locating the error in the original XML document, as if it came from a Locator object. Note that although the application will receive a SAXParseException as the argument to the handlers in the ErrorHandler interface, the application is not actually required to throw the exception; instead, it can simply read the information in it and take a different action.
Heißt das, dass die Exception nicht unbedingt geworfen werden muss? Wenn ja wovon ist es abhängig?

Grüße
sylo
 

sylo

Bekanntes Mitglied
Hi zusammen

habe mittlerweile folgendes heraus bekommen.

Wenn ich um die parse-Methode ein try-catch-Block mache und die SaxParseException abfange, dann funktioniert das, wie oben erwähnt, unter Eclipse, aber nicht nach Export des Projektes.

Wenn ich aber meinem DocumentBuilder vorher einen ErrorHandler zuweise, also sowas:
Java:
db.setErrorHandler(new ErrorHandler() {

                public void warning(SAXParseException exception) throws SAXException {
                    // TODO Auto-generated method stub

                }

                public void fatalError(SAXParseException exception) throws SAXException {
                    // TODO Auto-generated method stub

                }

                public void error(SAXParseException exception) throws SAXException {
                    // TODO Auto-generated method stub
                    
                }
            });
dann wird die Exception unter Eclipse weiterhin unter dem try-catch-Block abfangen, nach dem Export springt er aber, wenn XML-Dokument ungültig, in die error-Methode des Errorhandlers.

Somit bekomme ich die Zeilennummer heraus und mein Problem wäre gelöst.
Ich verstehe aber dieses Verhalten nicht. Warum benutzt er unter Eclipse try-catch und nach export den Errorhandler?

Grüße
sylo
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
wofus JSON filtern nach bestimmten Wert XML & JSON 7
Q Konvertierung von json zum Java Objekt nach vorgegebenem Schema XML & JSON 3
R Handler-Wechsel, SAX Parser bricht nach 8192 Byte ab XML & JSON 5
I Newlines nach childs erste ebene (dom) XML & JSON 3
K Docbook tranformieren nach LaTeX XML & JSON 2
T XPath Problem: finden einer Node nach Attributswert XML & JSON 2
N xml nach Value durchsuchen XML & JSON 8
W String nach XML nach String verwandeln XML & JSON 4
D XML nach BME Cat Norm prüfen? XML & JSON 4
I Editor, der nur Elemente einfuegt, die nach xsd zulaessig XML & JSON 2
S leading whitespaces nach einem XMLOutputter XML & JSON 9
A Point2D.double nach XML XML & JSON 2
A html-File nach txt-File konvertieren XML & JSON 15
T Newbie Frage. CSS Stylesheet einlesen und suchen nach Tags XML & JSON 6
A Auf der Suche nach Bibliotheken oder wie parsen? XML & JSON 15
M RSS nach WML XML & JSON 9
V Datenverlust nach sortieren (nur beim serialisieren) XML & JSON 4
H Nach einem Attribut suchen und dann löschen XML & JSON 3
M jaxb binding nach set XML & JSON 9
N JSON export String Unicode? XML & JSON 6
F Wikipediaeintrag XML-Export.. XML & JSON 4
G XML Export und Import eines Files. gibts Tutorials o.ä? XML & JSON 2
J wsdl boolean wird ignoriert XML & JSON 2
H XML Element `Class` wird nicht gelesen XML & JSON 2
H Apache fop1.1 -> Funktion last() wird nicht erkannt XML & JSON 0
E Was jemand was ein XML-Viewer ist und wie es verwendet wird? XML & JSON 1
J XML - Datei wird nicht ganz angezeigt XML & JSON 2
K Main Methode wird nicht aufgerufen XML & JSON 15
I XML wird mit Unterstrich gespeichert XML & JSON 3
T XML-Parsing: Whitespace zw. Elementen wird nicht ignoriert XML & JSON 4
8 SAXParser Problem, startElement wird nicht ausgeführt XML & JSON 2
H Browser-Aufruf bei dem XML-Code übertragen wird XML & JSON 10
P SAXBuilder wird von Eclipse nicht als ObjektTyp erkannt XML & JSON 3
D XML Datei wird nicht gefunden XML & JSON 4

Ähnliche Java Themen

Neue Themen


Oben