Bonjour à tous!
J'ai un petit soucis sur l'utilisation de l'API Castor sur l'encodage des caractères!!!
J'ai créer mes objets jaxb à partir des fichiers xsd dont l'en tête est celle-ci
(même en tête pour mes fichiers xml.)
Code XML : Sélectionner tout - Visualiser dans une fenêtre à part <?xml version="1.0" encoding="UTF-8"?>
La génération des objets java est OK.
Le problème vient au moment de la lecture et l'écriture du flux XML. Les accents sont encodés en ASCII (je crois) au lieu de UTF-8.
voici mon bout de codeExemple: éàçùâèûîï devient "éà çùâèûîï"
Quelqu'un pourrait me dire pourquoi unmarshaller de Castor ne prend pas en compte l'entête du fichier xml notamment l'encodage des caractères en UTF8 ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Reader reader = new FileReader(New File("test.xml"); Unmarshaller unmarshaller = new Unmarshaller(MyJAXBClass.class); Object xml = unmarshaller.unmarshal(reader);
J'ai même forcé l'écriture du marshaller en faisant un setEncoding("utf-8") mais sans succès.
voici les versions utilisés:
Castor 1.1.2.1
Xerces 2.9.0
Partager