在java8进行wsdl调用,报错SAXNotRecognizedException。

错误信息

org.xml.sax.SAXNotRecognizedException: Feature 'http://javax.xml.XMLConstants/feature/secure-processing' is not recognized.

原因

多个XML-parser被加载了,但是使用了错误的解析器,java8优先使用了自带的JAXB而不是com.sun.xml.internal.bind.v2.util.XmlFactory导致的冲突

解决

<dependency>
    <groupId>xerces</groupId>
    <artifactId>xercesImpl</artifactId>
    <version>2.11.0</version>
</dependency>

在pom文件最开头添加这个,确保优先加载使用。

doc


codecraft
11.9k 声望2k 粉丝

当一个代码的工匠回首往事时,不因虚度年华而悔恨,也不因碌碌无为而羞愧,这样,当他老的时候,可以很自豪告诉世人,我曾经将代码注入生命去打造互联网的浪潮之巅,那是个很疯狂的时代,我在一波波的浪潮上留下...