从 WSDL 生成的自上而下 Java 服务中的 CXF 3.0.3 部署错误

Deployment error in CXF 3.0.3 in generated top down Java service from WSDL

非常感谢你对这个问题的帮助。

配置是 Eclipse Juno、CXF 3.0.3 运行时和 Tomcat v7。 我已经使用 CXF 从现成的 WSDL 方法自上而下地创建 Web 服务。 但是在 Tomcat 上部署服务时出现以下错误:

org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration problem: Failed to import bean definitions from URL location [classpath:META-INF/cxf/cxf-extension-soap.xml]

违规资源:ServletContext 资源 [/WEB-INF/cxf-beans.xml];嵌套异常是 org.springframework.beans.factory.BeanDefinitionStoreException:IOException 从 class 路径资源 [META-INF/cxf/cxf-extension-soap.xml] 解析 XML 文档;嵌套异常是 java.io.FileNotFoundException: class 路径资源 [META-INF/cxf/cxf-extension-soap.xml] 无法打开,因为它不存在

我只是找不到解决这个错误的方法,我被困了很长时间。 非常感谢!

根据 documentation,您不再需要在 CXF 3 中导入此文件:

Starting in CXF 2.4.0, the extensions are loaded internally by CXF automatically and you do not need to import all the cxf-extension-*.xml file. You only need to import classpath:META-INF/cxf/cxf.xml.

在 WebContent/WEB-INF/cxf-beans.xml 中,删除导入

<import resource="classpath:META-INF/ cxf/ cxf-extension-soap.xml" />

我在将 cxf 2.2.6 更新到 3.1.0 时遇到了同样的问题。我刚刚删除了 import cxf-extension-soap.xml 并且它起作用了。