Java Web 服务: CXF 简介
2010-03-31 00:00:00 来源:WEB开发网CXF 中的 Spring
注意在 清单 2 cxf-servlet.xml 配置文件中 Spring Framework bean 配置的使用。您可能知道,Spring 是一种开源应用程序框架,它包括许多可用来装配应用程序的组件库。Inversion of Control (IoC) 是 Spring Framework 的原始基础,它允许链接和配置 JavaBean 类型的软件组件,在运行时使用 Java 映像访问 bean 对象的属性。
Spring IoC 容器通常为依赖性信息使用 XML 文件,清单 2 中的 cxf-servlet.xml 文件就是这种 Spring 配置的一个示例。<beans> 元素仅是单个 bean 配置的一个包装器。<jaxws:endpoint> 元素就是这样的一个 bean,CXF 通过特定类型的对象(一个 org.apache.cxf.jaxws.EndpointImpl 实例)与其相关联。
除了这个简单示例中使用的选项之外,还可以指定很多其他选项,包括服务的消息流配置。参阅 CXF 文档中的 JAX-WS 配置信息了解完整细节(Frontends/JAX-WS 目录下)。
除了 JAX-WS 注释之外,Spring 还用于 CXF 堆栈的所有配置,包括 CXF 内部消息流的组织。大部分时候,这些配置细节都通过使用直接包含在 CXF JARs 中的 XML 配置得到自动处理,(参阅 清单 1 web.xml 文件中的 contextConfigLocation 参数值,了解如何引用它们),不过可以使用自己的配置文件覆盖或添加到公共流。本系列文章不直接介绍这方面内容;您可以参阅 CXF 文档了解详细信息。
CXF 展望
本文介绍了 CXF Web 服务堆栈使用 JAXB 2.x 数据绑定和对 JAX-WS 2.x 注释进行配置的基础知识。之前的文章中 Axis2 和 Metro 堆栈使用的 JAXB/JAX-WS 代码在 CXF 中也可以使用,只是构建过程有些许修改且使用的部署配置文件有所不同。这种跨堆栈兼容性是使用 JAXB 和 JAX-WS 的主要优点,因为这便于在不同的堆栈之间切换。
CXF 的功能比这个简单示例显示的要多很多,在后面的文章中您将了解到其他一些特性。下一篇文章将着眼于 WS-Security 的使用,您将看到 CXF 实现与 Axis2 和 Metro 的区别。
本文示例源代码或素材下载
更多精彩
赞助商链接