JAX-WS、 Axis2和 CXF 的区别

两者的区别是什么:

  1. JAX-WS
  2. Axis2
  3. CXF

三者都可以用来在 Java 中创建 webservices。
据我所知,JAX-WS 是 规格,Axis2和 CXF 是实现,但如果我没猜错的话,Java 1.6已经实现了 JAX-WS。

那么可以使用 Java 1.6开发 JAX-WS Web 服务而不需要使用 Axis2或 CXF 吗?那么 Axis2和 CXF 有什么用呢?

98574 次浏览

JDK 中内置的 JAX-WS 实现实际上只是基本的肥皂工具。如果您需要任何更复杂的 WS-* ,比如 WS-Security、 WS-RM、 WS-Policy 等等。.,您需要使用其中一种替代方法,如 CXF、 Metro 或 Axis2。它还取决于您试图与什么集成。例如,CXF 有一流的 Spring 支持以及非常好的 OSGi 支持。

除了 JAX-WS 之外,CXF 还有其他功能。它还有一个兼容的 JAX-RS 实现,并且很好地支持将服务公开为 REST 和 SOAP。如果需要的话,具有符合 W3C 的 SOAP/JMS 实现。基本上,很多东西都不能从 in-jdk JAX-WS impl 获得。

参见:

Apache CXF 与 Axis 的区别

我发现 CXF 与 Spring 的集成非常简单,而且它还提供了各种特性,比如:

  1. 自定义日志特性
  2. 入站和出站拦截器
  3. 应用程式层级保安
  4. 使用自定义错误简单异常处理。

如欲了解更多详情,请浏览以下连结:

Http://predic8.com/axis2-cxf-jax-ws-comparison.htm

Http://www.ibm.com/developerworks/java/library/j-jws11/

并且,我阅读以上链接,它对我很有帮助。我希望它对你也有用。

谢谢!

简而言之。

WSDL WS-* 与语言无关。

JAX-WS 是构建 Web 服务的 Java 标准。

Apache CXF 阿帕奇轴心2号是 JAX-WS 的两个实现。它们还提供 JAX-RS 实现,以便您可以构建 Restful 服务。

CXF 与 Spring 和 Camel (驼 -cxf)有更好的集成。

Web 服务组织引用了一些指导原则,即 BP (Basic Profile)1.0和 BP (Basic Profile)1.1。 基于指南所有语言(Java/. Net)人们发布默认实现的规范 Java 中基于 BP 1.0的规范是 JAX-RPC,而1.0规范是 JAX-WS

JAX-WS 默认实现是 RI (参考实现) 根据需求/选择,我们可以更改实现(RI/AXIS-2/CXF)

当我们使用 java 1.6时,JDK 中的这种情况已经可用,因此不需要任何其他 jar。如果您想使用不同的实现,那么需要特定的实现 jar。

Axis-2和 CXF 来自 Apache