【问题标题】:CXF 3.0 with Spring and Apache 7 returns java.lang.ClassNotFoundException: org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean带有 Spring 和 Apache 7 的 CXF 3.0 返回 java.lang.ClassNotFoundException: org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean
【发布时间】:2014-09-22 08:58:48
【问题描述】:

我正在使用带有 Spring 2.4 和 Apache 7 的 CXF 3.0 开发 CXF Web 服务。 beans.xml 中的 jaxws:endpoint 语句如下所示

返回错误

委托模式:PARENT_FIRST] 失败;嵌套异常是 java.lang.NoClassDefFoundError: org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean 在 org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:160) 在 org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1045) 在 org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:949) 在 org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:487) 在 org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:458) 在 org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:295) 在 org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:223) 在 org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:292) 在 org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:194) 在 org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:628) 在 org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:932) 在 org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:479) 在 org.springframework.context.support.ClassPathXmlApplicationContext.(ClassPathXmlApplicationContext.java:139) 在 org.springframework.context.support.ClassPathXmlApplicationContext.(ClassPathXmlApplicationContext.java:119) 在 sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) 在 sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:44) 在 sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) 在 java.lang.reflect.Constructor.newInstance(Constructor.java:516) 在 org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:148) ... 116 更多 引起:java.lang.NoClassDefFoundError: org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean 在 java.lang.J9VMInternals.verifyImpl(本机方法) 在 java.lang.J9VMInternals.verify(J9VMInternals.java:72) 在 java.lang.J9VMInternals.verify(J9VMInternals.java:70) 在 java.lang.J9VMInternals.prepare(J9VMInternals.java:433) 在 java.lang.Class.getDeclaredConstructors(Class.java:537) 在 org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:156) ... 134 更多 引起:java.lang.ClassNotFoundException:org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean 在 java.net.URLClassLoader.findClass(URLClassLoader.java:423) 在 com.ibm.ws.bootstrap.ExtClassLoader.findClass(ExtClassLoader.java:191) 在 java.lang.ClassLoader.loadClass(ClassLoader.java:660) 在 com.ibm.ws.bootstrap.ExtClassLoader.loadClass(ExtClassLoader.java:111) 在 java.lang.ClassLoader.loadClass(ClassLoader.java:626) 在 com.ibm.ws.classloader.ProtectionClassLoader.loadClass(ProtectionClassLoader.java:62) 在 com.ibm.ws.classloader.ProtectionClassLoader.loadClass(ProtectionClassLoader.java:58) 在 com.ibm.ws.classloader.CompoundClassLoader.loadClass(CompoundClassLoader.java:511) 在 java.lang.ClassLoader.loadClass(ClassLoader.java:626) 在 com.ibm.ws.classloader.CompoundClassLoader.loadClass(CompoundClassLoader.java:511) 在 java.lang.ClassLoader.loadClass(ClassLoader.java:626) ... 140 多个

我没有看到任何 jar 中存在类 org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean。所以,我不确定为什么 Web Sphere 7 会寻找这个类。

非常感谢任何帮助。

【问题讨论】:

    标签: cxf


    【解决方案1】:

    我认为您需要将 cxf-rt-wsdl-3.0.0.jar 添加到您的战争中。

    【讨论】:

    • 谢谢。这有帮助。现在我有一个不同的错误:org.springframework.beans.factory.BeanCreationException:创建名为“orderProcess”的bean时出错:init方法的调用失败;嵌套异常是 java.lang.NoSuchMethodError: org/apache/ws/commons/schema/XmlSchemaCollection.read(Lorg/w3c/dom/Document;Ljava/lang/String;)Lorg/apache/ws/commons/schema/XmlSchema;即使没有必要,我也已将 init 方法添加到我的服务类中。感谢您的回复。
    • 为了更具描述性,错误是:NoSuchMethodError: org/apache/ws/commons/schema/XmlSchemaCollection.read(Lorg/w3c/dom/Document;Ljava/lang/String;)Lorg/ apache/ws/commons/schema/XmlSchema;我用的是最新的 xmlschema-core-2.1.0.jar 文件
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-01-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多