JBoss调用Webservice出现org.jboss.ws.core.jaxws.spi.ProviderImple not found错误
来源:互联网 发布:谭浩强c语言ppt 编辑:程序博客网 时间:2024/05/22 14:53
一、环境介绍
Linux CentOS 6.5 64bit,JDK1.7 ,JBoss 4.3.0-GA,项目工程引用cxf框架,版本号为2.5.0
二、报错信息
项目中自身发布的Webservice没有问题,外部可以正常调用,但项目作为客户端调用其他系统发布的Webservice接口时,任何接口都报如下错误:
java.util.ServiceConfigurationError:javax.xml.ws.spi.Provider:Provider org.jboss.ws.core.jaxws.spi.ProviderImpl not found at java.util.ServiceLoader.fail(ServiceLoader.java:231) at java.util.ServiceLoader.access$300(ServiceLoader.java:181) at java.util.ServiceLoader$LazyIterator.next(ServiceLoader.java:365) at java.util.ServiceLoader$1.next(ServiceLoader.java:445) at javax.xml.ws.spi.Provider.getProviderUsingServiceLoader(Provider.java:165) at javax.xml.ws.spi.Provider.provider(Provider.java:125) at javax.xml.ws.Service.<init>(Service.java:77)
三、原因定位
初步怀疑是Jboss中webservice版本与项目工程中cxf版本有冲突。
四、解决办法
发现在Jboss/Jboss-as/server/xxx/lib下面有一个jar包:jboss-jaxws.jar,删除掉后,webservice恢复正常。
五、原因分析
1)cxf框架中有一个jar包:cxf-rt-frontend-javxws-2.5.0.jar,META-INF/services/javax.xml.ws.spi.Provider文件,里面的内容是org.apache.cxf.jaxws22.spi.ProviderImpl
2)同时在jboss-jaxws.jar文件中相同目录下META-INF/services/也有一个javax.xml.ws.spi.Provider文件,里面的内容却是org.jboss.ws.core.jaxws.spi.ProviderImpl。报错的内容与此类相关。
Jboss里面没找到这个类,所以报错了。
补充:org.jboss.ws.core.jaxws.spi.ProviderImpl这个类原本是在jbossws-core.jar包里的,这个jar包由于之前与cxf框架有冲突已经删除掉了,所以导致这个报错。
六、解决办法
1)直接删除jboss-jaxws.jar文件
2)将jboss-jaxws.jar中javax.xml.ws.spi.Provider文件的内容改为org.apache.cxf.jaxws22.spi.ProviderImpl。
个人建议选择第一个解决办法,简单干脆利落,还可以回避其他类导致的版本不兼容问题。
- JBoss调用Webservice出现org.jboss.ws.core.jaxws.spi.ProviderImple not found错误
- org.jboss.deployers.spi.DeploymentException
- JDK 1.6 写Webservice时,runtime modeler error: Wrapper class com.ws.jaxws.DoSomething is not found问题的解决办法
- JDK 1.6 写Webservice时,runtime modeler error: Wrapper class com.ws.jaxws.DoSomething is not found问题的解决
- JBOSS启动出现如下错误
- log4j:ERROR A''org.jboss.logging.unit.OnlyOnceErrorHandler"object is not assignable to a ''org.apache.log4j.spi.ErrorHandler'' v
- 解决org.jboss.maven.plugins:maven-jdocbook-plugin' not found in repository的问题
- WebService 异常javax.xml.ws.WebServiceException: class ws.jaxws.GetBasketMapResponse do not have ..
- org.jboss.deployers.spi.DeploymentException: Error during deploy: vfszip
- Bad arguments passed to org.jboss.resteasy.spi.metadata
- log4j:ERROR org.jboss.logging.appender.FileAppender object is not assignable错误
- jboss错误
- 在项目部署到jboss时,Flex 调用webservice时报 URL时遇到安全性错误
- runtime modeler error: Wrapper class com.ws.jaxws.SayHello is not found
- JBoss装载应用出现log4j 装载错误
- jboss的实体类过时出现错误
- IBM Jdk环境启动jboss,出现如下错误:SunX509 KeyManagerFactory not available
- Jboss 报错 java.sql.SQLException: User not found: SA
- java多线程-线程优先级
- iOS App 跳转到 AppStore
- PHP MySQL函数
- Linux监控cpu以及内存使用情况之top命令
- LDA
- JBoss调用Webservice出现org.jboss.ws.core.jaxws.spi.ProviderImple not found错误
- 3-3 字母排列
- sqlalchemy ImportError问题
- Git入门到进阶——回滚与分支,标签的使用
- 加inline关键字强制转为内联函数
- C++ 类的静态成员详细讲解
- bone0-1背包问题
- Max Sum
- python datetime模块详解