Bonjour à tous,

J'utilise jTidy pour récupérer des fichiers HTML en XHTML et ensuite incorporer le contenu du body dans mes propres balises org.w3c.dom :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Tidy converter = new Tidy();
converter.setQuiet(true);
converter.setXmlOut(true);
//converter.setXHTML(true);
converter.setEncloseText(true);
Document doc = converter.parseDOM(new FileInputStream(file), null);
 
// nettoyer enveloppe HTML (la fabrique inclue elle-même HTML/HEAD+BODY)
NodeList body = doc.getElementsByTagName("body");
NodeList bodyContents = ((Element) body.item(0)).getChildNodes();
...
Element bodyNode = xmlDoc.createElement("body");
for (int i = 0; i < bodyContents.getLength(); i++) {
	bodyNode.appendChild(xmlDoc.importNode(bodyContents.item(i), true));
}
Et voici le résultat :
org.w3c.dom.DOMException: DOM method not supported
at org.w3c.tidy.DOMDocumentImpl.getImplementation(DOMDocumentImpl.java:129)
at com.sun.org.apache.xerces.internal.dom.CoreDocumentImpl.importNode(CoreDocumentImpl.java:1536)
at com.sun.org.apache.xerces.internal.dom.CoreDocumentImpl.importNode(CoreDocumentImpl.java:1498)
...
J'ai cru comprendre, subliminalement, que d'affecter un certain handler pourrait aider... mais lequel, et où ? Mystère !

Le source jTidy :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
/**
 * @todo DOM level 2 getImplementation() Not implemented. Throws NOT_SUPPORTED_ERR.
 * @see org.w3c.dom.Document#getImplementation
 */
public org.w3c.dom.DOMImplementation getImplementation()
{
    throw new DOMException(DOMException.NOT_SUPPORTED_ERR, "DOM method not supported");
}


Si quelqu'un a une idée, je suis volontiers preneur !
Merci d'avance.