集成 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…

     

如果這文章對你有幫助,請掃左上角微信支付-支付寶,給於打賞,以助博客運營