Cannot create a secure XMLInputFactory --CXF调用出错

百度以后网上流传了两种解决办法:java

  1. 缺乏了两个jar包  stax2-api-3.1.x.jar 和 woodstox-core-asl-4.2.x.jar;web

  2. 缘由是 客户端 与服务端的 接口包名不一致 形成的 apache


首先我往项目里面加了第一点的两个jar包,仍旧报错。。。。api

对于第二点,我单独创建一个web项目,调用代码能够正常运行【客户端 与服务端的 接口包名仍旧不一致】,可是在我项目里面就继续报错;google


对于以上两点均排查完,表示不是上述缘由;spa

后google之,在stackoverflow找到一篇相同提问文章,有一回复解决了此问题:orm

在调用方法前加上下面三句便可调用成功:接口

import java.util.Properties;ci

   Properties props = System.getProperties();
   props.setProperty("org.apache.cxf.stax.allowInsecureParser", "1");
   props.setProperty("UseSunHttpHandler", "true");get


分享一下,但愿对你们有所帮助;




补充:----------------------------

后来发现这个警告...包冲突,删除前面的包应该就能够了,加上上面那个三行也行;

Could not create a secure Stax XMLInputFactory.  Found class com.ctc.wstx.stax.WstxInputFactory.  Suggest Woodstox 4.2.0 or newer.


补充:----------------------------

或者将woodstox-core-asl-4.4.0.jar这个jar包前面加上前缀abc什么的,让他jar包排名提早,conger优先加载接口,也不用添加上述三行代码(代码意思应该也是让它优先加载)

相关文章
相关标签/搜索