Oracle 技术网 (OTN) > 面向开发人员和数据库管理员的下载、讨论和文档
使用 Oracle BPEL Process Manager 协调简单的流程

使用 Oracle BPEL Process Manager 协调简单的流程

本教程讲述了如何使用 Oracle JDeveloper 10g BPEL Designer 调用 United Loan、Star Loan 和 Credit Rating 等 Web 服务。本教程使用 JDeveloper 创建一个名为 MyLoanProcess 的 BPEL 流程。

大约 40 分钟

主题

本教程包括下列主题:

创建新的 BPEL 项目

创建合作伙伴链接

添加新的流程变量
设计贷款流流程
部署和测试贷款流流程

将光标置于此图标上可以加载和查看本教程的所有屏幕截图。(警告:此操作会同时加载所有屏幕截图,网速较慢时,响应时间可能会比较长。)

注意:您还可以在下面的步骤中将光标放在每个单独的图标上,仅加载和查看与该步骤相关的屏幕截图。

概述

本教程演示了如何使用 Oracle JDeveloper 10g BPEL Designer 设计贷款流 BPEL 流程。MyLoanProcess 通过与客户贷款申请同步调用 CreditRatingService 执行信用检查。然后由下面两个 Web 服务异步处理与信用等级一起(从 CreditRatingService 中)返回的贷款申请:

UnitedLoan Web 服务
StarLoan Web 服务

返回主题列表

同步调用 CreditRatingService 流程之后,首先使用一个信用评级值修改客户提供的贷款申请文档。修改后的贷款文档由 UnitedLoan 和 StarLoan Web 服务并行处理。每个贷款提供商 Web 服务都会返回一个贷款意向,即接受贷款申请的文档或由客户进行处理。

返回主题列表

前提条件

开始本教程之前,您应该:

1.

将 Internet Explorer 6.0 设为默认浏览器。

 

2.

将 Oracle JDeveloper BPEL Designer 和 Oracle BPEL PM 服务器安装到名为 D:\JDeveloper\JDevBPEL 的目录。


3.

按以下方式启动 Oracle BPEL PM 服务器:
开始 > 程序 > Oracle - OracleBPM > Oracle BPEL Process Manager 10.1.2 > Start BPEL PM Server


4.

按以下方式启动 Oracle JDeveloper 10g BPEL Designer:
开始 > 程序 > Oracle - OracleBPM > Oracle BPEL Process Manager 10.1.2 > BPEL Designer

您还可以双击标签为 BPEL Designer 的桌面图标来启动 Oracle JDeveloper 10g BPEL Designer。

将您的机器名添加到 JDeveloper 代理设置中。这将支持从本地机器上读取 WSDL 文件。转至 Tools > Preferences > Web Browser and Proxy 并在 Exceptions 域中输入机器名。

 

5.

将 CreditRatingService、StarLoan 和 UnitedLoan Web 服务部署到 Oracle BPEL PM 服务器中。按以下方式启动命令窗口:
开始 > 程序 > Oracle - OracleBPM > Oracle BPEL Process Manager 10.1.2 > Developer Prompt

在命令窗口中输入以下命令:

cd utils\CreditRatingService
obant
cd ..\AsyncLoanService
obant

 

6.

在 BPEL Console 中,验证是否已经部署了 CreditRatingService、StarLoan 和 UnitedLoan Web 服务。选择开始 > 程序 > Oracle - OracleBPM > Oracle BPEL Process Manager 10.1.2 > BPEL Console,启动 BPEL Console。在提示时,输入默认的口令 bpel。BPEL Console 在 Dashboard 页面的 Deployed BPEL Process 列中显示了这些 Web 服务的名称。

将光标放在该图标上可以查看该图像

注意:如果 IE 6.0 不是默认的浏览器,那么直接启动 IE 6.0,并输入 URL http://:9700/BPELConsole 来启动 BPEL Console。

 

7.

右键单击该 LoanFlow.xsd 链接下载该链接并将该链接或目标保存到名为 C:\Hands_on_Labs\bpel_jdev\support_files 的目录或者您选择的临时目录中的一个文件。

 

返回主题列表

创建新的 BPEL 项目

要创建一个新的 BPEL 项目,执行下列步骤:

