集成 WebSphere Business Events 和 WebSphere ILOG JRules 实现对业务事件的分析及规则处理3

在 BOM 语言描述页面,必须选择”All Methods”勾选框。这将确保除了已经选择的元素外,所有

的方法都经过了语言描述,然后我们才能在规则定义中引用这些定义好的语言描述,单击完成所有操作。

图 16. 选择方法包

此时,我们完成了对业务对象模型的构建,展开 bom 文件夹下的 CustomerModel 对象,我们会看到 Customer 对象中的构造函数以及各字段都以通过 Java 代码进行的定义。接下来,我们需要为每一个字段定义 get、set 方法,使得他们能够在 WebSphere Business Events 和 WebSphere ILOG JRules 之间进行数据的交互。双击各个字段,在右侧的编辑器中选择展开”BOM to XOM Mapping”面板中按如下清单为各个字段定义 set、get 方法。

清单 1. Name 属性 get,set 方法定义

<SVP NAME=”Database”>

<VALUE>SAMPLE</VALUE>

</SVP>

NLIGHT>

<SELECTED>false</SELECTED>

– <PG NAME=”MachineCredentials” VERSION=”7.0″>

– <SVP NAME=”DatabaseURL”>

清单 2. Address 属性 get,set 方法定义

return (String)invokeFunction(“getWBEField”, new java.lang.Object[]{“Address”});

invokeFunction(“setWBEField”, new java.lang.Object[]{“Address”, value,”String”});

清单 3. Age 属性 get,set 方法定义

<SVP NAME=”Database”>

<VALUE>SAMPLE</VALUE>

</SVP>

NLIGHT>

<SELECTED>false</SELECTED>

– <PG NAME=”MachineCredentials” VERSION=”7.0″>

– <SVP NAME=”DatabaseURL”>

清单 4. Validate 属性 get,set 方法定义

<SVP NAME=”Database”>

<VALUE>SAMPLE</VALUE>

</SVP>

NLIGHT>

<SELECTED>false</SELECTED>

– <PG NAME=”MachineCredentials” VERSION=”7.0″>

– <SVP NAME=”DatabaseURL”>

通过上述操作,我们已经完成了对业务对象中各个字段的函数定义,接下来,我们需要定义一个 WBE 集成规则集变量,以实现对业务对象的初始化操作,这样 WebSphere Business Events 可以利用初始化完毕的业务对象实例进行数据的交互。如图 16,打开集成规则集变量编辑器,按图所示给规则集变量定义对象名称、类型、名称以及初始值。

图 17. WBE 集成规则集变量

现在我们开始具体业务规则的编写,根据实验场景描述,我们需要对客户的年龄进行判断以确定是否进行相应授权。右键单击”rules”文件夹,选择新建”Business Rule”,在弹出页面中定义规则名为”VerifyCustomer”,其它选项保留默认值,点击完成。

图 18. 新建业务规则

双击 ,打开规则编辑器,展开”Code”面板,在面板中输入以下清单中内容。该业务规则表示如果该客户年龄小于 18 岁,那么将不对该客户授权,设定返回结果 validate 为”Not Qualified”,如果客户年龄大于 18 岁,那么设定返回结果 validate 为”Qualified”。WebSphere ILOG JRule 会将这个返回值传递给 WebSphere Business Events。

清单 5. 规则定义描述

if the age of Customer is less than 18

then set the validate of Customer to “Not qualified!”;

else

set the validate of Customer to “Qualified”;

接下来我们需要将该业务规则加入到 WBE Integration RuleFlow 中,双击 ,单击业务规则”VerifyCustomer”然后将其拖拽至规则流编辑器中,此时规则流编辑器如下图所示,绿色端点表示规则流起点,蓝色实心端点表示规则流完成点,我们需要将 VerifyCustomer 加入到两个端点之间。

图 19. 规则流编辑器初始状态

单击编辑器左侧工具栏的 ,然后依次单击规则流起点,VerifCustomer 节点,规则流完成点,并且删除原起点与完成点之间的连线,最后完成的规则流如下图所示:

图 20. 规则流编辑器完成状态

以下文章点击率最高

Loading…

     

如果这文章对你有帮助,请扫左上角微信支付-支付宝,给于打赏,以助博客运营

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注