快速业务通道

使用CXF和Spring创建Web服务 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-20

使用CXF和Spring创建Web服务

时间:2011-01-26 Rajeev Hathi

引言

在本文中,您将使用 CXF 和 Spring 来构建和开发一个订单处理 Web 服务。该 Web 服务处理或验证客户所下的订单,并返回唯一的订单 ID。阅读本文之后,您将能够应用 CXF 的概念和功能来构建和开发 Web 服务。

系统要求

要运行本文中的示例,请确保已在计算机上安装和设置了以下软件:

Java 5 或更高版本

Tomcat 5 或更高版本

Ant 构建工具

CXF 二进制分发版 2.1

安装上述分发版以后,设置以下环境变量:

JAVA_HOME(用于 Java)

CATALINA_HOME(用于 Tomcat)

ANT_HOME(用于 Ant)

CXF_HOME(用于 CXF)

举例来说,可以设置 CXF_HOME=C:\apache-cxf-2.1 并将以下内容添加到 PATH 环境变量:

JAVA_HOME\bin

CATALINA_HOME\bin

ANT_HOME\bin

为什么选择 CXF?

Apache CXF 是一个开放源代码框架,提供了用于方便地构建和开发 Web 服务的可靠基础架构。它允许创建高性能和可扩展的服务,您可以将这样的服务部署在 Tomcat 和基于 Spring 的轻量级容器中,以及部署在更高级的服务器上,例如 Jboss、IBM® WebSphere® 或 BEA WebLogic。

功能

该框架提供了以下功能:

Web 服务标准支持:CXF 支持以下 Web 服务标准:

Java API for XML Web Services (JAX-WS)

SOAP

Web 服务描述语言(Web Services Description Language ,WSDL)

消息传输优化机制(Message Transmission Optimization Mechanism,MTOM)

WS-Basic Profile

WS-Addressing

WS-Policy

WS-ReliableMessaging

WS-Security

使用CXF和Spring创建Web服务(2)

时间:2011-01-26 Rajeev Hathi

前端建模:CXF 提供了前端建模的概念,允许您使用不同的前端 API 来创建 Web 服务。API 允许您使用简单的工厂 Bean 并通过 JAX-WAS 实现来创建 Web 服务。它还允许您创建动态 Web 服务客户端。

工具支持:CXF 提供了用于在 Java Bean、Web 服务和 WSDL 之间进行转换的不同工具。它提供了对 Maven 和 Ant 集成的支持,并无缝地支持 Spring 集成。

RESTful 服务支持:CXF 支持代表性状态传输(Representational State Transfer,RESTful )服务的概念,并支持 Java 平台的 JAX-RS 实现。(本系列的第 2 部分将提供有关 RESTful 服务的更多信息。)

对不同传输和绑定的支持:CXF 支持不同种类的传输,从 XML 到逗号分隔值 (CSV)。除了支持 SOAP 和 HTTP 协议绑定之外,它还支持 Java Architecture for XML Binding (JAXB) 和 AEGIS 数据绑定。

对非 XML 绑定的支持:CXF 支持非 XML 绑定,例如 JavaScript Object Notation (JSON) 和 Common Object Request Broker Architecture (CORBA)。它还支持 Java 业务集成(Java Business Integration,JBI)体系架构和服务组件体系架构(Service Component Architecture,SCA)。

开发 Web 服务

下面让我们深入地研究一下如何使用 JAX-WS 前端创建订单处理 Web 服务,然后将其注册为 Spring Bean。您将使用代码优先方法,这意味着您将首先开发一个 Java 类,并将其标注为 Web 服务。为此,您通常要执行以下步骤:

创建服务端点接口(service endpoint interface,SEI),并定义一个将公开为 Web 服务的方法。

创建实现类,并将其标注为 Web 服务。

创建 beans.xml,并使用 JAX-WS 前端将该服务类定义为 Spring Bean。

创建 web.xml 以集成 Spring 和 CXF。

首先让我们创建订单处理 Web 服务 SEI。

创建订单处理 Web 服务 SEI

创建名为 OrderProcess 的 SEI,它将具有一个方法 processOrder,此方法接受一个订单 Bean 并返回一个字符串。processOrder 方法的目的是处理客户所下的订单,并返回唯一的订单 ID。

清单 1. OrderProcess SEI

package

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号