2014-06-21 15 views
0

我試圖在例如我http://camel.apache.org/cxf-example.html給出的配置是一樣RuntimeCamelException由於org.apache.cxf.feature.Feature不存在

'

<cxf:cxfEndpoint id="cxfTutorialWebService" 
        address="/CXFTutorialWebService" 
        serviceClass="com.example.tutorial.ws.TutorialWebServiceImpl" 
        wsdlURL="wsdl/TutorialService.wsdl" 
        serviceName="c:TutorialWebService" 
      endpointName="c:TutorialWebService"     xmlns:c="http://example.com/tutotial/TutorialWebService/"> 
      <cxf:properties> 
      <entry key="ws-security.callback-handler" value-ref="keystorePasswordCallback"/> 
      <entry key="ws-security.encryption.properties" value-ref="keystoreProperties"/> 
      <entry key="ws-security.signature.properties" value-ref="keystoreProperties"/> 
      <entry key="ws-security.encryption.username" value="useReqSigCert"/> 
      <entry key="schema-validation-enabled" value="true" /> 
      </cxf:properties> 
      <cxf:inInterceptors> 
      <bean class="org.apache.cxf.interceptor.LoggingInInterceptor"/> 
      </cxf:inInterceptors> 

     <cxf:outInterceptors> 
     <bean class="org.apache.cxf.interceptor.LoggingOutInterceptor"/> 
     </cxf:outInterceptors> 
</cxf:cxfEndpoint> 

<bean id="tutorialService" class="com.example.tutorial.ws.TutorialService"/> 

<camelContext id="test_context" xmlns="http://camel.apache.org/schema/spring"> 
     <route> 
     <from uri="cxf:bean:cxfTutorialWebService"/> 
     <to uri="bean:tutorialService?method=processSoap"/> 
     </route> 
