首页 > 解决方案 > 为什么我的基于 SOAP 的项目可以在不包含 Apache CXF 依赖项的情况下工作?

问题描述

所以这是我第一次尝试使用 Apache CXF 使用 SOAP。我将整个项目(基于 Spring)的示例复制到我的工作区中,运行它,它就可以工作了。我很困惑,因为我认为我没有包含任何与 Apache CXF 相关的依赖项,我搜索了任何文件夹,什么也没有。据我了解,Tomcat 本身不支持 JAX-WS,所以我需要一个 JAX-WS 运行时。但即便如此,Apache CXF 是参考实现手段,它是 JAX-WS 的独立项目,所以我需要包含它。

我还发现了这些声明cfx-context.xml

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

我不认为有这样的cfx-servlet.xmlcxf.xmlMETA-INF文件夹内或任何地方。

我需要解释来理解为什么会这样,因为我将在接下来的几天里使用一些 SOAP 代码。

使用的工具和库:Eclipse IDE - TomEE 容器/服务器 - Spring 的 jars

标签: javasoapcxfjax-ws

解决方案


我想你正在使用Java 8?JAX-WS 2.2 是 Java SE 8 的一部分(请参阅https://docs.oracle.com/javase/8/docs/technotes/guides/xml/jax-ws/index.html)。请注意,未来版本已更改,在这种情况下,您需要添加其他库。


推荐阅读