Hi ich habe ein Programm geschrieben wo ich XML Dateien entpacke und in die Datenbank reinschreibe. Dafür habe ich einen DOM aufgebaut. Ich bekomme aber den Fehler:
java.io.FileNotFoundException: C:\metin8y\workspace\LogFileArchiveScanner\XD\CSD_Backward1.dtd (Das System kann die angegebene Datei nicht finden).
ich weiss leider nicht wo ich diese DTD. datei finden kann, deshalb meine Frage, kann ich das irgendwie überspringen, sodass er diesen Fehler ignoriert und einfach fortsetzt. Ich füge einen Teil vom Code ein wo der Fehler erscheint.
java.io.FileNotFoundException: C:\metin8y\workspace\LogFileArchiveScanner\XD\CSD_Backward1.dtd (Das System kann die angegebene Datei nicht finden).
ich weiss leider nicht wo ich diese DTD. datei finden kann, deshalb meine Frage, kann ich das irgendwie überspringen, sodass er diesen Fehler ignoriert und einfach fortsetzt. Ich füge einen Teil vom Code ein wo der Fehler erscheint.
Java:
public void XML(File input) throws IOException {
// if (gui.c.getSelectedItem().equals("XD")) {
try {
DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
dbFactory.setValidating(true);
DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();
dBuilder.setErrorHandler(new ErrorHandler() {
@Override
public void warning(SAXParseException arg0) throws SAXException {
// TODO Auto-generated method stub
}
@Override
public void fatalError(SAXParseException arg0) throws SAXException {
System.err.println(arg0.getMessage());
}
@Override
public void error(SAXParseException arg0) throws SAXException {
// TODO Auto-generated method stub
}
});
dBuilder.setEntityResolver(null);
Document doc = dBuilder.parse(input);
System.out.println("Root element :" + doc.getDocumentElement().getNodeName());
selection = gui.c.getSelectedItem();
NodeList nList = doc.getElementsByTagName("Fin");
System.out.println("----------------------------");
String fin = "";
for (int i = 0; i < nList.getLength(); i++) {
Node nNode = nList.item(i);
if (nNode != null && nNode.getNodeType() == Node.ELEMENT_NODE) {
if (!nNode.getTextContent().equals(""))
fin = nNode.getTextContent();
}
}
System.out.println("FIN:" + fin);
db.update(fin, input.getName());
} catch (ParserConfigurationException e) {
e.printStackTrace();
} catch (SAXException e) {
if (!e.getMessage().contains("Ungültiges XML-Zeichen"))
System.err.println(e.getMessage());
e.printStackTrace();
}