Java 从WS-answer XML生成PDF时使用无效的XML字符(Unicode:0x2)

Java 从WS-answer XML生成PDF时使用无效的XML字符(Unicode:0x2),java,apache-fop,Java,Apache Fop,我正在做一些来自xml的报告,它来自WS。报告应该是PDF格式的,所以我选择了fop库。当我试图从xml生成报告时,它位于我的计算机上的xml文件中,一切正常。 当我在Web服务器上调用此方法时,问题就开始了。我对这一行有异议: transformer.transform(src, res); 例外情况是: org.xml.sax.SAXParseException: An invalid XML character (Unicode: 0x2) was found in the elemen

我正在做一些来自xml的报告,它来自WS。报告应该是PDF格式的,所以我选择了fop库。当我试图从xml生成报告时,它位于我的计算机上的xml文件中,一切正常。 当我在Web服务器上调用此方法时,问题就开始了。我对这一行有异议:

transformer.transform(src, res);
例外情况是:

org.xml.sax.SAXParseException: An invalid XML character (Unicode: 0x2) was found in the element content of the document.
首先是Unicode:0x1a字符,但我使用以下函数对其进行了剪切:

   private static String stripNonValidXMLCharacters(String in) {

    if (in == null || ("".equals(in))) {
        return null;
    }
    StringBuffer out = new StringBuffer(in);
    for (int i = 0; i < out.length(); i++) {
        if (out.charAt(i) == 0x1a) {
            out.setCharAt(i, '-');
        }             
    }
    return out.toString();
}
没用


我使用的是fop版本0.95。

您是否正在尝试处理IBM Rational RequisitePro中的某些内容?您是否找到了解决此问题的方法?是的,这是我愚蠢的错误,我只是在代码后添加了代码,其中包括西里尔字体,它使用了此代码。
    else if (out.charAt(i) == 0x2) {
        out.setCharAt(i, '-');
    }