1.

在 Oracle JDeveloper 10g BPEL Designer 菜单中,选择 File > New

将光标放在该图标上可以查看该图像

 

2.

New Gallery 窗口中,单击 General 类别,然后选择 Workspace 项。单击 OK

将光标放在该图标上可以查看该图像

 

 

3.

Create Workspace 对话框中,应用下列域值。

Workspace NameMyLoanProcessWS

Directory Name:接受自动匹配所输入工作区名称的值。
取消选中 Add a New Empty Project 复选框。

Open in New Navigator 复选框保持不选中状态。

单击 OK

将光标放在该图标上可以查看该图像

 

4.

新工作区 MyLoanProcessWS 出现在 JDeveloper Applications - Navigator 窗格中的 Applications 文件夹下。按 [Ctrl] + [S] 保存该新工作区。

注意:您可以选择 File > Save 保存选择的文件,还可以选择 File > Save All 保存对该项目中所有文件所做的更改。

 

5.

要创建一个新的 BPEL 项目,右键单击 Applications - Navigator 中的 MyLoanProcessWS,然后选择 New Project

将光标放在该图标上可以查看该图像

 

6.

New Gallery 窗口中,单击 General 下面的 Projects,然后选择 BPEL Process Project 项。单击 OK

将光标放在该图标上可以查看该图像

 

7.

BPEL Process Project 对话框中,输入下列值:

BPEL Process NameMyLoanProcess

Namespacehttp://xmlns.oracle.com/MyLoanProcess,它自动镜像该 BPEL 流程的名称。不要更改该值。
Template默认情况下选中 Asynchronous BPEL Process。接受该值。

Project Content 区域中,应该选中了 Use Default 复选框。

单击 OK

 

8.

在 Navigator 中,会创建下面三个文件:

bpel.xml 包含该 BPEL 项目的合作伙伴链接绑定。

MyLoanProcess.bpel 包含描述该 BPEL 流程的 BPEL 元素。
MyLoanProcess.wsdl 将该 BPEL 流程的接口描述为一个 Web 服务。

JDeveloper 自动在 Diagram View 页面中打开 MyLoanProcess.bpel。在 Diagram View 页面上将显示初始的 BPEL 流程活动。您可以使用该页面以图形方式创建和编辑 BPEL 流程。

选择 File > Save All 保存这些新项目文件。

 

9.

导入 LoanFlow.xsd XML 模式文档。该 XML 模式文件提供 loanApplicationloanOffer 类型的定义,这两个类型分别用于定义该 BPEL 流程的输入和响应文档的结构。

要将 XML 模式文档导入到 BPEL 项目目录中,选择 Structure 窗格中的 Project Schemas(必须在 Applications - Navigator 中选择 MyLoanProcess.bpel)。单击 Import

 

10.

Import Schema 对话框中,单击 Browse File System 图标。

Open 对话框中导航至 C:\Hands_on_Labs\bpel_jdev\support_files 目录(或者您将文件下载到的临时目录),然后单击 Open。选择 LoanFlow.xsd

 

11.

单击 OK 关闭 Import Schema 对话框。

 

12.

在 Structure 窗格中,注意到在 Project Schema 下面出现了 LoanFlow.xsd 文件。

您也可以在 Applications - Navigator 中看到。

选择 File > Save All 保存对该项目和工作区所做的更改。

 

13.

在 Structure 窗格中,单击 '+' 展开 Message Types 节点。展开 Process WSDL - MyLoanProcess.wsdl ,然后选择 MyLoanProcessRequestMessage

单击 Edit

 

14.

Edit Message Type - MyLoanProcessRequestMessage 窗口中,选择 payload。单击 Edit

 

15.

Edit Message Part - payload 窗口中选择 Element。单击 Browse Elements 图标。

 

16.

Type Chooser 窗口中,展开 Project Schema Files,然后展开 LoanFlow.xsd,然后选择 loanApplication。单击 OK

 

17.

Edit Message Part - payload 窗口中,单击 OK

 

18.

Edit Message Type - MyLoanProcessRequestMessage 窗口中,单击 OK

 

19.

要设置 BPEL 流程的响应消息类型,在 Structure 窗格中选择 MyLoanProcessResponseMessage。单击 Edit

 

