溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Activiti的基本事件是什么

發(fā)布時(shí)間:2021-10-21 10:27:08 來源:億速云 閱讀:113 作者:柒染 欄目:大數(shù)據(jù)

Activiti的基本事件是什么,相信很多沒有經(jīng)驗(yàn)的人對(duì)此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個(gè)問題。

本文activti的基本事件和上一篇介紹Activiti學(xué)習(xí)(五)——基礎(chǔ)構(gòu)件相輔相成?;A(chǔ)構(gòu)件時(shí)activiti畫流程圖時(shí)的基本構(gòu)件,而基本事件則存在于不同的構(gòu)建中,發(fā)揮著作用。

個(gè)人理解雖然我所提到的基本事件和基本構(gòu)件名字聽起來相似,但還是有著本質(zhì)區(qū)別:基本事件更加偏向于功能方面,因而基本事件被包含在各種基本構(gòu)件當(dāng)中;而基本構(gòu)件更多的描述的是畫圖中的某一個(gè)元素在流程圖中的位置信息。

基本事件主要分為:拋出事件和捕獲事件。

1.定時(shí)器事件

 定時(shí)事件定義有三種:timeDate(指定一個(gè)觸發(fā)的特定時(shí)間)、timeDuration(制定在多久時(shí)間后被觸發(fā))、timeCycle(指定隔多久觸發(fā)一次),其中timeCycle可以使用 cron表達(dá)式。

<timerEventDefinition id="startevent1_ED_1">
    <timeDuration><![CDATA[PT5S]]></timeDuration>
</timerEventDefinition>

timeEventDefinition可以被包含在開始事件、中間捕獲事件或者邊界事件中。

2.錯(cuò)誤事件

錯(cuò)誤事件可以被包含在開始事件、邊界事件或者結(jié)束事件中。

錯(cuò)誤事件主要處理運(yùn)行各種拋出的錯(cuò)誤,使用時(shí)需要先聲明error元素,再將error元素通過綁定id的方式綁定到errorEventDefination上,程序可以拋出BPMNerror,并通過 設(shè)置拋出的錯(cuò)誤代碼來匹配錯(cuò)誤errorCode來匹配xml中的error元素,從而觸發(fā)錯(cuò)誤事件。errorcode不設(shè)置的話,所有錯(cuò)誤都能捕獲。

<error id=”myError” errorCode=”123”></error> 
<process id=”testProcess” name=”testProcess” >
   <endEvent id=”myErrorEndEvent”>
       <errorEventDefinition errorRef=”myError”/> 
   </endEvent> 
</process>

3.信號(hào)事件

可以使用在邊界事件、中間捕獲時(shí)間、中間拋出事件中。

編寫的形式和錯(cuò)誤事件類似。但需要注意的時(shí)信號(hào)事件必須定義name屬性。

<signal id=”signalA” name=”signalA” ></signal>
<process id=”testProcess” name=” testProcess” >
    <signalEventDefinition signalRef=”signalA”></signalEventDefinition> 
</process>

4.消息事件

可以使用在開始事件和中間捕獲事件中。

編寫的形式依然和錯(cuò)誤事件信號(hào)時(shí)間類似。

信號(hào)事件和消息時(shí)間都是發(fā)送一個(gè)信息來提示完成節(jié)點(diǎn),區(qū)別是,信號(hào)事件類似于廣播,所有人都都可以接受這個(gè)信號(hào),但是消息時(shí)間類似于私信,只有指定單個(gè)節(jié)點(diǎn)可以接受信息。

<message id=”myMsg” name=”myMsg”></message> 
<process id=”medProcess” name=”medProcess”>
   <messageEventDefinitin messageRef=”myMsg”></messageEventDefinition> 
</process>

5.取消事件

取消事件定義可以用在事務(wù)子流程模型中,取消事件可以使用在邊界事件和結(jié)束事件中。

<cancelEventDefinition></cancelEventDefinition>

取消邊界事件時(shí)catching事件,它會(huì)等待被觸發(fā);取消結(jié)束事件時(shí)throwing事件。

6.補(bǔ)償事件

補(bǔ)償機(jī)制主要用于對(duì)于已經(jīng)成功完成的事件做回退處理。補(bǔ)償定義可以嵌套在開始事件、中間catching事件、中間throwing事件和結(jié)束事件。//todo

7.其他事件

bpmn2.0規(guī)范中除了上述的常用事件還定義一些其他的事件:條件事件定義、升級(jí)事件定義、連接事件定義和終止事件定義。

看完上述內(nèi)容,你們掌握Activiti的基本事件是什么的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI