BPEL4WS 概述

商业流程执行语言BPEL4WS(Business Process Execution Language For Web Services)是专为整合Web Services而制定的一项规范标准。<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

作为可执行流程的实现语言,BPEL4WS 的作用是将一组现有的服务整合起来,从而定义一个新的 Web 服务。因此,BPEL4WS 基本上是一种实现这样的整合的语言。与其它任何 Web 服务一样,整合服务的接口也被描述为 WSDL portType 的集合。整合(称为“流程”)指明了服务接口与整合的总体执行的配合情况。

介绍

BPEL4WS 支持两种截然不同的使用情形:

l        可执行工作流—描述业务交互中参与者的实际行为;

l        抽象流程—描述各方参与者对外可见的消息交换。

简单地说,BPEL的作用是将一组现有的服务组合起来,从而定义一个新的Web服务。因此,BPEL基本上是一种实现此种组合的语言。组合服务的接口也被描述为WSDL portType的集合。 1((见附件)说明了从外部看到的 BPEL4WS 流程的上述情况。

<?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" />

SalesDB

start

end

Router

Billing

portType

WebService

WebService

WebService

WebService

(BPEL4WS流程)

Invoke

Receive

Invoke

Reply

 

 

 

  

 

 

 

 

 

 

 

 


1 作为 BPEL4WS 流程实现的 Web 服务的视图

 

实现服务

不同于用传统的编程语言来实现 WSDL 服务,每个 portType 的每项操作并不映射成 BPEL4WS 中的一个独立的逻辑块。服务的整个类型(即该服务的 portType 集合)由单个 BPEL4WS 流程实现。这样,与调用接口操作的外部用户相对应的特定入口点 BPEL4WS 描述中指明。

BPEL4WS 流程本身基本上就是一个流程图,类似于用来表达算法的流程图。流程的每一步称为一个活动。存在以下一些基本活动:调用某个 Web 服务上的操作( <invoke> ),等待一条消息来响应由某人从外部进行调用的服务接口的操作( <receive> ),生成输入/输出操作的响应( <reply> ),等待一段时间( <wait> ),把数据从一个地方复制到另一个地方( <assign> ),指明某个地方出错了( <throw> ),终止整个服务实例( <terminate> ),或者什么也不做( <empty> )。 通过使用语言所提供的任何结构化活动,可以将这些原语活动组合成更复杂的算法。

BPEL4WS 允许递归地组合结构化活动,以表达任意复杂的算法,这些算法表示了服务的实现。

至于这些操作如何使用,在后面的文章介绍。要进行联系的话可以利用EclipseBPEL插件。可以采取Update的方式进行安装,Update的更新超链接是http://download.eclipse.org/technology/bpel/update-site/

2(见附件)显示了一个在Eclipse环境下的BPEL例子。

                2  Eclipse 环境下的 BPEL 例子
描述: 图1图2
附件: zip.gif 图1图2.doc (116 K)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值