cxf .jar 包 冲突 setXmlStandalone(Z)V
2015-12-02 10:25
288 查看
摘要: cxf .jar 包 冲突 setXmlStandalone(Z)V
报错信息如下:
java.lang.AbstractMethodError: org.apache.xerces.dom.DeferredDocumentImpl.setXmlStandalone(Z)V
解决方法1:
在使用cxf做webserive时,第一次没有添加与数据库操作时一切正常,当添加了commons-pool.jar包以后就报如下错误:
java.lang.AbstractMethodError: org.apache.xerces.dom.DeferredDocumentImpl.setXmlStandalone(Z)V org.apache.cxf.transport.http.WSDLQueryHandler.updateDoc(WSDLQueryHandler.java:324) org.apache.cxf.transport.http.WSDLQueryHandler.writeResponse(WSDLQueryHandler.java:223) org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:170) org.apache.cxf.transport.servlet.AbstractCXFServlet.invoke(AbstractCXFServlet.java:148) org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:179) org.apache.cxf.transport.servlet.AbstractHTTPServlet.doGet(AbstractHTTPServlet.java:108) javax.servlet.http.HttpServlet.service(HttpServlet.java:690) org.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractHTTPServlet.java:159)
究其原因是因为cxf的包与xercesImpl.jar包冲突,因为commons-pool.jar依赖于xercesImpl.jar包。所以造成上面的错误,解决方案如下:
<dependency>
<groupId>commons-pool</groupId>
<artifactId>commons-pool</artifactId>
<version>1.1</version>
<exclusions>
<exclusion>
<groupId>xerces</groupId>
<artifactId>xerces</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>xerces</groupId>
<artifactId>xercesImpl</artifactId>
<version>2.8.0</version>
</dependency>
如果有工程包分别打出jar pom 及其它,那么需要在pom进行exclusion
解决方法2:
去掉xerces-2.4.0.jar,或者用最新版本(已测试通过)
下载地址:
报错信息如下:
java.lang.AbstractMethodError: org.apache.xerces.dom.DeferredDocumentImpl.setXmlStandalone(Z)V
解决方法1:
在使用cxf做webserive时,第一次没有添加与数据库操作时一切正常,当添加了commons-pool.jar包以后就报如下错误:
java.lang.AbstractMethodError: org.apache.xerces.dom.DeferredDocumentImpl.setXmlStandalone(Z)V org.apache.cxf.transport.http.WSDLQueryHandler.updateDoc(WSDLQueryHandler.java:324) org.apache.cxf.transport.http.WSDLQueryHandler.writeResponse(WSDLQueryHandler.java:223) org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:170) org.apache.cxf.transport.servlet.AbstractCXFServlet.invoke(AbstractCXFServlet.java:148) org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:179) org.apache.cxf.transport.servlet.AbstractHTTPServlet.doGet(AbstractHTTPServlet.java:108) javax.servlet.http.HttpServlet.service(HttpServlet.java:690) org.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractHTTPServlet.java:159)
究其原因是因为cxf的包与xercesImpl.jar包冲突,因为commons-pool.jar依赖于xercesImpl.jar包。所以造成上面的错误,解决方案如下:
<dependency>
<groupId>commons-pool</groupId>
<artifactId>commons-pool</artifactId>
<version>1.1</version>
<exclusions>
<exclusion>
<groupId>xerces</groupId>
<artifactId>xerces</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>xerces</groupId>
<artifactId>xercesImpl</artifactId>
<version>2.8.0</version>
</dependency>
如果有工程包分别打出jar pom 及其它,那么需要在pom进行exclusion
解决方法2:
去掉xerces-2.4.0.jar,或者用最新版本(已测试通过)
下载地址:
xerces-2.9.0.jar
相关文章推荐
- Android视频播放器之学习MediaPlayer
- 安卓ListView中嵌套ListView导致外层ListView的ItemOnclick方法无法响应的解决办法
- System.loadLibrary()的使用方法汇总
- nginx优化 突破十万并发
- 最大公约数
- Java String操作 trim()
- LeetCode 151 Reverse Words in a String
- c++多态实现的机制
- Unix Network Programming(6)---套接字地址结构
- Android RadioGroup及RadioButton的使用方法
- 在html页面中展示JSON
- [Linux] Chang DNS Setting on Linux
- LeetCode-- Merge Sorted Array
- 通过点击jqgrid表格弹出需要的表格数据
- 常用Mysql命令
- 原生JavaScript实现异步多文件上传
- Android大神
- C++匿名对象调用成员函数
- 下一代 Hadoop YARN :相比于MRv1,YARN的优势
- Sublime text 2/3 中 Package Control 的安装与使用方法