webMethods中有趣的嘗試【一】

來源:互聯網
上載者:User

標籤:style   使用   java   sp   代碼   on   c   工作   line   

webMethods的flowService是一種典型的工作流程模式編程,因此有一些使用會和代碼不一樣。出於這樣的原因,本人對flowService的活用做了一些測試。

 一、遞迴

在flowService中調用自身。 

測試結果:可以實現遞迴功能,同編碼一樣。需要指定跳出條件,不然會有死迴圈的編譯錯誤。

 

二、 exit

exit功能有三種用法跳出迴圈(相當於java中的break),跳出flow(相當於exit()),跳到父節點(相當於continue)。

 用好這三種功能可以很好地控製程序的結束方式。

 

三、 try-catch-finally的實現

在工作流程中實現try-catch-finally是一件比較有意思的事情,通過圖形化的步驟可以很清晰地瞭解到try-catch-finally的設計思路和實現原理。

首先要定義一個main,這個main的sequence中exit from屬性設定成為success ,這樣就可以保證這個sequence就算髮生錯誤也可以跑到catch程式裡面去擷取異常,而不是直接報錯,停止運行了。try和catch是main下的子sequence,分別設定exit from屬性為failure和done。failure屬性是正常的sequence中exit from的預設屬性,當這個sequence發生錯誤的時候會自動停止向下運行,直接跳出sequence。而done屬性則是只有當該sequence上面的程式發生異常的時候才會跑進來的,因此正是捕獲異常專用的條件。最後是finally,finally與main同級,在main下面。設定成failure或者success都可以,看情況而定。

這個與java的區別在於,java中會在try或者catch的結束點執行之前先執行一次finally,而webMethods中則是在trycatch結束點之後執行finally。


 

webMethods中有趣的嘗試【一】

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.