20.

在响应消息的 Edit Message Type - MyLoanProcessResponseMessage 窗口中,选择 payload。单击 Edit

 

21.

Edit Message Part - payload 窗口中选择 Element。单击 Browse Elements 图标。

 

22.

Type Chooser 窗口中,展开 Project Schema Files,然后展开 LoanFlow.xsd,然后选择 loanOffer。单击 OK

 

23.

要关闭 Edit Message Part - payload 窗口,单击 OK。在 Edit Message Type - MyLoanProcessResponseMessage 窗口中,单击 OK

 

返回主题列表

创建合作伙伴链接

要为该 BPEL 流程调用的每个 Web 服务创建合作伙伴链接,执行以下步骤:

1.

当 MyLoanProcess.bpel 显示在 Diagram View 中时,从 Component Palette 列表中选择 Process Activities

将光标放在该图标上可以查看该图像

 

2.

要为 CreditRatingService Web 服务创建合作伙伴链接,将 PartnerLink 对象从 Component Palette 拖至 BPEL 流程活动右侧的 Partner Links 区域。

将光标放在该图标上可以查看该图像

 

3.

Create Partner Link 窗口中,单击 WSIL Browser 图标 打开 WSDL Chooser

将光标放在该图标上可以查看该图像

 

4.

WSDL Chooser 窗口中,展开 BPEL_connprocessdefault 等节点。选择 CreditRatingService。单击 OK

将光标放在该图标上可以查看该图像

 

5.

Create Partner Link 窗口中,WSDL FilePartner Link Type 域使用您在 WSDL Chooser 中的选择进行填充。输入或选择下列域值。

Name:creditRatingService

My Role:----- Not Specified -----

Partner Role:CreditRatingServiceProvider

单击 OK

creditRatingService 合作伙伴链接框出现在 Diagram View 中该 BPEL 流程右侧的 Partner Links 区域中。

 

6.

要为 UnitedLoan Web 服务创建合作伙伴链接,将 PartnerLink 对象从 Component Palette 拖至 BPEL 流程活动右侧的 Partner Links 区域:

 

7.

Create Partner Link 窗口中,单击 WSIL Browser 图标 打开 WSDL Chooser。在 WSDL Chooser 中,展开 LocalBPELServerprocessesdefault 节点,并选择 UnitedLoan。单击 OK

 

8.

UnitedLoan Web 服务的 Create Partner Link 窗口中,用您在 WSDL Chooser 中的选择填充了 WSDL File 和 Partner Link Type 域。输入或选择下列域值。

Name:unitedLoanService

My Role:LoanServiceRequester

Partner Role:LoanServiceProvider

单击 OK

unitedLoanService 合作伙伴链接框添加到 Diagram View 中该 BPEL 流程右侧的 Partner Links 区域:

 

9.

要为 StarLoan Web 服务创建合作伙伴链接,将 PartnerLink 对象从 Component Palette 拖至右侧的 Partner Links 区域。

 

10.

Create Partner Link 窗口中,单击 WSIL Browser 图标 打开 WSDL Chooser。在 WSDL Chooser 中,展开 LocalBPELServerprocessesdefault 节点。选择 StarLoan。单击 OK

 

11.

StarLoan Web 服务的 Create Partner Link 窗口中,用您在 WSDL Chooser 中的选择填充了 WSDL File 和 Partner Link Type 域。输入或选择下列域值:

Name:starLoanService

My Role:LoanServiceRequester

Partner Role:LoanServiceProvider

单击 OK

starLoanService 合作伙伴链接框添加到 Diagram View 中该 BPEL 流程右侧的 Partner Links 区域:

选择 File > Save All 保存对这些项目文件所做的更改。

 

返回主题列表

添加新的流程变量

要为 MyLoanProcess BPEL 流程中的活动创建变量,执行以下步骤:

1.

MyLoanProcess.bpel - Structure 窗格中,展开 VariablesProcessVariables 查看两个定义为 inputVariableoutputVariable 的变量。

将光标放在该图标上可以查看该图像

 

2.

要为 CreditRatingService 创建输入变量,在 Structure 窗格中,选择 Process 子节点下的 Variables。然后单击 Create

将光标放在该图标上可以查看该图像

 

3.

Create Variable 窗口的 Name 域中,输入 crInput,选择 Message Type,然后单击 Browse Message Types 图标

 

4.

Type Chooser 窗口中,展开 Message TypesPartner LinkscreditRatingServiceCreditRatingServiceMessage Types。选择 CreditRatingServiceRequestMessage。单击 Ok

 

5.

Create Variable 窗口中,单击 OK

crInput 变量出现在 Structure 窗格中的 BPEL 流程变量列表中。

 

6.

CreditRatingService 创建一个输出变量。选择 Structure 窗格的 Process 子节点下面的 Variables。单击 Create

Create Variable 窗口的 Name 域中输入 crOutput。选择 Message Type,其值为从 CreditRatingServiceMessage Types 节点选择的 CreditRatingServiceResponseMessage。单击 OK。在 Create Variable 窗口中,单击 OK

 

7.

CreditRatingService 创建一个错误变量,选择 Variables,然后单击 Create

Create Variable 窗口的 Name 域中输入 crError。选择 Message Type,其值为从 CreditRatingServiceMessage Types 树选择的 CreditRatingServiceFaultMessage。单击 OK。在 Create Variable 窗口中,单击 OK

选择 File > Save All 保存对这些项目文件所做的更改。

 

8.

UnitedLoan 和 StarLoan Web 服务创建贷款申请输入变量,选择 Variables,然后单击 Create

Create Variable 窗口的 Name 域中输入 loanApplication。选择 Message Type,其值为从 UnitedLoanService、Message Types 树选择的 LoanServiceRequestMessage。单击 OK。在 Create Variable 窗口中,单击 OK

 

9.

UnitedLoan Web 服务创建贷款意向输出变量,选择 Variables,然后单击 Create

Create Variable 窗口的 Name 域中输入 unitedOffer。选择 Message Type,其值为从 UnitedLoanServiceMessage Types 树选择的 LoanServiceResultMessage。单击 OK。在 Create Variable 窗口中,单击 OK

 

10.

StarLoan Web 服务创建贷款意向输出变量,选择 Variables,然后单击 Create

Create Variable 窗口的 Name 域中输入 starOffer。选择 Message Type,其值为从 StarLoanServiceMessage Types 树选择的 LoanServiceResultMessage。单击 OK。在 Create Variable 窗口中,单击 OK

选择 File > Save All 保存对这些项目文件所做的更改。

 

11.

MyLoanProcess.bpelStructure 窗格中,验证在 BPEL Structure > Variables > Process > Variables 节点下是否定义了八个流程变量(如附带的屏幕截图所示)。

 

返回主题列表

设计贷款流流程

在创建该 BPEL 流程期间,您应该定期保存对 MyLoanProcess.bpel 文件和项目所做的更改。每完成一个新 BPEL 活动的所有步骤都要选择 File > Save All 保存所做的更改。

本节包括下列子主题:

调用同步的 CreditRatingService Web 服务
为 CreditRatingService 添加一个错误处理器
并行调用异步的 UnitedLoan 和 StarLoan Web 服务

添加选择贷款意向的条件分支

返回主题列表

调用同步的 CreditRatingService Web 服务

要设计同步调用 CreditRatingService Web 服务的贷款流流程活动,执行下列步骤:

1.

在 JDeveloper Diagram View 中,将 ScopeComponent Palette 拖至 receiveInputcallbackClient 活动之间的区域。

将光标放在该图标上可以查看该图像

 

2.

要命名新的 Scope,双击 Diagram View 中的 Scope_1。在 Scope 对话框的 General 页面中,在 Name 域中输入值 GetCreditRating。单击 OK

将光标放在该图标上可以查看该图像

 

3.

要展开,单击 GetCreditRating 范围

 

4.

Diagram View 中,将 Assign 活动从 Component Palette 拖至 GetCreditRating 范围中标记为 Drop Activity Here 的区域。

 

5.

 

接下来,创建一个复制规则,使得 SSN 值从 inputVariable 进入 crInput 变量,以传递给 CreditRatingService。为此,双击 Assign_1 活动,显示 Assign 属性。单击 Copy Rules 页面上的 Create

 

6.

