关键词 企业应用集成;Web Services;业务流程
EAI(Enterprise application integration)即企业应用集成,EAI通过将一系列的方法、技术和工具组织在一起实现对不同应用的合并与协调,从而实现企业信息系统的集成。
目前,由于现代企业信息自动化要求的提高,各个系统之间的互动和相互通讯更为重要。保护原有投资,重用遗留系统、集成新的应用系统是当前很多中大型企业的重要任务。由于遗留系统的运行平台是异构环境,要横跨多种硬件平台、操作系统、软件技术、数据管理系统以及各种业务应用,不仅要进行复杂的跨业务处理,还要解决复杂的横向协调问题,因此EAI(企业应用集成)的代价一般来说是很高的。
传统的企业应用集成方案有:基于应用编程接口(API)的方案,基于分布式对象技术(如DCOM、CORBA、EJB等)的方案等,当用户群非常庞大时,这种点到点的集成会变得非常困难。再加上DCOM、CORBA或EJB之间出于厂商利益的技术对抗也阻碍了企业应用集成。因此探讨新的集成方案是很有必要的。随着网络技术、网络运行理念的发展,人们提出一种新的利用网络进行企业应用集成的解决方案——Web服务(Web Services)。
1 Web services技术
Web Services是部署在网络上的对象(或组件)集合。它采用对象/组件技术、使用标准的Internet协议、将功能展示在互联网和企业网内部。它的基石是以XML为主的、开放的Web规范技术,因此具有比任何现有的对象技术更好的开放性。 构筑Web Services的关键技术有:XML、SOAP、WSDL、UDDI。其中,简单对象访问协议(SOAP)提供了标准的RPC方法来调用Web Services;Web Services描述语言(WSDL)用于描述Web Services(该web服务的元数据信息:服务的名字、提供者、服务的具体访问地址等)及其函数、参数和返回值;统一描述、发现与集成(UDDI)规范定义了这样的注册中心:Web Services的提供者可以在其中发布相应的WSDL文档, Web Services的消费者则可以在其中找到自己需要的服务,并通过WSDL文档获得如何调用相应Web Services的方法。
SOAP、WSDL、UDDI都是基于XML的协议,正是因为使用XML,使企业应用集成在数据层上达成了一致,解决了不同平台或系统、不同数据结构或模式之间的差异,使得原本复杂的数据层的集成变得简单起来。
前面讨论的所有技术在Web Services中都扮演着一个角色。如图1所示。

图1 Web 服务运作图
Web服务的请求-响应循环可以概述如下:
1)Web服务提供者将本Web服务的元数据信息、实现的功能和接口描述在WSDL文档中,并发布到Web服务注册中心上,其信息被写入UDDI注册表中;Web服务注册中心对Web服务进行分类,并提供Web搜索服务。
2)Web服务客户机根据Web服务注册中心提供的规范接口向Web服务注册中心发送Web服务查询请求。
3)Web服务客户机通过分析从Web服务注册中心得到的Web服务绑定信息(WSDL),包括服务的访问路径、服务调用的参数、返回值、传输协议、安全要求等,对自己的系统进行配置。并远程调用请求的Web服务。
4)被请求Web服务处理该远程调用,并调用自己的相应操作,这个操作可能需要如EJB和JDBC数据源等J2EE组件的服务以及其他Web服务。
5)完成以上2)-4)的操作后,被请求Web服务返回给最初的用户一个SOAP消息,得到所需要的结果。
2 使用Web Services技术实现EAI
EAI能够将业务流程、应用软件、硬件和各种标准联合起来,在机构内部或机构之间实现应用系统的无缝集成,使它们象一个整体一样进行业务处理和信息共享。它包括数据传输、接口集成、数据转换、工作流和系统监控5大关键技术。集成层面包括:数据级集成、用户界面级集成、应用级集成、业务流程级集成。本文讨论的重点放在数据级集成和业务流程级集成。




