我在运行程序时遇到以下错误
Exception in thread "main" java.lang.RuntimeException: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'cxf' defined in class path resource [META-INF/cxf/cxf.xml]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [org.apache.cxf.bus.spring.SpringBus]: Constructor threw exception; nested exception is org.apache.cxf.bus.extension.ExtensionException: Could not load extension class org.apache.cxf.ws.policy.AssertionBuilderRegistryImpl.
我的test.xml文件是
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:cxf="http://cxf.apache.org/core"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd
http://cxf.apache.org/core http://cxf.apache.org/schemas/core.xsd">
<bean id="clientI"
class="LI" />
<bean id="clientL"
class="LIn" />
<cxf:bus>
<cxf:outInterceptors>
<ref bean="clientI" />
</cxf:outInterceptors>
<cxf:inInterceptors>
<ref bean="clientL" />
</cxf:inInterceptors>
</cxf:bus>
</beans>
答案 0 :(得分:2)
你的类路径中是否有cxf-bundle JAR?因为这可能是问题所在。
你可以从这里得到它:http://mvnrepository.com/artifact/org.apache.cxf/cxf-bundle/2.7.6(最新版本)。
答案 1 :(得分:1)
这可能是因为您使用的是旧版本的neethi(可能是2.X.X),您应该使用3.0.2版本。检查您的依赖项。
答案 2 :(得分:0)
对于解决方案,我必须添加cxf-bundle-xxx.jar并使用最新版本更新neethi jar。
答案 3 :(得分:0)
如果在包含WebSphere AS中部署的cxf-WebService的EAR上发生这种情况,
它可能来自cxf-WebService-Module的类加载器。确保您将WebService-Module的类加载器设置为PARENT_LAST