</camelContext>` 

其中com.example.tutorial.ws.TutorialWebServiceImpl工作正常與jaxws:endpoint id="tutorialWebService"但我想這個web服務請求調用駱駝路由。所以我想創建一個<cxf:cxfEndpoint>如上所示。但我在Tomcat中啓動Web應用程序我得到異常作爲

Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'cxfTutorialWebService': Initialization of bean failed; nested exception is java.lang.TypeNotPresentException: Type org.apache.cxf.feature.Feature not present 
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:527) ~[spring-beans-3.0.5.RELEASE.jar:3.0.5.RELEASE] 
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456) ~[spring-beans-3.0.5.RELEASE.jar:3.0.5.RELEASE] 
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:310) ~[spring-beans-3.0.5.RELEASE.jar:3.0.5.RELEASE] 
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:194) ~[spring-beans-3.0.5.RELEASE.jar:3.0.5.RELEASE] 
at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1079) ~[spring-context-3.0.5.RELEASE.jar:3.0.5.RELEASE] 
at org.apache.camel.spring.spi.ApplicationContextRegistry.lookupByNameAndType(ApplicationContextRegistry.java:47) ~[camel-spring-2.13.0.jar:2.13.0] 
at org.apache.camel.impl.PropertyPlaceholderDelegateRegistry.lookupByNameAndType(PropertyPlaceholderDelegateRegistry.java:63) ~[camel-core-2.13.0.jar:2.13.0] 
... 43 common frames omitted 
Caused by: java.lang.TypeNotPresentException: Type org.apache.cxf.feature.Feature not present 
at sun.reflect.generics.factory.CoreReflectionFactory.makeNamedType(CoreReflectionFactory.java:117) ~[na:1.7.0_15] 
at sun.reflect.generics.visitor.Reifier.visitClassTypeSignature(Reifier.java:125) ~[na:1.7.0_15] 
at sun.reflect.generics.tree.ClassTypeSignature.accept(ClassTypeSignature.java:49) ~[na:1.7.0_15] 
at sun.reflect.generics.visitor.Reifier.reifyTypeArguments(Reifier.java:68) ~[na:1.7.0_15] 
at sun.reflect.generics.visitor.Reifier.visitClassTypeSignature(Reifier.java:138) ~[na:1.7.0_15] 
at sun.reflect.generics.tree.ClassTypeSignature.accept(ClassTypeSignature.java:49) ~[na:1.7.0_15] 
at sun.reflect.generics.repository.ConstructorRepository.getParameterTypes(ConstructorRepository.java:94) ~[na:1.7.0_15] 
at java.lang.reflect.Method.getGenericParameterTypes(Method.java:291) ~[na:1.7.0_15] 
at java.beans.FeatureDescriptor.getParameterTypes(FeatureDescriptor.java:387) ~[na:1.7.0_15] 
at java.beans.MethodDescriptor.setMethod(MethodDescriptor.java:114) ~[na:1.7.0_15] 
at java.beans.MethodDescriptor.<init>(MethodDescriptor.java:72) ~[na:1.7.0_15] 
at java.beans.MethodDescriptor.<init>(MethodDescriptor.java:56) ~[na:1.7.0_15] 
at java.beans.Introspector.getTargetMethodInfo(Introspector.java:1130) ~[na:1.7.0_15] 
at java.beans.Introspector.getBeanInfo(Introspector.java:414) ~[na:1.7.0_15] 
at java.beans.Introspector.getBeanInfo(Introspector.java:161) ~[na:1.7.0_15] 
at java.beans.Introspector.getBeanInfo(Introspector.java:248) ~[na:1.7.0_15] 
at java.beans.Introspector.<init>(Introspector.java:395) ~[na:1.7.0_15] 
at java.beans.Introspector.getBeanInfo(Introspector.java:161) ~[na:1.7.0_15] 
at org.springframework.beans.CachedIntrospectionResults.<init>(CachedIntrospectionResults.java:224) ~[spring-beans-3.0.5.RELEASE.jar:3.0.5.RELEASE] 
at org.springframework.beans.CachedIntrospectionResults.forClass(CachedIntrospectionResults.java:149) ~[spring-beans-3.0.5.RELEASE.jar:3.0.5.RELEASE] 
at org.springframework.beans.BeanWrapperImpl.getCachedIntrospectionResults(BeanWrapperImpl.java:305) ~[spring-beans-3.0.5.RELEASE.jar:3.0.5.RELEASE] 
at org.springframework.beans.BeanWrapperImpl.getPropertyDescriptors(BeanWrapperImpl.java:312) ~[spring-beans-3.0.5.RELEASE.jar:3.0.5.RELEASE] 
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.filterPropertyDescriptorsForDependencyCheck(AbstractAutowireCapableBeanFactory.java:1208) ~[spring-beans-3.0.5.RELEASE.jar:3.0.5.RELEASE] 
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1069) ~[spring-beans-3.0.5.RELEASE.jar:3.0.5.RELEASE] 
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:517) ~[spring-beans-3.0.5.RELEASE.jar:3.0.5.RELEASE] 
... 49 common frames omitted 
Caused by: java.lang.ClassNotFoundException: org.apache.cxf.feature.Feature 
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1714) ~[catalina.jar:7.0.41] 
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1559) ~[catalina.jar:7.0.41] 
at java.lang.Class.forName0(Native Method) ~[na:1.7.0_15] 
at java.lang.Class.forName(Class.java:266) ~[na:1.7.0_15] 
at sun.reflect.generics.factory.CoreReflectionFactory.makeNamedType(CoreReflectionFactory.java:114) ~[na:1.7.0_15] 
... 73 common frames omitted 

我找不到讓org.apache.cxf.feature.Feature請提供一些建議

感謝

+0

您正在使用哪個版本的CXF? –

+0

我正在使用CXF版本2.4.0。還有一件事是,我正在使用由'jaxws:endpoint'使用的插件'jaxws-import'生成的同樣的接口,同時''serviceClass'屬性也使用'cxf:cxfEndpoint'。我是否必須使用cxf中'codegen-wsdl2java'生成的'cxf:cxfEndpoint'接口? – Chakri

+0

由於Feature類只是被CXF使用,我想你需要使用由CXF生成的SEI類。 –

回答

0

我可以使用CXF版本修復它這罐子2.7.10。不知道確切的不兼容問題,但使用

mvn dependency:tree 

項目透露駱駝是使用的2.7.10版本CXF即使我用的是2.4.0。所以我把它更新到了2.7.10,我想有些不兼容是固定的