【发布时间】:2019-09-08 15:06:47
【问题描述】:
我正在尝试使用 jackson 将对象转换为 xml
XmlMapper xmlMapper = new XmlMapper();
xmlMapper.configure(ToXmlGenerator.Feature.WRITE_XML_DECLARATION, true);
xmlMapper.writeValue(createFileResult.getFile(), detailsProductDTOs);
但是,由于我的对象在某处包含无效的 xml 字符,因此出现错误。有没有办法告诉杰克逊忽略这种角色?或任何其他解决方案?
Caused by: java.io.IOException: Invalid white space character (0xb) in text to output (in xml 1.1, could output as a character entity)
at com.ctc.wstx.api.InvalidCharHandler$FailingHandler.convertInvalidChar(InvalidCharHandler.java:56)
at com.ctc.wstx.sw.XmlWriter.handleInvalidChar(XmlWriter.java:629)
at com.ctc.wstx.sw.BufferingXmlWriter.writeCharacters(BufferingXmlWriter.java:583)
at com.ctc.wstx.sw.BaseStreamWriter.writeCharacters(BaseStreamWriter.java:469)
at com.fasterxml.jackson.dataformat.xml.ser.ToXmlGenerator.writeString(ToXmlGenerator.java:588)
【问题讨论】:
-
请分享对象相关的代码及其数据
-
dbc ,我无法以这种方式解决我的问题,因为它的对象非常复杂,如果我尝试检查它包含的每个字符串,它将是非常丑陋和错误的代码
标签: java xml serialization jackson