Hi,
das Thema betrifft den Umgang mit auftretenden Exceptions beim Lesen von XML-Dateien mit dem XMLDecoder.
Habe eine einfache Methode zum Lesen aus einer XML-Datei mit Hilfe des XML-Decoders geschrieben, funktioniert auch prächtig. Um jetzt auftretende Fehler abzufangen, soll das ganze mit try-catch-Anweisungen versehen werden. Dabei habe ich folgenden Problem:
Wenn ich versuche, eine möglichen SAXParseException abzufangen und dazu die Anweisung
in einen einzelne try-catch-Block setze, wird in den folgenden Zeile die Variable file nicht mehr erkannt. Setze ich dagegen alle file-Anweisungen in einen gemeinsamen try-catch-Block, kann ich die SAXParseException nicht mehr auslesen.
Variante 1:
Auftretener Fehler:
java.lang.Error: Unresolved compilation problems:
file cannot be resolved
file cannot be resolved
___________________________
Variante 2:
Auftretender Fehler:
java.lang.Error: Unresolved compilation problems:
Unreachable catch block for SAXParseException. This exception is never thrown from the try statement body
Unreachable catch block for ParserConfigurationException. This exception is never thrown from the try statement body
Wer kann mir weiterhelfen, was mache ich falsch ????[/code]
das Thema betrifft den Umgang mit auftretenden Exceptions beim Lesen von XML-Dateien mit dem XMLDecoder.
Habe eine einfache Methode zum Lesen aus einer XML-Datei mit Hilfe des XML-Decoders geschrieben, funktioniert auch prächtig. Um jetzt auftretende Fehler abzufangen, soll das ganze mit try-catch-Anweisungen versehen werden. Dabei habe ich folgenden Problem:
Wenn ich versuche, eine möglichen SAXParseException abzufangen und dazu die Anweisung
Code:
XMLDecoder file = new XMLDecoder(new BufferedInputStream(new FileInputStream(filename)));
in einen einzelne try-catch-Block setze, wird in den folgenden Zeile die Variable file nicht mehr erkannt. Setze ich dagegen alle file-Anweisungen in einen gemeinsamen try-catch-Block, kann ich die SAXParseException nicht mehr auslesen.
Variante 1:
Code:
public void readXML(Object result, String filename) {
try {
XMLDecoder file = new XMLDecoder(new BufferedInputStream(new FileInputStream(filename)));
} catch (SAXParseException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} catch (ParserConfigurationException e) {
e.printStackTrace();
}
result = file.readObject();
file.close();
}
Auftretener Fehler:
java.lang.Error: Unresolved compilation problems:
file cannot be resolved
file cannot be resolved
___________________________
Variante 2:
Code:
public void readXML(Object result, String filename) {
try {
XMLDecoder file = new XMLDecoder(new BufferedInputStream(new FileInputStream(filename)));
result = file.readObject();
file.close();
} catch (SAXParseException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} catch (ParserConfigurationException e) {
e.printStackTrace();
}
}
Auftretender Fehler:
java.lang.Error: Unresolved compilation problems:
Unreachable catch block for SAXParseException. This exception is never thrown from the try statement body
Unreachable catch block for ParserConfigurationException. This exception is never thrown from the try statement body
Wer kann mir weiterhelfen, was mache ich falsch ????[/code]