您好我有一个.NET中的服务SOAP(来自一个封闭的源提供程序)。在经过12个小时之后,我通过身份验证和“wsimport”编写了一个客户端。现在我的请求正在通过并正确回答,但根据Java,它们包含无效字符。我遇到了这个问题:
Caused by: javax.xml.stream.XMLStreamException: ParseError at [row,col]: [1,1338]
Message: Character reference "&#
at com.sun.org.apache.xerces.internal.impl.XMLStreamReaderImpl.next(XMLStreamReaderImpl.java:601)
at com.sun.xml.internal.ws.util.xml.XMLStreamReaderFilter.next(XMLStreamReaderFilter.java:81)
at com.sun.xml.internal.bind.v2.runtime.unmarshaller.StAXStreamConnector.bridge(StAXStreamConnector.java:181)
at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(UnmarshallerImpl.java:400)
... 61 more
我用PHP复制了请求,耗时30分钟。该死的。无论如何,那些角色都存在。
我知道您可以执行LogicalHandlers和MessageHandlers,但它们都发生在反序列化过程之后(或者它们从SoapContext触发它以获取消息)。
如何解决此问题?如何告诉Java忽略,或者在尝试反序列化之前如何从SOAP响应中过滤掉这些字符?