I have a Java program that is writing information from a database to an XML file. I create a DOM document, add an element, and set the value with:
Element id=parent.createElement("EventRuleInputDefinition"); ... id.setAttribute("Value", getVal()); Later, I then go to write the Document with: StringWriter sw = new StringWriter(); ... TransformerFactory transformerFactory = TransformerFactory.newInstance(); ... Transformer transformer = transformerFactory.newTransformer(); transformer.setOutputProperty (OutputKeys.ENCODING, "UTF-8"); // Puts each stanza on a new line transformer.setOutputProperty(OutputKeys.INDENT, "yes"); DOMSource source = new DOMSource(node); // node is the document root. StreamResult result = new StreamResult(sw); transformer.transform(source, result); The XML file is properly generated with the header: <?xml version="1.0" encoding="UTF-8"?> But the element is written with an actual umlaut character which when read back in generates the error: [Fatal Error] :564:103: Invalid byte 1 of 1-byte UTF-8 sequence. org.xml.sax.SAXParseException: Invalid byte 1 of 1-byte UTF-8 sequence. We're using Xerces 2.8.1 (don't laugh, I know it's a bit old). Could this be an issue in Xerces, or am I doing something wrong? Thanks. --------------------------------------------------------------------- To unsubscribe, e-mail: j-users-unsubscr...@xerces.apache.org For additional commands, e-mail: j-users-h...@xerces.apache.org