Bonjour,
J'ai un soucis lorsque je veux récupérer un fichier XML contenant des caractères spéciaux qui ont été parsés. Ainsi, les caractères tels que < ou > passent, mais des caractères comme € ou encore è me génèrent une erreur.
Voici l'erreur renvoyée :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 [Fatal Error] :4:487: The entity "egrave" was referenced, but not declared. [nov. 16 10:23:46] ERROR (METUtilities.java:84) - org.xml.sax.SAXParseException: The entity "egrave" was referenced, but not declared.
La ligne 84 appelle une méthode contenant ceci :
Avez vous une idée ? Problème de version de SAX ou de DOM ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 if (jeuCaracteres != null) chaineXml = new String(chaineXml.getBytes(), jeuCaracteres); javax.xml.parsers.DocumentBuilderFactory documentBuilderFactory = javax.xml.parsers.DocumentBuilderFactory.newInstance(); // Rajout 17.10.2006 : Permet la gestion des include en xml. (les deux lignes suivantes) documentBuilderFactory.setXIncludeAware(true); documentBuilderFactory.setNamespaceAware(true); javax.xml.parsers.DocumentBuilder documentBuilder = documentBuilderFactory.newDocumentBuilder(); org.w3c.dom.Document document = documentBuilder.parse(new java.io.ByteArrayInputStream(chaineXml.getBytes())); return document.getDocumentElement();
Merci beaucoup.
Partager