2

这是我的问题:我编写了一个程序来解组作为输入给出的 XML 文件,结果证明我的程序在我的开发环境中运行良好,但是同样的程序将在我的客户端环境中产生以下异常:

javax.xml.bind.UnmarshalException - 带有链接异常:[java.io.UTFDataFormatException:2 字节 UTF-8 序列的无效字节 2。]

作为我程序输入的 XML 文件使用 UTF-8 作为编码类型。Unmarshaller 对象使用默认编码类型,即 UTF-8,因为我没有为其设置任何属性值。此外,我没有为 unmarshaller 设置模式,所以我什至没有请求 XML 验证。

有没有人有任何想法或是否有人已经遇到过同样的问题?

提前致谢

4

1 回答 1

0

我已经收到此错误。我已更改配置以使用 ISO-8859-1 编码: marshaller.setProperty(Marshaller.JAXB_ENCODING, "ISO-8859-1");

我可以将 UTF-8 字符串放入 xml 流中,即使编码没有像 ISO-8859-1 那样定义,它也是正确的编组/解组

于 2011-07-18T13:56:37.113 回答