BPEL example - Basic Assign

這個範例主要展示基礎的Assign用法,其中使用到XPath來取值。目前WS-BPEL 2.0版本只支援XPath 1.0,但ODE允許使用XPath 2.0,相關說明請參考這裡。此範例不會展示設計BPEL的基礎細節,相關詳情請參考這一篇

案例情節:
BPEL裡面會呼叫一個查詢銷售訂單的網路服務,預設是查詢全部的銷售訂單,利用Assign將某一張銷售訂單的SITEID和SITENAME給BPEL的最終回應訊息。

  1. 建立可觸發BPEL的WSDL文件,並設定好需要使用到的partnerLinkType。
  2. 建立新的BPEL文件,並設定好partnerLink和Variable,設定好後就可開始組裝流程,其最終的流程如下圖:

  3. 其中Assign的部份,在使用Assign的時候,必須將被指派value的variable初始化,這方面跟大多數的程式語言一樣。初始化可在assign中進行,通常BPEL會跳出一個提示視窗。

    此時可選擇"Yes",BPEL Designer會自動產生初始化的描述,但只限於該element是"Required"。

  4. 由於網路服務傳回的是多筆資料,可用XPath的陣列表示法來取得XML中重複出現element中所需的那一筆資料。如下圖,可以直接在Variable的選擇模式中,修改Query欄位以符合XPath的語法。

  5. 當BPEL製作完成後,可利用ODE所提供的bpelc.bat(windows)或bpelc(Linux)來compile看看是否有錯。佈署上ODE即可測試看看是否正確。

    留言

    熱門文章