Bonjour à tous,
J'ai un souci avec le parsing d'un document XML, parsé avec SAX:
La feature "validation" est à false (je l'ai affiché, comme vous le voyez).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 SAXParserFactory fabrique = SAXParserFactory.newInstance(); //System.err.println("Validation: "+fabrique.getFeature("http://xml.org/sax/features/validation")); // creation d'un parseur SAX SAXParser parseur = fabrique.newSAXParser(); // lecture d'un fichier XML avec un DefaultHandler File fichier = new File(fileName); SPAMHandler gestionnaire = new SPAMHandler(); parseur.parse(fichier, gestionnaire);
Les premières lignes de mon XML sont:
Et mon exécutable a BESOIN de trouver le fichier "document.dtd" dans le working directory, sinon il tente d'accéder à la DTD et crache une "FileNotFOundException"!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE exemple SYSTEM "document.dtd">
Pouvez vous m'expliquer pourquoi SAX cherche automatiquement la DTD dans le working directory svp? Quelles seraient les options pour me sortir de là?
Je ne peux tout de même pas mentionner un chemin d'accès complet en tête de mon fichier XML...
Merci à vous!
Partager