首页 BPEL开发手册

BPEL开发手册

举报
开通vip

BPEL开发手册 版本 项目名称: 版本: 文档名称:BPEL 简明开发手册 日期: 文档创建者:Sika Team 公司机密文件,请勿外漏 Page 2 目录 1. 前言 .....................................................................................................................................

BPEL开发手册
版本 <0.1> 项目名称: 版本:<0.1> 文档名称:BPEL 简明开发手册 日期:<2006/11/25> 文档创建者:Sika Team 公司机密文件,请勿外漏 Page 2 目录 1. 前言 .......................................................................................................................................................................3 1.1 关于BPEL简明开发手册..............................................................................................................................3 1.2 名词解释 .......................................................................................................................................................3 2. BPEL背景知识.....................................................................................................................................................4 3. 与WSDL的关系 ...................................................................................................................................................4 4. 定义业务流程 .......................................................................................................................................................5 4.1 BPEL实例教程 .............................................................................................................................................5 5. 业务流程的结构 .................................................................................................................................................18 5.1 <基元活动 --- BASIC ACTIVITY>.................................................................................................................21 5.1.1 ..............................................................................................................................21 5.1.2 ........................................................................................................27 5.2.1 .................................................................................................................................31 6. 合作伙伴链接类型、合作伙伴、服务引用......................................................................................................33 6.1 合作伙伴链接 .............................................................................................................................................33 6.2 伙伴链接 .....................................................................................................................................................34 6.3 服务引用 .....................................................................................................................................................34 7. 参考手册 .............................................................................................................................................................36 项目名称: 版本:<0.1> 文档名称:BPEL 简明开发手册 日期:<2006/11/25> 文档创建者:Sika Team 公司机密文件,请勿外漏 Page 3 1.1 1.2 BPEL 简明开发手册 1. 前言 关于 BPEL 简明开发手册 本手册是针对 SIKA 用户编写的 BPEL 简明开发手册,对其它开发人员学习 BPEL 也提供了一个相对容易 的入门的学习手册。本手册是参考 IBM 官方网站的 bpel v1.1 规范 编程规范下载gsp规范下载钢格栅规范下载警徽规范下载建设厅规范下载 、ORACLE 中国网站及其它网络上有关 bpel 资源,以我们的理解方式整理出来的。我们不对其最终的正确定以负责。不过,参考本手册开发出的 bpel 流程文件适合在 SIKA 系统的执行。 名词解释 1. BPEL:Business Process Execution Language,Web 服务的业务流程执行语言,是一种使用 Web 服 务定义和执行业务流程的语言。 2. WSDL :Web 服务描述语言(Web Services Description Language,WSDL)。 3. 项目名称: 版本:<0.1> 文档名称:BPEL 简明开发手册 日期:<2006/11/25> 文档创建者:Sika Team 公司机密文件,请勿外漏 Page 4 2. BPEL 背景知识 BPEL 规范是由 Microsoft、IBM、BEA 在各自的一套规范基础上共同制定和推广的,BPEL 基于 XML 和 Web 服务构建;它使用一种基于 Web 的语言,该语言支持 web 服务技术系列,包括 SOAP、WSDL、UDDI、 Web 服务可靠性消息、Web 服务寻址、Web 服务协调以及 Web 服务事务。 BPEL 代表了两种早期工作流语言---WSFL 和 XLANG 的交汇(都是 Web 服务语言)。WSFL 由 IBM 基于 有向图概念 设计 领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计 。XLANG 是一种由 Microsoft 设计的块结构化语言。BPEL 组合了这两种方法,并提供了 丰富的词汇来描述业务流程。 BPEL 的第一个版本诞生于 2002 年 8 月。此后,随着许多主要供应商(包括 Oracle)的纷纷加入 了,催生了多项修改和改进,并于 2003 年 3 月推出了 1.1 版。2003 年 4 月,BPEL 提交结构化信息标 准促进组织 (OASIS) 以实现标准化,并组建了 Web 服务业务流程执行语言技术委员会 (WSBPEL TC)。该 委员会努力使 BPEL 在业界获得更广范围的认可。 在企业内部,BPEL 用于标准化企业应用程序集成以及将此集成扩展到先前孤立的系统。在企业之间, BPEL 使与业务合作伙伴的集成变得更容易、更高效。BPEL 激发企业进一步定义它们的业务流程,从而导致 业务流程的优化、重新设计以及选择合适的流程,进而实现组织的进一步优化。 BPEL 中描述的业务流程定义并不影响现有系统,因此对升级产生了促进作用。在已经或将要通过 Web 服务公开功能的环境中,BPEL 是一项重要的技术。随着 Web 服务的不断普及,BPEL 的重要性也随之提 高。 3. 与 WSDL 的关系 BPEL4WS 依赖于以下基于 XML 的规范:WSDL 1.1、XML Schema 1.0 和 XPath 1.0。在这些规范中, WSDL 对 BPEL4WS 语言的影响最大。BPEL4WS 流程模型位于由 WSDL 1.1 所定义的服务模型之上。位于 BPEL4WS 流程模型核心的是由 WSDL 描述的服务间的对等交互概念;流程及其伙伴都被建模成 WSDL 服 务。业务流程定义了怎样协调流程实例与它的伙伴间的交互。在这个意义上,一个 BPEL4WS 流程定义提供 和/或使用一个或多个 WSDL 服务,还通过 Web 服务接口提供流程实例相对于它的伙伴和资源的行为和交 互的描述。也就是说,BPEL4WS 定义了交互中某个角色的业务流程遵守的消息交换 协议 离婚协议模板下载合伙人协议 下载渠道分销协议免费下载敬业协议下载授课协议下载 。 BPEL4WS 业务流程的定义也遵循 WSDL 的分离模型,即把业务流程使用的抽象消息内容与部署信息 (消息和 portType 与绑定和地址信息)分开。具体地说,BPEL4WS 流程用抽象 WSDL 接口(portType 和 操作)来表示所有的伙伴以及与这些伙伴的交互;它并不引用流程实例使用的实际服务。BPEL4WS 流程是 可重用的定义,可以不同的方式在不同的情况下被部署同时在它们之间保持一致的应用程序级别的行为。 请注意:BPEL4WS 流程的部署的描述超出了本规范的范围。 项目名称: 版本:<0.1> 文档名称:BPEL 简明开发手册 日期:<2006/11/25> 文档创建者:Sika Team 公司机密文件,请勿外漏 Page 5 4.1 4. 定义业务流程 描述业务流程的方式有两种。可执行业务流程模拟业务交互中的参与者的实际行为。在可执行流程 中,并不把业务流程分成从外部可看见的(或者说“公共”)部分和内部部分。相对而言,业务协议使用 的流程描述指定了涉及协议的每一方的相互可以看见的消息交换行为并隐藏它们的内部行为。涉及业务协 议的流程被称为抽象流程。一般来说,抽象流程是不可执行的。它们应被用来耦合 Web 服务接口定义与行 为规范,这些行为规范既被用于约束业务角色的实现,也被用于以准确的词汇来定义业务协议中的每一方 可以期望的对方行为。BPEL4WS 应被用来定义这两种流程。两者之间的差异仅限于这两种流程中用于数据 处理的不同功能集。 BPEL 流程指定参与的 Web 服务的确切调用顺序 - 顺序地或并行地。使用 BPEL,您可以表述条件行 为。例如,某个 Web 服务的调用可以取决于上次调用的值。还可以构造循环、声明变量、复制和赋予值、 定义故障处理程序等。通过组合所有这些构造,您可以以算法的形式定义复杂业务流程。 通常情况下,BPEL 业务流程接收请求。为了满足请求,该流程调用相关的 Web 服务,然后响应原始 调用方。由于 BPEL 流程与其它 Web 服务通信,因此它在很大程度上依赖于复合型 Web 服务调用的 Web 服务的 WSDL 描述。 开发一个 BPEL 实例一般所要的步骤: 1. 熟悉相关的 web 服务 2. 为此 BPEL 流程定义 WSDL 3. 定义合作伙伴链接类型状态 4. 进行开发 BPEL 流程开发 A. 定义合作伙伴链接 B. 声明变量 C. 编写逻辑流程定义 在定义业务流程这个小结中,为了使您更清楚地了解和掌握定义的过程,我们会用一个例子加以说明。 (暂时我们还是先用 ORACLE BPEL 实例教程的例子),通过该流程实例,使开发人员了解一个工作流 (process)的开发。 BPEL 实例教程 我们来看一个示例。一个 BPEL 流程由多个步骤组成,每个步骤称作“活动”。BPEL 支持基元活动和 结构活动。基元活动表示基本构造,用于如下所示的常见任务: • 使用 调用其它 Web 服务 • 使用 (接收请求)等待客户端通过发送消息调用业务流程 • 使用 生成同步操作的响应 • 使用 操作数据变量 项目名称: 版本:<0.1> 文档名称:BPEL 简明开发手册 日期:<2006/11/25> 文档创建者:Sika Team 公司机密文件,请勿外漏 Page 6 • 使用 指示故障和异常 • 使用 等待一段时间 • 使用 终止整个流程。 然后,我们可以组合这些基元活动以及其它基元活动,以定义准确指定业务流程步骤的复杂算法。为组 合基元活动,BPEL 支持几个结构活动。其中最重要的是: • 顺序 (),它允许定义一组将按顺序调用的活动。 • 流 (),用于定义一组将并行调用的活动 • Case-switch 构造 (),用于实现分支 • While (),用于定义循环 • 使用 能够选择多个替换路径之一。 每个 BPEL 业务还将使用 定义合作伙伴链接,使用 声明变量。 为了理解 BPEL 是如何描述业务流程的,我们将定义雇员的出差安排简化业务流程:客户端调用此业 务流程,指定雇员姓名、目的地、出发日期以及返回日期。此 BPEL 业务流程首先检查雇员出差状态。我们 将假设存在一个可用于进行此类检查的 Web 服务。然后,此 BPEL 流程首先检查雇员出差状态。我们假设存 在一个可用于进行此类检查的 Web 服务。然后,此 BPEL 流程将检查以下两家航空公司的机票价格:美国航 空公司和达美航空公司。我们将再次假设这两家航空公司均提供了可用于进行此类检查的 Web 服务。最 后,此 BPEL 流程将选择较低的价格并将出差 计划 项目进度计划表范例计划下载计划下载计划下载课程教学计划下载 返回给客户端。 然后,我们将构建一个异步 BPEL 流程。我们将假设用于检查雇员出差状态的 Web 服务是同步的。由于 可以立即获取此数据并将其返回给调用方,因此这是一个合理的方法。为了获取机票价格,我们使用异步 调用。由于确认飞机航班时刻表可能需要稍长的时间,因此这也是一个合理的方法。为了简化示例,我们 假设以上两家航空公司均提供了 Web 服务,且这两个 Web 服务完全相同(即提供相同的端口类型和操 作)。 在实际情形下,您通常无法选择 Web 服务,而是必须使用您的合作伙伴提供的服务。如果您有幸能够 同时设计 Web 服务和 BPEL 流程,则应考虑用哪个接口更好。通常,您将对持续时间较长的操作使用异步 服务,而对在相对较短的时间内返回结果的操作使用同步服务。如果使用异步 Web 服务,则 BPEL 流程也通 常是异步的。 当您用 BPEL 定义业务流程时,您实际上定义了一个由现有服务组成的新 Web 服务。该新 BPEL 复合 Web 服务的接口使用一组端口类型提供了类似任何其它 Web 服务的操作。要调用 BPEL 描述的业务流程,则必须 调用生成的复合 Web 服务。图 3 是我们流程的示意图。 项目名称: 版本:<0.1> 文档名称:BPEL 简明开发手册 日期:<2006/11/25> 文档创建者:Sika Team 公司机密文件,请勿外漏 在开发此示例 BPEL 流程的过程中,您将经历下列步骤: • 熟悉相关的 Web 服务 • 为此 BPEL 流程定义 WSDL • 定义合作伙伴链接类型 • 开发此 BPEL 流程: o 定义合作伙伴链接 o 声明变量 o 编写流程逻辑定义。 第 1 步:列出相关 Web 服务的清单 ―――――――定义每一个接口,即所谓的 web 服务清单的 PortType 在您开始编写 BPEL 流程定义之前,必须先熟悉从业务流程中调用 Web 服务。这些服务称作合作伙伴 Web 服 务。 在您开始编写 BPEL 流程定义之前,必须先熟悉 coong 业务流程中调用 Web 服务。这些服务称作为合作伙伴 Web 服务。本示例使用雇员出差状态 Web 服务以及美国航空公司和达美航空公司 Web 服务(这两个 Web 服 务具有相同的 WSDL 描述)。(同样,本示例中使用的 Web 服务是虚构的。) 雇员出差状态 Web 服务雇员出差状态 Web 服务提供 EmployeeTravelStatusPT 端口类型,通过它可以使 用 EmployeeTravelStatus 操作检查雇员出差状态。此操作将返回雇员可以使用的乘机标准(可能为经济 舱、商务舱或头等舱)。(见图 4。) Page 7 项目名称: 版本:<0.1> 文档名称:BPEL 简明开发手册 日期:<2006/11/25> 文档创建者:Sika Team 公司机密文件,请勿外漏 航空公司 Web 服务航空公司 Web 服务是异步的;因此它指定了两个端口类型:第一个端口类型 FlightAvailabilityPT 用于使用 FlightAvailability 操作检查航班可用性。为返回结果,该 Web 服务 指定了第二个端口类型 FlightCallbackPT。此端口类型指定 FlightTicketCallback 操作。 尽管航空公司 Web 服务定义了两个端口类型,但它只实现 FlightAvailabilityPT。FlightCallbackPT 则 由作为 Web 服务客户端的 BPEL 流程实现。图 5 是此 Web 服务体系结构的示意图: 第 2 步:为 BPEL 流程定义 WSDL 接下来,我们必须将此业务出差 BPEL 公开为 Web 服务。因此,第二步是为它定义 WSDL。此流程将必须 从它的客户端接收消息并返回结果。它必须公开 TravelApprovalPT 端口类型,后者将指定一个输入消 息。它还必须声明 ClientCallbackPT 端口类型(用于使用回调将结果异步返回给客户端)。图 6 说明了 此流程。 Page 8 项目名称: 版本:<0.1> 文档名称:BPEL 简明开发手册 日期:<2006/11/25> 文档创建者:Sika Team 公司机密文件,请勿外漏 Page 9 第 3 步:定义合作伙伴链接类型(partnerLinkType) ―――――――定义了由哪些 PortType 组成了一个 交互调用过程。需要为每一个交互调用定义一个 partnerLinkType 第三步是定义合作伙伴链接类型。合作伙伴链接类型表示 BPEL 流程与相关方(包括 BPEL 流程调用的 Web 服务以及调用 BPEL 流程的客户端)之间的交互。 本示例包含三个不同的合作伙伴:客户端、雇员出差状态服务和航空公司服务。理想情况下,每个 Web 服 务都应在 WSDL 包装合作伙伴链接。(实际情形可能不是这样的。)然后,我们可以用 WSDL 包装合作伙伴 Web 服务(倒入 Web 服务的 WSDL 兵定义合作伙伴链接类型)。或者,我们可以在 BPEL 流程的 WSDL 中定义 所有合作伙伴链接。但由于此方法违反了封装 原则 组织架构调整原则组织架构设计原则组织架构设置原则财政预算编制原则问卷调查设计原则 ,因此不建议使用。 对于本示例,我们定义了三个合作伙伴链接类型(每个类型位于 Web 服务的相应 WSDL 中): • travelLT:用于描述此 BPEL 流程客户端与此 BPEL 流程本身之间的交互。此交互是异步交互。此 合作伙伴链接类型在此 BPEL 流程的 WSDL 中定义。 • employeeLT:用于描述此 BPEL 流程与雇员出差状态 Web 服务之间的交互。此交互是同步交互。 此合作伙伴链接类型在雇员 Web 服务的 WSDL 中定义。 • flightLT:描述此 BPEL 流程与航空公司 Web 服务之间的交互。此交互是异步交互,且航空公司 Web 服务对此 BPEL 流程调用一个回调。此合作伙伴链接类型在航空公司 Web 服务的 WSDL 中定 义。 每个合作伙伴链接可以拥有一个或两个角色,我们必须为每个角色指定它使用的 portType。对于同步操 作,由于操作只是单向调用,因此每个合作伙伴链接类型仅有一个角色。例如,此 BPEL 流程对雇员出差 状态 Web 服务调用 EmployeeTravelStatus 操作。由于它是同步操作,因此此 BPEL 流程等待完成并仅在 完成操作后取得响应。 对于异步回调操作,我们必须指定两个角色。第一个角色描述客户端操作调用。第二个角色描述回调操作 调用。在本示例中,BPEL 流程与航空公司 Web 服务之间存在一个异步关系。 正如我们已经指出的,我们需要三个合作伙伴链接类型:两个链接类型指定两个角色(因为它们是异步 的),一个链接类型指定一个角色(因为它是同步的)。 合作伙伴链接类型在特殊命名空间http://schemas.xmlsoap.org/ws/2003/05/partner-link/ 的 WSDL 定 义。首先,我们在客户端使用的 BPEL 流程 WSDL 中定义 travelLT 链接类型以调用此 BPEL 流程。所需 的第一个角色是出差服务(即,我们的 BPEL 流程)的角色。客户端使用 TravelApprovalPT 端口类型与 此 BPEL 服务通信。第二个角色 travelServiceCustomer 描述了此 BPEL 流程将在 ClientCallbackPT 端 口类型中对其执行回调的客户端的特征: 项目名称: 版本:<0.1> 文档名称:BPEL 简明开发手册 日期:<2006/11/25> 文档创建者:Sika Team 公司机密文件,请勿外漏 Page 10 第二个链接类型是 employeeLT。它用于描述此 BPEL 流程与雇员出差状态 Web 服务之间的通信,并在此 雇员 Web 服务的 WSDL 中定义。此交互是同步交互,因此我们需要一个名为 employeeTravelStatusService 的角色。此 BPEL 流程使用雇员 Web 服务上的 EmployeeTravelStatusPT: 注意:因为此过程序同步的,所以只有一个角色,不同于其它两个通信过程。 最后一个合作伙伴链接类型 flightLT 用于描述此 BPEL 流程与航空公司 Web 服务之间的通信。此通信是 异步通信。此 BPEL 流程对航空公司 Web 服务调用一个异步操作。此 Web 服务在完成请求后对此 BPEL 流程调用一个回调。因此,我们需要两个角色。第一个角色描述航空公司 Web 服务对于此 BPEL 流程服务 的角色,即航空公司服务 (airlineService)。此 BPEL 流程使用 FlightAvailabilityPT 端口类型进行异 步调用。第二个角色描述了此 BPEL 流程对于航空公司 Web 服务的角色。对于航空公司 Web 服务而言, 此 BPEL 流程是一个航空公司客户,因此角色名称为 airlineCustomer。航空公司 Web 服务使用 FlightCallbackPT 端口类型进行回调。此合作伙伴链接类型在航空公司 Web 服务的 WSDL 中定义: 了解合作伙伴链接类型对于开发 BPEL 流程规范至关重要。有时,它可以帮助生成所有交互的图表。定义 合作伙伴链接类型后,我们已经完成了准备阶段,并准备开始编写业务流程定义。 第 4 步:创建业务流程 ―――――――在 bpel 文件中定义业务流程 现在,您就可以开始编写 BPEL 流程了。通常,BPEL 流程等待客户端传入的消息,以启动业务流程的执 行。在本示例中,客户端通过发送输入消息TravelRequest 启动此 BPEL 流程。然后,此 BPEL 流程通过 发送 EmployeeTravelStatusRequest 消息调用雇员出差状态 Web 服务。由于此调用是同步调用,因此它 等待 EmployeeTravelStatusResponse 消息。然后,此 BPEL 流程通过向上述两家航空公司 Web 服务发送 FlightTicketRequest 消息对它们进行并发异步调用。每个航空公司 Web 服务通过发送 TravelReponse 消息进行回调。然后,此 BPEL 流程选择较合适的航空公司并使用 TravelResponse 消息对客户端进行回 调。我们首先编写一个空的 BPEL 流程提纲,它展示了每个 BPEL 流程定义文档的基本结构: 项目名称: 版本:<0.1> 文档名称:BPEL 简明开发手册 日期:<2006/11/25> 文档创建者:Sika Team 公司机密文件,请勿外漏 Page 11 我们首先添加所需的命名空间。此处,我们必须定义目标命名空间以及用于访问雇员和航空公司 WSDL 以 及此 BPEL 流程 WSDL 的命名空间。我们还必须为所有 BPEL 活动标记声明命名空间(此处采用缺省命名 空间,以便不必限定每个 BPEL 标记名)。BPEL 活动命名空间必须为 http://schemas.xmlsoap.org/ws/2003/03/business-process/: ... 合作伙伴链接(partnerLink) ―――在 bpel 文件中定义此 partnerLinks 目的在于导入各个 wsdl 文件 中的 partnerLink,并且确定在交互过程忠各自的角色如何。 接下来,我们必须定义合作伙伴链接,它们定义与此 BPEL 流程交互的不同方。每个合作伙伴链接都与描 述其特性的特定 partnerLinkType 相关。每个合作伙伴链接还最多指定两个属性: • myRole:表明业务流程本身的角色。 • partnerRole:表明合作伙伴的角色。 注意: myRole 是此 bpel 流程所扮演的角色,而 partnerRole 是其合作伙伴所扮演的角色。 合作伙伴链接仅可以指定一个角色,通常同步请求/响应操作也仅能指定一个角色。对于异步操作,它指定 两个角色。在本示例中,我们定义四个角色。第一个合作伙伴链接称作客户端,由 travelLT 合作伙伴链 接类型描述其特性。此客户端调用该业务流程。我们需要指定 此 BPEL 流程 (myRole 属性) 的角色为 travelService。我们必须指定第二个角色:partnerRole。此处,该角色为 travelServiceCustomer,它 项目名称: 版本:<0.1> 文档名称:BPEL 简明开发手册 日期:<2006/11/25> 文档创建者:Sika Team 公司机密文件,请勿外漏 Page 12 描述 BPEL 流程客户端的特性。 第二个合作伙伴链接称作 employeeTravelStatus,由 employeeLT 合作伙伴链接类型描述其特性。它是 BPEL 流程与 Web 服务之间的一个同步请求/响应关系;我们再次仅指定一个角色。此时,该角色为 partnerRole,这是因为我们描述了 Web 服务(它是此 BPEL 流程的合作伙伴)的角色: 最后两个合作伙伴链接对应于航空公司 Web 服务。由于它们使用同一类型的 Web 服务,因此我们基于一 个合作伙伴链接类型 flightLT 指定两个合作伙伴链接。此处,由于我们使用异步回调通信,因此需要两 个角色。此 BPEL 流程 (myRole) 对于航空公司 Web 服务的角色为 airlineCustomer,而航空公司 (partnerRole) 的角色为 airlineService: 变量 变量 BPEL 流程中的变量用于存储消息以及对这些消息进行重新格式化和转换。您通常需要为发送到合作 伙伴以及从合作伙伴收到的每个消息定义一个变量。就我们的流程而言,我们需要七个变量。我们将它们 命名为 TravelRequest、EmployeeTravelStatusRequest、EmployeeTravelStatusResponse、 FlightDetails、FlightResponseAA、FlightResponseDA 和 TravelResponse。 我们必须为每个变量指定类型。可以使用 WSDL 消息类型、XML 模式简单类型或 XML 模式元素。在我们的 示例中,我们对所有变量使用 WSDL 消息类型: 项目名称: 版本:<0.1> 文档名称:BPEL 简明开发手册 日期:<2006/11/25> 文档创建者:Sika Team 公司机密文件,请勿外漏 Page 13 BPEL 流程主体 BPEL 流程主体流程主体指定调用合作伙伴 Web 服务的顺序。它通常以 (用于定义多个将按顺 序执行的操作)开始。在顺序中,我们首先指定启动业务流程的输入消息。我们使用 构造(它 等待匹配消息,在本示例中为 TravelRequest 消息)实现此目的。在 构造中,我们不直接指 定消息。而是指定合作伙伴链接、端口类型、操作名称以及可选变量(用于保存收到的消息以用于随后的 操作)。 我们将消息接收与客户端合作伙伴链接在一起,并等待对端口类型 TravelApprovalPT 调用 TravelApproval 操作。我们将收到的消息存储到 TravelRequest 变量中: ... 等待客户端调用 TravelApproval 操作,并将传入的消息以及有关业务出差的参数存储到 TravelRequest 变量中。此处,此变量名与消息名相同,但并不一定要相同。 接下来,我们需要调用雇员出差状态 Web 服务。但在调用之前,我们必须为此 Web 服务准备输入。查看 雇员 Web 服务的 WSDL,可以看到我们必须发送由雇员部分组成的消息。我们可以通过复制客户端发送的 消息的雇员部分来构造此消息。编写相应的赋值语句: ... ... 现在,我们就可以调用雇员出差状态 Web 服务了。为了进行同步调用,我们使用 活动。我们使 用 employeeTravelStatus 合作伙伴链接,并对 EmployeeTravelStatusPT 端口类型调用 项目名称: 版本:<0.1> 文档名称:BPEL 简明开发手册 日期:<2006/11/25> 文档创建者:Sika Team 公司机密文件,请勿外漏 Page 14 EmployeeTravelStatus 操作。我们已经在 EmployeeTravelStatusRequest 变量中准备了输入消息。由于 它是同步调用,因此该调用等待回应并将其存储在 EmployeeTravelStatusResponse 变量中:... 同步调用会有两个变量:inputVariable、outputVariable。 ... 下一步是调用上述两个航空公司 Web 服务。同样,我们先准备所需的输入消息(这两个 Web 服务的输入 消息相同)。FlightTicketRequest 消息包含两部分: • flightData:它从客户端消息 (TravelRequest) 中检索而得。 • travelClass:它从 EmployeeTravelStatusResponse 变量中检索而得。 因此,我
本文档为【BPEL开发手册】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_417108
暂无简介~
格式:pdf
大小:654KB
软件:PDF阅读器
页数:36
分类:互联网
上传时间:2011-10-25
浏览量:32