论文部分内容阅读
在应用集成领域,面向服务技术的出现,为各组织提供了优秀的解决方案,而Web服务集成技术中以BPEL4WS最受关注,并被广泛应用。但是,因为BPEL4WS的定义主要是针对服务组织流程的表达和处理,因而忽略了集成过程中异构数据产生的影响。然而,随着Web服务的多样化、组织间系统异构以及组织内部遗留系统的异构等带来的数据异构问题的日益突显,繁重的数据处理任务已经成为使用BPEL进行流程编排和运行的一大负担。此外,在商业领域,大量的数据处理涉及到业务规则的使用,如何在流程运行时解释这些规则,实现业务规则的重用,也成为BPEL在商业领域能否进一步推广的重要因素。针对这些问题,本文做了两个方面的工作。一、提出了一种扩展BPEL4WS规范的方法,方法的主要思想是为BPEL的assign赋值活动增加了rule、ruleengine、expression三个属性,用于指定数据处理的逻辑规则,并取消了原规范中对于from元素的出现约束,以满足多源数据的处理需求。二、在BPEL引擎中实现了上述扩展,并增加了功能模块以支持扩展,其中包括schema映射器、XSLT转换定义文件的自动生成与解析,并通过JSR094规则引擎的API来实现多种业务规则引擎集成的支持,此外,定义了一个ITransformer接口,用来提供自定义数据处理引擎的动态插入能力。通过本文的工作,提高了BPEL在数据转换方面的表达和处理能力,使得在此基础上开发的BPEL引擎可以满足大部分的复杂数据处理需求,并使流程执行具备了一定的动态特性,提高了系统的可用性、易用性、可扩展性,维持了系统高效持续不间断的运行。