引言
近年来,随着Web Service技术迅速发展,基于Web Service开发的应用被使用的越来越广泛。Web Service良好的封装性及跨平台能力为应用程序集成、B2B集成等应用场景提供可行的解决方案。本文将介绍如何使用WAS CE(WebSphere Application Server Community Edition)和Apache Axis2开发、部署及测试一个简单的Web Service应用-网上花店。
1.应用及运行环境介绍
1.1 WAS CE简介
WebSphere Application Server Community Edition是IBM推出的基于开源项目Apache Geronimo技术构建的轻量级J2EE应用服务器,是WebSphere Application Server产品家族的新成员。它符合Java 2 Enterprise Edition (J2EE) V1.4规范,像所有J2EE应用服务器一样,它为运行多层次的企业级应用程序提供平台。
本文中将介绍一个Web Service应用示例-网上花店的开发、部署、测试过程。WAS CE为网上花店服务所使用的SOAP引擎 Axis2提供Web容器,并提供其内建的Derby数据库用于数据存取。在本文中的示例中,使用WAS CE v1.0.1.2版本,但在示例代码下载中同样提供针对Apache GeronimoV1.1版本的Derby数据源和Axis2的部署计划。读者可以根据使用的服务器选择不同的部署计划。
1.2 Axis2简介
Apache Axis2 是Axis的后续版本,是新一代的SOAP引擎。
Axis2的主要特点有:
采用名为 AXIOM(AXIs Object Model)的新核心 XML 处理模型,利用新的XML解析器提供的灵活性按需构造对象模型
支持不同的消息交换模式。目前Axis2支持三种模式:In-Only、Robust-In和In-Out。In-Only消息交换模式只有SOAP请求,而不需要应答;
Robust-In消息交换模式发送SOAP请求,只有在出错的情况下才返回应答;In-Out消息交换模式总是存在SOAP请求和应答。
提供阻塞和非阻塞客户端 API
支持内置的 Web服务寻址 (WS-Addressing)
灵活的数据绑定,可以选择直接使用 AXIOM,使用与原来的 Axis 相似的简单数据绑定方法,或使用 XMLBeans、JiBX 或 JAXB 2.0 等专用数据绑定框架
新的部署模型,支持热部署
支持HTTP,SMTP,JMS,TCP传输协议
支持REST (Representational State Transfer)
Axis2 支持的规范包括:
SOAP 1.1 and 1.2
Message Transmission Optimization Mechanism (MTOM), XML Optimized Packaging (XOP) and SOAP with Attachments
WSDL 1.1, including both SOAP and HTTP bindings
WS-Addressing (submission and final)
WS-Policy
SAAJ 1.1
有关Axis2更加详细的介绍,可以访问Axis2网站http://ws.apache.org/axis2/。