Create Copy Rule 窗口中,选择 Variable 作为 From 和 To 部分的类型。(这是默认值。)

From 部分中,展开 ProcessVariablesinputVariablepayloadns1:loanApplication,并选择 ns1:SSN

To 部分中,展开 ProcessVariablescrInputpayload,并选择 ns2:ssn

观察 XPath Query 在相应的 XPath 域中选择的变量。单击 OK 保存复制规则设置。

 

7.

检查 Assign 属性部分中的新复制规则的详细信息。单击 OK。如果输入的详细信息有效,则清除 Invalid Settings 错误消息。

 

8.

Invoke 活动从 Component Palette 拖至 GetCreditRating ScopeAssign_1 活动之后:

 

9.

要使 Invoke 活动能够启动 CreditRatingService,双击 Invoke_1 活动,在 General 页面中设置下列属性值。

Name:invokeCR

Partner Link:creditRatingService

Input Variable:crInput。(单击 Browse Variables 图标并选择 crInput
Output Variable:crOutput(单击 Browse Variables 图标并选择 crOutput

单击 OK

 

10.

将另一个 Assign 活动从 Component Palette 拖至 GetCreditRating ScopeinvokeCR 活动之后:

 

11.

双击 Assign_2 活动。要添加复制规则,单击 Create

 

12.

Create Copy Rule 窗口中,选择 Variable 作为 From 和 To 部分的类型(这是默认值)。

From 部分中,展开 ProcessVariablescrOutputpayload,并选择 ns2:rating

To 部分中,展开 ProcessVariablesloanApplicationpayloadns1:loanApplication,并选择 ns1:creditRating

观察 XPath Query 在相应的 XPath 域中选择的变量。单击 OK 保存复制规则设置。

 

13.

检查 Assign 属性部分中的新复制规则的详细信息。单击 OK。如果输入的详细信息有效,则清除 Invalid Settings 错误消息。

选择 File > Save All 保存对该 BPEL 项目所做的更改。

 

返回主题

为 CreditRatingService 添加一个错误处理器

要添加处理 CreditRatingService Web 服务所返回错误的流程活动,并终止该 BPEL 流程,执行下列步骤:

1.

您要添加一个处理以起始为零的 SSN 值调用 CreditRatingService 时所生成 NegativeCredit 错误的错误处理器。为此,首先单击 GetCreditRating 范围上的 Add Catch Branch 图标

 

2.

双击 Add Catch 分支中的 图标。

 

3.

Catch 页面上,单击 Browse Faults 图标选择默认的变量。

注意:Fault Name 的名称必须为 NegativeCredit,该名称与 CreditRatingService Web 服务的 WSDL 中定义的名称相同。命名空间前缀 ns2 必须与用于限定该 BPEL 流程中 crError 变量的命名空间前缀相匹配。

 

4.

Fault Chooser 对话框中,展开 Partner LinkscreditRatingServiceCreditRatingService,并选择 Fault - NegativeCredit。单击 OK

 

5.

对于 Fault Variable,单击 Browse Faults 图标,并选择 crError。单击 OK

 

6.

要处理该错误,将 Assign 活动拖至 ns2:NegativeCredit Catch 分支中标记为 Drop Activity Here 的区域。

 

7.

要添加表明不在 outputVariable 中批准贷款意所需的复制规则,双击 Assign_3。单击 Create

 

8.

Create Copy Rule 窗口的 From 部分,通过下列操作将 Expression
设置为值 string('None - rejected because of bad credit')

Type 下拉列表中选择 Expression 选项,然后单击 Expression 域。

[Ctrl]+[Space] 调用 XPath Building Assistant

输入 st 限制所显示的 XPath 函数列表的长度,然后双击 string(any input) as String
string() 函数的括号内输入文本 'None - rejected because of bad credit'。

 

9.

To 部分中,展开 ProcessVariablesoutputVariablepayload ns1:loanOffer,并选择 ns1:providerName。单击 OK

 

10.

Assign 属性部分中,单击 Create 添加第二条复制规则。

 

11.

Create Copy Rule 窗口的 From 部分中,使用 XPath Building AssistantExpression 域值设置为函数 false()

 

12.

To 部分中,展开 ProcessVariablesoutputVariablepayloadns1:loanOffer,并选择 ns1:selected。单击 OK

 

13.

Assign 属性部分中,单击 Create 添加第三条复制规则。

 

14.

Create Copy Rule 窗口的 From 部分中,使用 XPath Building AssistantExpression 域值设置为函数 false()

 

15.

To 部分中,展开 ProcessVariablesoutputVariablepayloadns1:loanOffer,并选择 ns1:approved。单击 OK

 

16.

Assign 属性部分中,单击 Create 添加第四条即最后一条复制规则。

 

17.

Create Copy Rule 窗口的 From 部分,使用 XPath Building AssistantExpression 域值设置为 number(100)

 

18.

To 部分中,展开 ProcessVariablesoutputVariablepayloadns1:loanOffer,并选择 ns1:APR。单击 OK

 

19.

验证在 Assign 属性中存在四条复制规则。单击 OK

 

20.

要回调该客户端,将 Invoke 活动从 Component Palette 拖至 ns2:NegativeCredit Catch 分支中 Assign_3 之后的区域。

 

21.

双击 Invoke_1 活动。在 Invoke 属性中,设置下列域值:

Name:badCreditClientCallback

Partner Link:client

Input Variable:outputVariable
Output Variable 为空。

单击 OK

 

22.

要因为发生 NegativeCredit 错误而终止 BPEL 流程,将 Terminate 活动从 Component Palette 拖至 ns2:NegativeCredit Catch 分支中 badCreditClientCallback invoke 活动的后面。

注意:单击 GetCreditRating 范围左上角的折叠图标 ,将使用的区域最小化。

选择 File > Save All 保存对该 BPEL 项目所做的更改。

 

返回主题

并行调用异步的 UnitedLoan 和 StarLoan Web 服务

要设计并行异步调用 UnitedLoan 和 StarLoan Web 服务的流程活动,执行下列步骤:

1.

要为并行流创建范围,将 Scope 组件从 Component Palette 拖至第一个 GetCreditRating 范围之后。

 

2.

要更改新范围的名称,双击 Scope_1。在 Name 域中输入 GetLoanOffers。单击 OK

 

3.

展开 GetLoanOffers 范围。要初始化 loanApplication 变量,请将 Assign 活动拖至 GetLoanOffers 范围的 Drop Activity Here 区域。

 

4.

要设置 assign 活动属性,双击 Assign_4 活动。单击 General 选项卡。将 Name 域内容更改为 InitializeInput。单击 Copy Rules 选项卡。

单击 Create

 

5.

Create Copy Rule 窗口中,选择 Variable 作为 From 和 To 部分的类型。(这是默认值。)

From 部分中,展开 ProcessVariablesinputVariables,并选择 payload

To 部分中,展开 ProcessVariablesloanApplication,并选择 payload。单击 OK

单击 OK

 

6.

要创建并行流,将 Flow 组件拖至 InitializeInput assign 活动之后的区域。

该流将自动扩展,包含这些活动的平行的左侧和右侧区域。

 

7.

在该流的左侧,将 Invoke 组件拖至 Drop Activity Here 区域。

 

8.

双击 Invoke_1,然后设置下列 Invoke 属性。

Name:invokeUnitedLoan

Partner Link:unitedLoanService

Input Variable:loanApplication

注意:调用异步 Web 服务时无法设置 Output Variable 属性。

单击 OK

 

9.

在该流的左侧,将 Receive 组件拖至 invokeUnitedLoan 活动的后面。

 

10.

双击 Receive_1,然后设置下列 Receive 属性。

Name:receive_invokeUnitedLoan

Partner Link:unitedLoanService

Variable:unitedOffer

注意:不要选择 Create Instance 复选框。

单击 OK

 

11.

在该流的右侧,将 Invoke 组件拖至 Drop Activity Here 区域。

 

12.

双击 Invoke_1,然后设置下列 Invoke 属性。

Name:invokeStarLoan

Partner Link:starLoanService

Input Variable:loanApplication

单击 OK

 

13.

在该流的右侧,将 Receive 组件拖至 invokeStarLoan 活动的后面。

 

14.

双击 Receive_1,然后设置下列 Receive 属性。

Name:receive_invokeStarLoan

Partner Link:starLoanService

Variable:starOffer

注意:不要选择 Create Instance 复选框。

单击 OK

折叠 GetLoanOffers 范围。

选择 File > Save All 保存对该 BPEL 项目所做的更改。

 

返回主题

添加选择贷款意向的条件分支

要创建 BPEL 活动的条件分支以从 UnitedLoan 或 StarLoan Web 服务中选择最好的贷款意向,执行下列步骤:

1.

将一个 Scope 组件拖到 GetLoanOffers 范围后。

 

2.

要设置范围名称,双击 Scope_1,然后在 Name 属性中输入 ChooseLoanOffer:单击 OK

 

3.

要创建条件分支,展开 ChooseLoanOffer 范围,将 Switch 活动拖至 Drop Activity Here 区域。

该 switch 活动会实现一个条件分支,该分支最初在左侧包含一个 ,在右侧包含一个 分支。

 

4.

要创建条件,双击 分支。

 

5.

Switch Case 属性中,使用 XPath Building AssistantExpression 域中构建下列条件。

bpws:getVariableData('unitedOffer', 'payload', '/ns1:loanOffer/ns1:APR') > 
bpws:getVariableData('starOffer', 'payload', '/ns1:loanOffer/ns1:APR')

单击 Expression 域。按 [Ctrl]+[Space] 调用 XPath Building Assistant。双击 XPath Building Assistant 列表中的 bpws:getVariableData 条目,其中带有三个 String 参数。设置上述表达式中显示的参数。在完成第一个表达式之后,输入一个 '>' 符号,然后设置第二个表达式。单击 OK

注意:XPath Building Assistant 为每一个参数提供了很多可选的值。

 

6.

如果 条件表达式为真,则处理它的分支。因此,应该选择 StarLoan 贷款意向,这是因为它比 UnitedLoan 贷款意向更好(更低)。要选择 starOffer,将一个 Assign 组件拖至 分支的 Drop Activity Here 区域。

 

7.

双击 Assign_4。要将 starOffer 复制到 outputVariable 中,在Assign 属性中单击 General 选项卡。在 Name 属性中输入 selectStarOffer。单击 Copy Rules 选项卡。

单击 Create 打开 Create Copy Rule 窗口。在 FromTo 部分中选择 Variable 作为 Type。

From 部分中,展开 VariablesstarOffer,并选择 payload

To 部分中,展开 VariablesoutputVariable,并选择 payload。单击 OK

单击 OK 关闭 Assign 属性对话框。

 

8.

要选择 分支中的 unitedOffer,将另一个 Assign 组件拖至 Drop Activity Here 区域。

双击 Assign_4

 

9.

Assign 属性中,单击 General 选项卡。在 Name 属性中输入 selectUnitedOffer。单击 Copy Rules 选项卡。

单击 Create 打开 Create Copy Rule 窗口。在 FromTo 部分中选择 Variable 作为 Type。

From 部分中,展开 VariablesunitedOffer,并选择 payload

To 部分中,展开 VariablesoutputVariable,并选择 payload。单击 OK

单击 OK 关闭 Assign 属性对话框。

 

10.

确认 ChooseLoanOffer 范围的 switch 活动在 分支中包含了 selectStarLoan 活动,在 分支中包含了 selectUnitedLoan 活动。

选择 File > Save All 保存对该 BPEL 项目所做的更改。

 

返回主题

本节包括下列子主题:

部署 MyLoanProcess BPEL 流程
测试:成功运行 MyLoanProcess 以获取贷款意向

返回主题列表

部署 MyLoanProcess BPEL 流程

要将 MyLoanProcess BPEL 项目部署到 BPEL Process Manager 服务器,执行下列步骤:

1.

在 JDeveloper Applications - Navigator 中,右键单击 MyLoanProcess 项目节点。

将光标放在该图标上可以查看该图像

选择 Deploy > BPEL_conn > Deploy to default domain。当提示您输入口令时,输入默认的域口令 bpel

注意:JDeveloper 会自动编译该 BPEL 流程。在编译过程中,JDeveloper 会以 Java Archive(JAR 文件)的形式创建一个 BPEL 包,该包将被部署到 BPEL Process Manager 服务器中。

 

2.

Messages - Log 窗口的 Messages 页面中,跟踪编译和部署该 BPEL 流程的进度。

将光标放在该图标上可以查看该图像

注意:测试部署的 BPEL 流程之前要确保编译和部署成功。要在 Messages 页面中将消息换行,右键单击 Messages 页面区域的任何位置,然后从上下文菜单中选择 Wrap

 

返回主题

测试:成功运行 MyLoanProcess 以获取贷款意向

要测试 MyLoanProcess BPEL 流程成功获取贷款意向,执行下列步骤:

1.

要查看部署的 BPEL 流程,打开浏览器窗口,输入下列 URL,显示 BPEL Console 页面。还可以通过选择开始 > 程序 > Oracle - OracleBPM > Oracle BPEL Process Manager 10.1.2 > BPEL Console,启动 BPEL Console。

http://localhost:9700/BPELConsole

将光标放在该图标上可以查看该图像

Dashboard 页面的 Deployed BPEL Processes 列下将出现一个 MyLoanProcess 链接

 

2.

Dashboard 页面上,单击 MyLoanProcess 链接。

将光标放在该图标上可以查看该图像

 

3.

BPEL Processes 页面的 Initiate 选项卡上,在 loanApplication 的 HTML 表单域中输入详细信息(如屏幕截图所示)。单击 Post XML Message 启动该 BPEL 流程。

将光标放在该图标上可以查看该图像

 

4.

BPEL Processes 页面更新的 Initiate 选项卡上,单击 Visual Flow 链接。

将光标放在该图标上可以查看该图像

 

5.

Instances 页面的 Flow 选项卡上,向下滚动至该页面的最底端。

注意:starLoanService (onResult) 活动正在等待手动完成。您将在下一个教程中了解如何批准贷款。

 

返回主题

 

要手动批准 StarLoan 意向,执行以下步骤:

1.

要手动批准 StarLoan 意向,打开一个新的浏览器窗口。输入下列 URL 启动 StarLoanUI Web 应用程序。

http://localhost:9700/StarLoanUI

单击 Assign APR Task 链接。

将光标放在该图标上可以查看该图像

 

2.

StarLoanUI Web 界面的 Assign APR Task 页面上,单击 Approve

将光标放在该图标上可以查看该图像

APR 域中的默认值 7.4 大于 UnitedLoan Web 服务意向的 5.7。这种情况下,该 BPEL 流程流选择 UnitedLoan 意向。

 

3.

此时显示 Assign APR Task has been completed 页面。

将光标放在该图标上可以查看该图像

关闭浏览器窗口。

 

4.

在包含 BPEL Console Web 界面的浏览器窗口上,右键单击任意空白区域。从上下文菜单中选择 Refresh,刷新 Instances 页面上的可视化流。

将光标放在该图标上可以查看该图像

 

5.

向下滚动至 Flow 选项卡底部,可以看到 ChooseLoanOffer 范围包含 selectUnitedOffer 分配活动。单击 callbackClient 链接或图标,查看返回给该客户的贷款意向文档。

将光标放在该图标上可以查看该图像

 

6.

Activity Audit Trail 对话框显示了 callbackClientoutputVariable 内容。

将光标放在该图标上可以查看该图像

United Loan 显示在 元素中,其中的 APR 元素值为 5.7

关闭 Activity Audit Trail 窗口。

 

返回主题

 

在本教程中,您了解了如何:

使用 Oracle JDeveloper 10g BPEL Designer 创建一个新的 BPEL 项目

为 BPEL 流程调用的每个 Web 服务添加合作伙伴链接

添加用于在 Web 服务与 BPEL 流程之间进行请求和响应而传递 XML 数据的变量

使用 Oracle JDeveloper 10g BPEL Designer 直观地设计 BPEL 流程
使用 Oracle JDeveloper 10g BPEL Designer 编译和部署 BPEL 流程
在 BPEL Console 中测试 BPEL 流程

返回主题列表

要了解 Oracle BPEL 产品的详细信息,请参阅 OTN 网站上的其他 OBE。

返回主题列表

将鼠标置于该图标上可以隐藏所有的屏幕截图。

 

E-mail this page
打印机视图 打印机视图