




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
一JPDL流程定義process-definition(流程定義)流程定義的根節(jié)點(diǎn),是所有節(jié)點(diǎn)的父節(jié)點(diǎn)最名稱油類(lèi)型愉數(shù)量架描述萬(wàn)name蛋屬性塞可選的們流程的名稱堡。次swiml貝ane起元素甘[0..*太]扭流程中使用俱的泳道。泳饑道表示流程饑角色,它們謝被用于任務(wù)塔分配。緊start用-stat勤e受元素慶[0..1欣]汁流程起始狀潮態(tài)。注意,敞沒(méi)有起始狀洋態(tài)的流程是洋合法的,但可是不能被執(zhí)踏行。誘end-s鄙tate|習(xí)state費(fèi)|node尺|task盼-node啊|proc貨ess-s瘋tate|首super抗-stat賞e|for屯k|御join|繞decis港ion聯(lián)元素繪[0..*鄉(xiāng)]慶流程定義的標(biāo)節(jié)點(diǎn)。注意智,沒(méi)有節(jié)點(diǎn)襲的流程是合山法的,但是陶不能被執(zhí)行坡。就event喂元素序[0..*湖]輕作為一個(gè)容壇器服務(wù)于動(dòng)時(shí)作的流程事姨件。睜actio白n|scr罪ipt|c忍reate筐-time趣r|can胖cel-t迅imer咱元素場(chǎng)[0..*怎]站全局定義的材的動(dòng)作,可獎(jiǎng)以在事件和頸轉(zhuǎn)換中引用差。注意,為史了被引用,優(yōu)這些動(dòng)作必就須指定名稱攔。艱task猾元素及[0..*蓬]領(lǐng)全局定義的飽任務(wù),可以笑在動(dòng)作中使撿用。勞excep欠tion-甩handl接er疏元素脾[0..*只]潮一個(gè)異常處束理器列表,描用于這個(gè)流鏟程定義中的躺委托類(lèi)所拋暈出的所有異嶺常。node(自動(dòng)節(jié)點(diǎn))這種節(jié)點(diǎn)和State相反,也稱自動(dòng)節(jié)點(diǎn)。當(dāng)業(yè)務(wù)程序?qū)嵗龍?zhí)行到這個(gè)節(jié)點(diǎn),不會(huì)停止執(zhí)行。而是會(huì)繼續(xù)往下執(zhí)行。如果該節(jié)點(diǎn)存在多個(gè)離開(kāi)轉(zhuǎn)向。那么,就會(huì)執(zhí)行其中的第一個(gè)離開(kāi)轉(zhuǎn)向,在Node狀態(tài)中,不需要外部參與者的參與,業(yè)務(wù)流程的這個(gè)部分是自動(dòng)的、即時(shí)完成的。叛名稱戒類(lèi)型堆數(shù)量臣描述振actio勺n|scr手ipt|c親reate純-time做r|can調(diào)cel-t叔imer見(jiàn)事件和1菌用于表示這醫(yī)個(gè)節(jié)點(diǎn)行為竭的定制動(dòng)作煩。購(gòu)普通節(jié)點(diǎn)元骨素女
脹
數(shù)請(qǐng)參考普通政節(jié)點(diǎn)元素。start-state(開(kāi)始狀態(tài))start-state是我們整個(gè)流程的開(kāi)始節(jié)點(diǎn),所有的流程實(shí)例從這里開(kāi)始。思名稱淋類(lèi)型杯數(shù)量偷描述嗽Name晶屬性賭可選的泄節(jié)點(diǎn)的名稱陡。威Task層元素披[0..1澇]質(zhì)起始一個(gè)流乞程實(shí)例的任鴿務(wù),或者用近來(lái)捕獲流程指發(fā)起者損Event夕元素凍[0..*拋]腳支持的事件袍類(lèi)型:{移node-故leave分}。那trans井ition輸元素夾[0..*櫻]直離開(kāi)轉(zhuǎn)換,錢(qián)每個(gè)離開(kāi)節(jié)濤點(diǎn)的轉(zhuǎn)換必廚須有一個(gè)不趁同的名稱。求excep鴿tion-肢handl嚷er柳元素?fù)靃0..*伙]暢一個(gè)異常處繩理器列表,陜用于這個(gè)流悲程節(jié)點(diǎn)中的鉗委托類(lèi)所拋嚼出的所有異節(jié)常。end-state(結(jié)束節(jié)點(diǎn))對(duì)于每一個(gè)流程定義都會(huì)有一個(gè)結(jié)束節(jié)點(diǎn),與開(kāi)始節(jié)點(diǎn)對(duì)應(yīng)效名稱等類(lèi)型參數(shù)量難描述羽Name梳屬性錫必需的利結(jié)束狀態(tài)的丈名稱。古event棋元素濟(jì)[0..*暢]晴支持的事件舉類(lèi)型:{辭node-傷enter勉}。鞭excep久tion-忽handl悄er緩元素續(xù)[0..*惹]頓一個(gè)異常處端理器列表,孔用于這個(gè)流做程節(jié)點(diǎn)中的乳委托類(lèi)所拋嘗出的所有異召常。state(狀態(tài))State節(jié)點(diǎn)也叫手工節(jié)點(diǎn),進(jìn)入到這種節(jié)點(diǎn),整個(gè)流程的執(zhí)行就會(huì)中斷。直到系統(tǒng)外參與者發(fā)起繼續(xù)執(zhí)行的命令,即調(diào)用signal或end方法,業(yè)務(wù)程序?qū)嵗膱?zhí)行才能夠繼續(xù)下去。織名稱急類(lèi)型紙數(shù)量攔描述槍name民屬性某必需的茶節(jié)點(diǎn)的名稱墻。翻async再屬性打{true愛(ài)|fals市e}茫,默認(rèn)是流false僵如果設(shè)置為烘true壟,這個(gè)節(jié)點(diǎn)季將會(huì)異步執(zhí)趨行。請(qǐng)參考嚼”扒異步執(zhí)行加”靜章節(jié)。暮trans消ition禾元素順[0..*把]那離開(kāi)轉(zhuǎn)換。蒙每個(gè)離開(kāi)節(jié)也點(diǎn)的轉(zhuǎn)換必漏須有一個(gè)不梁同的名稱,態(tài)最多只允許駕所有離開(kāi)轉(zhuǎn)神換中的一個(gè)渡沒(méi)有名稱。陰第一個(gè)轉(zhuǎn)換夫被指定為默鍬認(rèn)轉(zhuǎn)換,當(dāng)江離開(kāi)節(jié)點(diǎn)而頁(yè)沒(méi)有指定轉(zhuǎn)孫換時(shí),默認(rèn)沃轉(zhuǎn)換發(fā)生。勢(shì)event害元素法[0..*貼]宰支持的事件全類(lèi)型:{雙node-就enter漆|node覆-leav唉e映}。呼excep異tion-教handl巖er掠元素野[0..*瞞]石一個(gè)異常處碰理器列表,峰用于這個(gè)流冰程節(jié)點(diǎn)中的返委托類(lèi)所拋?zhàn)顺龅乃挟愂莩?。蠶timer病元素鄉(xiāng)[0..*酒]亂指定一個(gè)定擇時(shí)器,用來(lái)堤監(jiān)視節(jié)點(diǎn)中廈的一個(gè)執(zhí)行抬所持續(xù)的時(shí)練間。task-node(任務(wù)節(jié)點(diǎn))其性質(zhì)和node節(jié)點(diǎn)一樣,在沒(méi)有task的時(shí)候,也都是自動(dòng)執(zhí)行,不等待。task-node被歸類(lèi)為一個(gè)等待節(jié)點(diǎn),是指在task-node中的task列表中的task沒(méi)有全部執(zhí)行完之前,它會(huì)一直等待。Task可以在task-node節(jié)點(diǎn)下定義,也可以掛在process-definition節(jié)點(diǎn)下。最普遍的方式是在task-node節(jié)點(diǎn)下定義一個(gè)或多個(gè)任務(wù)。默認(rèn)情況下,流程在task-node節(jié)點(diǎn)會(huì)處于等待狀態(tài),直到所有的任務(wù)被執(zhí)行完畢。Task的執(zhí)行是按順序執(zhí)行的,任務(wù)都完成后,token仍然不會(huì)指向后面的節(jié)點(diǎn);需要自己手動(dòng)調(diào)用processInstance.signal()才會(huì)驅(qū)動(dòng)流程到下面的節(jié)點(diǎn)。哨名稱儲(chǔ)類(lèi)型天數(shù)量排描述陣signa級(jí)l固屬性想可選的銹{unsy汪nchro旺nized手|neve鄭r|fir恢st|fi錯(cuò)rst-w哈ait|l引ast|l陷ast-w籮ait}紛,默認(rèn)是鞠last雙。鞠signa杏l獻(xiàn)指定了任務(wù)哄的完成對(duì)流染程執(zhí)行繼續(xù)攜的影響。照creat惰e-tas腦ks逐屬性國(guó)可選的嘉{yes|騙no|tr畜ue|fa倦lse}冷,默認(rèn)是偏true裁。當(dāng)需要在腸運(yùn)行時(shí)通過(guò)甩計(jì)算來(lái)決定蒙哪個(gè)任務(wù)將女被創(chuàng)建時(shí),墊可以設(shè)置為蝶false袍,如果這樣沫的話,在眼node-鴨enter苗事件上加一悼個(gè)動(dòng)作,在玩動(dòng)作中創(chuàng)建嫌任務(wù),并且拘把豬creat專(zhuān)e-tas裹ks碎設(shè)置為蛋false寨。杜end-t眉asks也屬性害可選的直{yes|蜓no|t壽rue|f再alse}兆,默認(rèn)是回false非。如果設(shè)置陣end-t泛asks火為盡true芹,在離開(kāi)節(jié)窮點(diǎn)時(shí),所有須打開(kāi)的任務(wù)罪將被結(jié)束。鞋task倘元素汗[0..*編]叫當(dāng)執(zhí)行到達(dá)修本節(jié)點(diǎn)時(shí)所尸應(yīng)被創(chuàng)建的懲任務(wù)。水普通節(jié)點(diǎn)元?dú)⑺刂?/p>
治
遼請(qǐng)參考毫普通節(jié)點(diǎn)元號(hào)素昆。載為了幫助讀行者理解擇task-送node慮節(jié)點(diǎn)的肢signa芝l慣屬性,這里描舉例如下:潤(rùn)對(duì)于這樣的衫流程定義:守<tas填k-nod忠ena聞me='a告'>蠶岔<tas鮮knam單e='la斜undry煌'/>由龜<tas勉knam光e='di配shes'顫/>暖腳<tas育knam傷e='ch鑼ange逮nappy澡'/>蠟丘<tra獨(dú)nsiti信onto雁='b'軋/>走</ta那sk-no枕de>飼這里沒(méi)有定穗義找signa檔l姿屬性的值,溉這就表明當(dāng)鏟節(jié)點(diǎn)中的三售個(gè)任務(wù)都完號(hào)成后,流程側(cè)才進(jìn)入后面脅的節(jié)點(diǎn)育當(dāng)葛<task賤-node噴name鼓='a'科signa渾l='un策synch米roniz圍ed'>告表明失token時(shí)不會(huì)在本節(jié)恢點(diǎn)停留,而彈是直接到后邊面的節(jié)點(diǎn)渴當(dāng)屆<task估-node吹name拔='a'婚signa直l='ne潑ver'>撤表明三個(gè)任譯務(wù)都完成后束,吐token和仍然不會(huì)指費(fèi)向后面的節(jié)姑點(diǎn);需要自博己手動(dòng)調(diào)用好proce朝ssIns供tance鮮.sign巾al()奉才會(huì)驅(qū)動(dòng)流拒程到下面的郊節(jié)點(diǎn)糖當(dāng)源<task委-node執(zhí)name玻='a'竭signa求l='fi沙rst'>疫表明只要有新一個(gè)任務(wù)完絹成后,所token舌就指向后面絹的節(jié)點(diǎn)妖當(dāng)蘭<task翼-node欺name取='a'思signa殖l='fi邪rst-w嶼ait'>欄表明當(dāng)?shù)谝活I(lǐng)個(gè)任務(wù)實(shí)例磚完成時(shí)繼續(xù)擋執(zhí)行;當(dāng)在祖a殲節(jié)點(diǎn)入口處恥沒(méi)有任務(wù)創(chuàng)長(zhǎng)建時(shí),照tok匙en寬在哄a構(gòu)任務(wù)節(jié)點(diǎn)處籃等待,直到獸任務(wù)被創(chuàng)建厘或完成。綿當(dāng)棚<task誓-node事name也='a'輸signa組l='la月st'>管時(shí),這是默奶認(rèn)值,和不躍設(shè)置貫signa現(xiàn)l此屬性的情況員相同。苗當(dāng)挎<task股-node瘡name塊='a'互signa歇l='la惕st-wa探it'>浙時(shí),當(dāng)最后該一個(gè)任務(wù)實(shí)惡例完成時(shí)候繳繼續(xù)執(zhí)行下泛去。映勝當(dāng)臘a業(yè)這個(gè)任務(wù)節(jié)斬點(diǎn)沒(méi)有任務(wù)封被建立時(shí)喉,孕任務(wù)節(jié)點(diǎn)等喘待直到任務(wù)再被建立。紋fork(牽分支)該一個(gè)靠fork銹把一個(gè)執(zhí)行攏路線分割成朵多個(gè)執(zhí)行路蹤線請(qǐng).守默認(rèn)分支的宵行為是為每首個(gè)離開(kāi)分支斬轉(zhuǎn)換建立一支個(gè)子令牌旺,醫(yī)在令牌要到式達(dá)的分支之累間建立一個(gè)套父母夕-順子女關(guān)系項(xiàng)名稱維類(lèi)型狗數(shù)量貓描述請(qǐng)name混屬性扛必需的唇節(jié)點(diǎn)的名稱喚。布async御屬性從{true輛|fals牢e}溪,默認(rèn)是紙false疊如果設(shè)置為淋true鉛,這個(gè)節(jié)點(diǎn)講將會(huì)異步執(zhí)地行。請(qǐng)參考誕”斧異步執(zhí)行羞”陣章節(jié)。漆t(yī)rans攏ition暑元素廢[0..*叨]扔離開(kāi)轉(zhuǎn)換。缸每個(gè)離開(kāi)節(jié)怨點(diǎn)的轉(zhuǎn)換必掙須有一個(gè)不耗同的名稱,膛最多只允許寄所有離開(kāi)轉(zhuǎn)肯換中的一個(gè)代沒(méi)有名稱。掌第一個(gè)轉(zhuǎn)換四被指定為默次認(rèn)轉(zhuǎn)換,當(dāng)憤離開(kāi)節(jié)點(diǎn)而有沒(méi)有指定轉(zhuǎn)甲換時(shí),默認(rèn)派轉(zhuǎn)換發(fā)生。雕event寺元素水[0..*涂]烘支持的事件先類(lèi)型:{串node-蹈enter落|node杰-leav不e濟(jì)}。拉excep銹tion-壟handl釋er亮元素恰[0..*農(nóng)]讓一個(gè)異常處吼理器列表,秘用于這個(gè)流奶程節(jié)點(diǎn)中的刊委托類(lèi)所拋亦出的所有異粘常。證timer脂元素繪[0..*榮]牌指定一個(gè)定述時(shí)器,用來(lái)寒監(jiān)視節(jié)點(diǎn)中針的一個(gè)執(zhí)行樂(lè)所持續(xù)的時(shí)漸間。態(tài)join(樸聯(lián)合)攝默認(rèn)聯(lián)合跟(join后)圓假設(shè)所有來(lái)植自同一個(gè)父輝母的子令牌昌聯(lián)合,當(dāng)在涉上使用擋fork(瀉分支杠)零這個(gè)情形就摩出現(xiàn)了并且松所有令牌分嘉支建立,并雖且到達(dá)同一莫個(gè)聯(lián)合戲(join勾)平。當(dāng)全部令撫牌都進(jìn)入聯(lián)絡(luò)合的時(shí)候聯(lián)支合就結(jié)束了鞏,丙嬌然后聯(lián)合將胳檢查父母丹-國(guó)子女,跑桿當(dāng)所有兄弟巧令牌到達(dá)聯(lián)瑞合共(join板)椅,父母令牌岸將傳播添(里唯一的給)罩離開(kāi)轉(zhuǎn)換,殃當(dāng)還有兄弟余令牌活動(dòng)時(shí)闖,聯(lián)合的行落為將作為等翁待狀態(tài)。至名稱欠類(lèi)型楚數(shù)量盆描述獸name腎屬性編必需的遮節(jié)點(diǎn)的名稱饅。蟲(chóng)async坐屬性財(cái){true兇|fals唐e}撕,默認(rèn)是丈false乞如果設(shè)置為暮true愈,這個(gè)節(jié)點(diǎn)慚將會(huì)異步執(zhí)餐行。棍trans升ition始元素累[0..*麻]充離開(kāi)轉(zhuǎn)換。批每個(gè)離開(kāi)節(jié)猾點(diǎn)的轉(zhuǎn)換必籍須有一個(gè)不屯同的名稱,苦最多只允許鴉所有離開(kāi)轉(zhuǎn)米換中的一個(gè)燥沒(méi)有名稱。山第一個(gè)轉(zhuǎn)換懶被指定為默京認(rèn)轉(zhuǎn)換,當(dāng)引離開(kāi)節(jié)點(diǎn)而待沒(méi)有指定轉(zhuǎn)降換時(shí),默認(rèn)幸轉(zhuǎn)換發(fā)生。掩event討元素懷[0..*割]刷支持的事件蔬類(lèi)型:{律node-托ent牲er|no蝕de-le筑ave掀}。駐excep近tion-市handl短er握元素廳[0..*切]題一個(gè)異常處躁理器列表,燦用于這個(gè)流驚程節(jié)點(diǎn)中的照委托類(lèi)所拋限出的所有異刷常??輙imer恭元素嫩[0..*蠟]驗(yàn)指定一個(gè)定易時(shí)器,用來(lái)蠻監(jiān)視節(jié)點(diǎn)中輛的一個(gè)執(zhí)行未所持續(xù)的時(shí)慘間。匙對(duì)于昌Join艇節(jié)點(diǎn),我們滑知道默認(rèn)是激要等到所有件分支都到了霸流程才能往睡下繼續(xù)走,鑼要改變這一仿情況,我們幣可以通過(guò)給胖該節(jié)點(diǎn)加鏈Actio利n瞇的方法改變傳該漲Join賀節(jié)點(diǎn)的暫Discr促imina和tor啊,就可以使川只要有一個(gè)嘆分支到達(dá)流它程就可以繼討續(xù)執(zhí)行的效濃果了擱decis憤ion(決營(yíng)策)摸一個(gè)與de判cisio趙n粘用以決定在悶多個(gè)執(zhí)行路陡徑中哪個(gè)才府可以被執(zhí)行族。如果你是帳一個(gè)程序員哲,把它可以紡理解成壯switc愧hcas宣e跨結(jié)構(gòu)即可,鹽一個(gè)孕decis趟ion潛能夠具有許陵多離開(kāi)的累trans嗎ition蹤。殘絕Handl憤er框所指定的爆Decis千ionHa爽ndler仙的實(shí)現(xiàn)類(lèi)里也的宴decid難e滔方法返回一涉?zhèn)€字符串,徹表示要執(zhí)行腸哪個(gè)擴(kuò)trans的ition上trans破ition僚(轉(zhuǎn)換)塘轉(zhuǎn)換用來(lái)指光定節(jié)點(diǎn)之間陶的連接。專(zhuān)trans切ition娃元素放在尖node忍里面,那么倒這個(gè)撈trans作ition談就會(huì)從這個(gè)戴節(jié)點(diǎn)出離開(kāi)傷。蘋(píng)好名稱或類(lèi)型透數(shù)量勾描述籮name蝶屬性灶可選的置轉(zhuǎn)換的名稱忌。注意,每科個(gè)節(jié)點(diǎn)的離礙開(kāi)轉(zhuǎn)換必須畫(huà)有一個(gè)不同庫(kù)的名稱。踏to戴屬性怠必需的纏目標(biāo)節(jié)點(diǎn)的剩分級(jí)名稱,倘表示將要達(dá)顏到的那個(gè)節(jié)重點(diǎn)名稱憲.鵝actio身n|scr許ipt昂|crea崇te-ti交mer關(guān)|canc慰el-ti洗mer船元素費(fèi)[0..*穴]留發(fā)生轉(zhuǎn)換時(shí)澡將要執(zhí)行的童動(dòng)作。注意隆,轉(zhuǎn)換的動(dòng)餐作無(wú)需放入騎事件(因?yàn)橥咧挥幸粋€(gè)事埋件)。湊excep闊tion-掠handl減er免元素肌[0..*枕]宏一個(gè)異常處鳳理器列表,總用于這個(gè)流傘程節(jié)點(diǎn)中的伶委托類(lèi)所拋滾出的所有異誕常。謠event識(shí)(事件)擁JBPM念定義了一系揮列與工作流然節(jié)點(diǎn)元素相繳關(guān)聯(lián)的事件殃,例如,流車(chē)程實(shí)例運(yùn)行弱過(guò)程中,可舊以觸發(fā)節(jié)點(diǎn)鼠進(jìn)入(鐮no沙de-en軌ter)樓、節(jié)點(diǎn)離開(kāi)五正(戴node-訓(xùn)leave測(cè))、流程啟殊動(dòng)(止proce桶ss-st凡art故)、流程結(jié)飾束(菜proce陷ss-en況d緣)、任務(wù)創(chuàng)等建(停task-梨creat策e獸)、曠照任務(wù)分派(抖task-伏assig莊n賴)、任務(wù)啟贈(zèng)動(dòng)(釀task-緩start通)等事件。諸在流程定義魚(yú)時(shí),譽(yù)JBPM血的事件均與覽actio店n旨綁定。事件投的觸發(fā)將導(dǎo)港致相應(yīng)始actio香ns跪的執(zhí)行。因名稱齒類(lèi)型呈數(shù)量婆描述呀type算屬性混必需的陽(yáng)表示相對(duì)于揪事件要放置捷的元素事件季類(lèi)型。盜actio栽n|scr噴ipt|c櫻reate貪-time擇r|莊cance座l-tim夾er壯元素貫[0..*劍]江在這個(gè)事件使上將要執(zhí)行嫁的動(dòng)作列表帥。簽actio肉n(動(dòng)作)男一個(gè)慶actio康n溫是一段停java首代碼。在流恩程執(zhí)行期間金在一些事件編之上定義,遷這樣會(huì)在相各關(guān)事件觸發(fā)古時(shí)自動(dòng)在工蘋(píng)作流引擎上命執(zhí)行。躍scrip麥t(腳本)飯Scrip漢t饑?yán)锸莿?dòng)作執(zhí)乒行的側(cè)beans途hell小腳本蠶.事名稱號(hào)類(lèi)型還數(shù)量畏描述戴name抹屬性治可選的蘿腳本動(dòng)作的邪名稱。當(dāng)動(dòng)極作被指定名霜稱后,它們凱可以在流程避定義中被查保出,這對(duì)于隱運(yùn)行時(shí)動(dòng)作通以及僅一次芬聲明動(dòng)作是勵(lì)有用的。私Accep樂(lè)t陣-prop芳agate群d盟-even等ts秋屬性金可選的羅[0..*寧]世{yes|諷no|tr吧ue|fa野l(fā)se}隙,默認(rèn)是呈yes|t訓(xùn)rue執(zhí)。如果設(shè)置宅為笑false奮,則動(dòng)作僅符在本動(dòng)作元區(qū)素的觸發(fā)事塌件上被執(zhí)行個(gè).姑exp民ressi甲o(hù)n宮元素蛛[0..1工]舒beans搶hell塘腳本。如果欠你沒(méi)有指定壞varia矩ble暈元素,可以孤寫(xiě)表達(dá)式作簽為腳本元素奴的內(nèi)容(忽雀略吵expre許ssion凳元素標(biāo)簽)問(wèn)。棒varia貓ble病元素喇[0..*情]獲腳本所需變鳴量。如果沒(méi)統(tǒng)有指定變量巧,則當(dāng)前令綿牌的所有變減量將被裝載亞到腳本,當(dāng)內(nèi)你想要限制浴裝載到腳本費(fèi)中的變量數(shù)吵量時(shí)使用某varia屯ble尼。臟expre醬ssion斑(表達(dá)式)舞Expre殼ssion哭里可書(shū)寫(xiě)爸Beans餐hell變腳本裝名稱璃類(lèi)型滋數(shù)量背描述部
救{陳內(nèi)容俊}劍
京一個(gè)浸beans衰hell驚腳本。匠varia煩ble(變廚量)牧一個(gè)是變量巴是一種吊key-v米alue孝對(duì)。它與過(guò)從程實(shí)例(一哀次過(guò)程執(zhí)行協(xié))相關(guān)聯(lián)。咬Key煤是療java.言lang.劑strin匠g辭,終value儀是任何甜java慕類(lèi)型的任何賞pojo左。所以任何曬是兔java毯類(lèi)型,即使乘不給絲jbpm吐知道也能被胸應(yīng)用到變量蹈中。均JBPM你的流程變量瀉在盡量模仿晴java.芽util.序map象的語(yǔ)義。這葛一點(diǎn)可以通毛過(guò)乳JBPM松的棟API住來(lái)了解。也吊就是說(shuō)一個(gè)瓣變量只能當(dāng)罰它被插入時(shí)魔被賦值,任距何膛java刪類(lèi)型都可以蜜作為變量中洽的究value酒。蔽嘴名稱男類(lèi)型非數(shù)量取描述殖name賞屬性馳必需的剛流程變量的勒名稱。翠acces重s救屬性公可選的怖默認(rèn)是秒read,曠write顫,用逗號(hào)分奉割的一個(gè)訪痰問(wèn)列表。迄摧今為止,使狗用的訪問(wèn)僅飲為基read煩,弦write愉和萍requi隆red北。秧mappe救d-nam姜e新屬性伸可選的銀默認(rèn)是變量說(shuō)的名稱。用暑來(lái)指定變量子名稱被映射枯的名稱,柜mappe框d-nam式e毅的含義依賴霞于這個(gè)元素幸所被使用的祥上下文。對(duì)大于一個(gè)腳本襖,將是一個(gè)降腳本變量名較稱;對(duì)于一插個(gè)任務(wù)控制痰器,將是任學(xué)務(wù)表單參數(shù)通的標(biāo)簽;對(duì)腹于一個(gè)舌proce喜ss-st言ate駐,將是在子爸流程中使用罪的變量名稱勸。時(shí)handl扛er(句柄纏)案Handl講er誦是在定義一罷個(gè)通decis朋ion栗時(shí)需要為其御定義一個(gè)旅Decis瞞ionHa現(xiàn)ndler車(chē)時(shí)采用。誼timer錄(定時(shí)器)辰定時(shí)器誦timer徒可以被用于填decis寨ionf端orkj災(zāi)oinn喚odep微roc鋒ess-s環(huán)tate步state蟻supe期r-sta堆teta弱sk-no陶de仿,可以設(shè)置桿開(kāi)始時(shí)間苗dueda窄te限和頻率濾repea冬t奴,定時(shí)器動(dòng)搞作可以是所鹿支持的任何凱動(dòng)作元素,再如亮actio羨n曲或謙scrip奮t撐。歉timer正給還有一個(gè)很歇重要的屬性槐cance境l-eve倚nt豐,這個(gè)是辱timer貌和式task套結(jié)合時(shí)使用蛇的,任務(wù)定舍時(shí)器的導(dǎo)cance也l-eve繪nt術(shù)可以被定制央。默認(rèn)情況億幼下,當(dāng)任務(wù)幕被結(jié)束時(shí)(守=齒完成)任務(wù)星上的定時(shí)器但將被取消,蔑這是通過(guò)在蜓定時(shí)器上使可用迷cance翁l-eve井nt曾屬性,流程唉開(kāi)發(fā)者可以礙定制諸如肌task-瞧assi惜gn糠或太task抹-star角t門(mén)。黎cance著l-eve偏nt洪支持多個(gè)事外件,通過(guò)在莫屬性中指定襪一個(gè)用逗號(hào)遼分割的列表哨,可以組合且cance坊l-eve扯nt喉的類(lèi)型。防名稱稻類(lèi)型豐數(shù)量滿描述喘name拍屬性鈔可選的從定時(shí)器的名聚稱。如果沒(méi)胸有指定名稱蠅,則采用外堅(jiān)部的節(jié)點(diǎn)名舍稱。注意,羊每個(gè)定時(shí)器楊應(yīng)該有一個(gè)朵唯一的名稱網(wǎng)。仿dueda恥te衫屬性元必需的撐所指定的定濁時(shí)器創(chuàng)建到駐定時(shí)器執(zhí)行哈之間的期限損(可以用業(yè)探務(wù)時(shí)間來(lái)表膚示)。抵repea法t球?qū)傩怨蛇x的策{dura賽tion|裳yes|t沒(méi)rue}辣當(dāng)一個(gè)定時(shí)芹器在預(yù)期時(shí)店間執(zhí)行后,?!皉epe橡at”酷可選項(xiàng)指定嶄了在離開(kāi)節(jié)驗(yàn)點(diǎn)之前重復(fù)蹤的執(zhí)行定時(shí)永器之間的期殊限。如果指忙定為朵true弟或反false革,則與漸dueda怕te趙相同的期限竹被使用。擠trans刪ition宗屬性乖可選的卻當(dāng)定時(shí)器執(zhí)對(duì)行、定時(shí)器姻事件觸發(fā)后嫂以及執(zhí)行動(dòng)深作時(shí)時(shí)所使恨用的轉(zhuǎn)換名確稱。愁cance脈l-eve跌nt面屬性虧可選的單這個(gè)屬性只低用在任務(wù)的隔定時(shí)器中,烘它指定了定采時(shí)器將被取榜消的事件。翁默認(rèn)是寸task-嘗end鴨事件,但是皇也可以被設(shè)李置為如蔥task-混assig樂(lè)n久或縣task-獲start餃。搜cance糧l-eve獵nt飯的類(lèi)型也可駕以通過(guò)指定克一個(gè)用逗號(hào)鞭分割的列表災(zāi)被組合??竌ctio罰n|scr絕ipt|劫c疑reate傍-time擋r|蘿cance識(shí)l-tim涼er獄元素竊[0..*恒]形當(dāng)定時(shí)器被塌觸發(fā)時(shí)所應(yīng)閱被執(zhí)行的動(dòng)費(fèi)作。嘴creat尺e-tim魚(yú)er(創(chuàng)建氧定時(shí)器)免Creat閉e-tim敬er轎是定時(shí)器的桃創(chuàng)建先cance煮l-tim構(gòu)er(取消噸定時(shí)器)興Cance釀l-tim熊er雞是定時(shí)器的竹取消艙名稱恩類(lèi)型穴數(shù)量罵描述蕩name愛(ài)屬性簡(jiǎn)可選的蝕要被取消的反定時(shí)器的名供稱。贈(zèng)task(額任務(wù))廟Task土是是流程定問(wèn)義里的一部勻分,它決定熄了襲task粱insta殲nce意的創(chuàng)建和分罰配老swiml裂a(bǔ)ne(泳晃道)蔽實(shí)際應(yīng)用中茶,一個(gè)人是瓦一個(gè)流程中睬多個(gè)州Task俘的參與者穿(acto考r)解的情況是很柏常見(jiàn)的。在汽jbpm綁中通過(guò)創(chuàng)建祝一個(gè)壞swiml番ane榜并且把職swiml料ane蘇賦給一個(gè)燒task說(shuō)的方式來(lái)設(shè)瓶置當(dāng)前跨task交的參與者(致actor客)。一個(gè)業(yè)烘務(wù)流程中的卵swiml竹ane豈可以被看做梨為一個(gè)參與帶者的參與者儀對(duì)象的名稱破,當(dāng)然它不接一定是固定騾的某個(gè)人,額它可以是一駁個(gè)用戶組,感一個(gè)特定用幫戶的角色等傳。首次執(zhí)行辜到達(dá)一個(gè)壟Task毒,賦給該陰Task宜的一個(gè)居swiml鏡ane匆就會(huì)算出參廳與者倘(acto勝r)蠅。探名稱雀類(lèi)型算數(shù)量晉描述板name就屬性亂必需的帖泳道的名稱漢。泳道可以前被引用并且衡可以通過(guò)鋒TaskM扇gmtDe身finit竟ion綢被查出。達(dá)assig臭nment龜元素類(lèi)[1..1歪]眼指定泳道的僅分配。這個(gè)襲分配在本泳脅道中的第一純個(gè)任務(wù)實(shí)例谷被創(chuàng)建時(shí)完邀成。盼assig牙nment收(委派)自當(dāng)流程執(zhí)行濁到某個(gè)父Task冒的時(shí)候,引托時(shí)流程引摯六要調(diào)用相應(yīng)倦的孝swiml馳ane盆或村assig雪nment絡(luò)將當(dāng)前的叉task懲分配(委派蜂)給某個(gè)參撥與者,外部釋參與者可以鑒是一個(gè)人也背可以是某個(gè)掌系統(tǒng)等。瓦contr估oller禿(控制器)狗在任務(wù)執(zhí)行填時(shí),可能需檢要讀、寫(xiě)流當(dāng)程變量;在正任務(wù)完成并咐提交時(shí),可煎能需要寫(xiě)流掌程變量。為迫此,辱jBPM老提供了山"鬧任務(wù)變量圖"按的概念。在微某些情況下鍵,任務(wù)變量額和流成鄙程變量并非匆簡(jiǎn)單的一一疤對(duì)應(yīng)關(guān)系,衣例如,三個(gè)儀流程變量代愧表三個(gè)月的運(yùn)銷(xiāo)售額,任濃務(wù)變量只需驅(qū)要它們的平促均值。為實(shí)網(wǎng)現(xiàn)任務(wù)與流垮程實(shí)例之間取的信息交流辯,吧jBPM摩設(shè)置評(píng)貝了任務(wù)控制躲器機(jī)制。該論機(jī)制也采用煎遞進(jìn)模式:坐首先,望jBPM誰(shuí)提供基本(辭默認(rèn))的任霸務(wù)控制器;父如果不敷使墳用,二次開(kāi)摸發(fā)人員可以蛋使用自定義傾的任務(wù)控制非器。餡jBPM刷的任務(wù)控制曲器機(jī)制在流船程變量和任典務(wù)變量之間吃架起了一座餡橋梁。告名稱用類(lèi)型桑數(shù)量邁描述思class新屬性嗓可選的林一個(gè)實(shí)現(xiàn)桂org.j革bpm.t丹askmg毫mt.de熊f.Tas玩kCont嘴rolle鍛rHand隊(duì)ler兆接口的類(lèi)的舌全名稱。由Confi雅g厚-type卷屬性梁可選的廚{施field胞|絨bean復(fù)|輩c橫onstr規(guī)uctor忠|青confi斥gurat群ion-p抱roper聲ty浪}補(bǔ)。指定分配勝處理器對(duì)象蒜(位assig轎nment專(zhuān)-hand甚ler-o繭bject宜)對(duì)象將被穩(wěn)怎樣創(chuàng)建以詢及本元素的紐內(nèi)容怎樣象抽配置信息那刻樣被分配處趟理器對(duì)象所呈使用。破
頁(yè){長(zhǎng)內(nèi)容滅}藍(lán)
贈(zèng)contr鎮(zhèn)oller莖元素的內(nèi)容滾要么是指定材的任務(wù)控制保處理器的配匠置信息(如尺果指定了牢class粒屬性),要傷么必須是一拋個(gè)世varia靠ble籮元素列表(浮如果沒(méi)有指便定任務(wù)控制軌器)。句varia蛛ble采元素煮[0..*撿]仔如果沒(méi)有通妄過(guò)押class絨屬性指定任四務(wù)控制處理敗器,則箱contr泥oller考元素的內(nèi)容敞必須是變量橋列表。宋proce叢ss-st后ate子是流程嚷proce喜ss-st教ate驗(yàn)是爪JBPM啄提供的用來(lái)艦處理子流程朽的節(jié)點(diǎn),一坡個(gè)夜proce械ss-st光ate慶只能對(duì)應(yīng)一波個(gè)子流程,眼究竟指到哪期個(gè)子流程可緩以在弄proce顛ss-st緣ate晃的隔actio曲n小里指定,當(dāng)抖token隆執(zhí)行到指定京的子流程時(shí)站,子流程就吃已經(jīng)啟動(dòng),匙不用像啟動(dòng)疊主流程一樣弄手工啟動(dòng)子凡流程。其它責(zé)部分的處理薦就和普通的刑流程沒(méi)有區(qū)收別了。涉名稱異類(lèi)型島數(shù)量薯描述捉name孤屬性喪必需的堵名稱。帶Sub-p窗roces千s朋元素探只能定義一釣個(gè)豆子流程逢varia榮ble鳥(niǎo)變量來(lái)[0…*]愧Varia存ble本是用來(lái)指定鴿如何把數(shù)據(jù)統(tǒng)從父流程昨copy手到子流程蜓sub-p魚(yú)roces丹s子流程悄名稱每類(lèi)型晶數(shù)量海描述毫
name族屬性震必需的野
莫子流程的名河稱穗versi孔o(hù)n炒屬性側(cè)可選謎子流程的版法本。如果沒(méi)百有指定該屬鮮性,默認(rèn)將盞會(huì)采且該子堂流程的最后彈一個(gè)版本蘆condi舅tion走條件船名稱領(lǐng)類(lèi)型嘉數(shù)量南描述欄
付{債內(nèi)容光}葉或?qū)傩試L表達(dá)式纖必需的角
cond陰ition籌元素的內(nèi)容洪是一個(gè)計(jì)算端結(jié)果為布爾由值的象jPDL熄表達(dá)式。決晴策采用第一爆個(gè)表達(dá)式處擱理結(jié)果為序true酬的轉(zhuǎn)換(按梯在畜proce享ssdef爛initi禮on.xm鎮(zhèn)l駝中的順序)銀,如果沒(méi)有訊條件處理結(jié)具果為稠true號(hào),則采用默趁認(rèn)離開(kāi)轉(zhuǎn)換痕(也就是第慌一個(gè))。死excep謠tion-晌handl侵er異常肉處理衰Jbpm垃的異常處理院機(jī)制僅僅集印中于鞭java啞異常,流程極定義本身的絕執(zhí)行不會(huì)導(dǎo)勉致什么異??颍挥性趫?zhí)蟲(chóng)行委托類(lèi)時(shí)獵才會(huì)導(dǎo)致異牙常。非桃在流程定義盯(坦proce麥ss-de翁finit四ions擋)添加的中excep稿tion-聰handl慢er蠶對(duì)整個(gè)流程僅起作用、節(jié)臺(tái)點(diǎn)(腫nodes罵)上添加異量常只對(duì)當(dāng)前鳳的節(jié)點(diǎn)起作嫂用(同時(shí)如貓果在悅proce昆ss-de倒finit牲ions煌里也設(shè)置了瘡excep激tion-小handl詠er荒那么將不會(huì)診再執(zhí)行智proce壤ss-de針finit孩ions澡里的燦excep孔tion-姜handl懇er屋),和轉(zhuǎn)換啟(堵trans朵ition根s愈)添加翻excep壩tion-栽handl齡er岡只對(duì)當(dāng)前的挺trans惱ition不s啊起作用(同列時(shí)如果在扭proce啊ss-de余finit先ions蛋里也設(shè)置了鐮excep其tion-站handl吉er前那么將不會(huì)枯再執(zhí)行水proce英ss-de瞎finit虎ions糞里的重excep朋tion-彈handl位er秒),可以指遍定一個(gè)異常印處理(向excep弱tion-粘handl蠢ers黃)清單,每叢個(gè)異常處理襯(板e(cuò)xcep茶tion-快handl辭er熔)有一個(gè)動(dòng)座作列表,當(dāng)愈在委托類(lèi)中馬發(fā)生異常時(shí)丑,會(huì)在流程勁元素的父層勇次搜索一個(gè)旨適當(dāng)?shù)漠惓Ax處理(掉excep斗tion-襪handl影er匪),當(dāng)它被繪搜索到,則機(jī)異常處理(蒸excep跨tion-思handl廉er井)的動(dòng)作將傷被執(zhí)行。旱傳注意,負(fù)Jbpm傲的異常處理尿機(jī)制與毀java答異常處理不頁(yè)完全相似。運(yùn)在獅java雀中,一個(gè)捕溝獲的異常可閥以影響控制摘流,而在鎮(zhèn)Jbpm國(guó)中,流程不位會(huì)被兩Jbpm乒異常處理機(jī)饒制所改變。才異常要么被松捕獲,要么者不捕獲,沒(méi)粥有被捕獲的賀異常被拋向即客戶端(例熱如客戶端調(diào)靜用險(xiǎn)token神.sign篇al()蹦),而被捕雜獲的異常則要是通過(guò)屋Jbpm緞的貨excep拍tion-客handl犁er探,對(duì)于被捕也獲的異常,馬圖執(zhí)行仍會(huì)貨繼續(xù),就像狠沒(méi)有異常發(fā)貿(mào)生一樣。碎死在處理異常毛的動(dòng)作中,憐可以使用錄Token赴.setN舅ode(N設(shè)oden倦ode)輩把令牌放入上圖中的任何既節(jié)點(diǎn)。涌名稱毯類(lèi)型裂數(shù)量矩描述回excep擺tion-楊class調(diào)屬性錢(qián)可選的乎指定與本異謝常處理器所想匹配的走java綿throw稍able獎(jiǎng)?lì)悾绻@異個(gè)沒(méi)有指定筍這個(gè)屬性,噴則它匹配所薪有異常(該java.艇lang.找Throw焦able娛)。坐actio桑n記元素港[1..*濤]計(jì)當(dāng)異常被異游常處理器捕偉獲時(shí)將要執(zhí)霸行的動(dòng)作列費(fèi)表。身二哄X(qián)PDL之禽流程定義元街模型萌XPDL元腰模型定義了韻流程定義里統(tǒng)所包含的實(shí)拌體、它們的怎關(guān)系以及屬轉(zhuǎn)性,其中屬霧性不僅僅為參了執(zhí)行需要撫,很多屬性春是為了統(tǒng)計(jì)較與監(jiān)控的需賭要。插2.1包的(Pack雜age)拌流程模型包姨含許多作用壯域大于流程蠅定義的實(shí)體遲,例如參與檔者聲明、應(yīng)杰用程序聲明蠢和相關(guān)數(shù)據(jù)并元素,它們白可能被多個(gè)景流程定義所蒙引用。為了晌避免每個(gè)流劃程定義都重嶼復(fù)定義這些料實(shí)體,XP將DL引入包凳的概念,包遷作為流程定皂義的容器,射對(duì)流程定義刻按照關(guān)聯(lián)性席進(jìn)行分組。廟在包上定義謙的實(shí)體被其哲包含的流程捕定義繼承,鍵同時(shí),包能腔夠?yàn)樗鶎倭魇沓潭x聲明拒一系列的通殿用屬性,例幼如作者、版爽本號(hào)、狀態(tài)紗等。橡XPDL里扎的包等價(jià)于擺BPMN里涼的業(yè)務(wù)流程險(xiǎn)圖(插Busin焰essP烏roces盞sDia瞇gram寺)。膠2.寨2泳道(算Swiml攜anes)修泳道被用來(lái)致對(duì)流程定義跨和活動(dòng)進(jìn)行推布局。我們觸使用泳道在速流程級(jí)別上絨定義參與者侵信息(部門(mén)石、公司),電在活動(dòng)級(jí)別投上定義執(zhí)行裳者信息(角條色、人員)藏。我們使用冠一系列非重猴疊的長(zhǎng)方形廈來(lái)描述泳道扣,這些長(zhǎng)方必形稱為池(每Pool)犯,同時(shí),池眾又被細(xì)分為倦一系列的子貓泳道(La浸ne)。如淡下圖2-6庸所示:游圖2-6淡泳道傳同樣的遮在下圖中描墊述了一個(gè)包希含貸款應(yīng)用姨流程的池。嫂池中沒(méi)有道距。流程可以丑是可重用的每子流程或內(nèi)麗嵌的子流程強(qiáng)。川要注意遷移撕(順序流)爪可以穿越同膀一個(gè)池中的柱道。遷移可按能不會(huì)穿越天池。掛2.填3流程定擱義(Pro湊cess汁Defin獲ition潤(rùn))滋流程定義是趁對(duì)流程的建剃模和描述,愁為流程中的你其他實(shí)體提建供上下文信齒息。其屬性展包括創(chuàng)建時(shí)藝間、作者、擺初始化參數(shù)顛、執(zhí)行優(yōu)先鼓級(jí)、時(shí)間約同束、仿真信可息等。準(zhǔn)X倡pdl2.爐1文檔包含厚對(duì)流程集(皮包)的流程毫定義。似X裕ml文檔不哥僅被模型工鮮具、模擬工疲具和執(zhí)行工箭具使用,它機(jī)同樣為ba遼m報(bào)表工具螞提供了基本榜信息,特別嗎是為OLA握P立體報(bào)表涂技術(shù)提供了偶維度和變量死信息。婦在這里我們吊描述了使用耳管理工具發(fā)建送xpdl吸流程定義到職分析工具并州傳達(dá)能捕捉善執(zhí)行的詳細(xì)毒情況的日志賺事件流的企直業(yè)流程管理腿系統(tǒng)。分析飛工具根據(jù)流墨程定義、參囑與者和隊(duì)列精信息來(lái)構(gòu)造徒數(shù)據(jù)庫(kù)和O蝶LAP立方甚。分析工具蒸處理事件來(lái)跡更新數(shù)據(jù)庫(kù)雜中實(shí)際和維亦度上的表,饒并且利用e父xcel和陣(或)其他支擁有的流程展以及企業(yè)智罰能工具立體疊處理事件來(lái)夏完成對(duì)切片啟和切塊查看襲數(shù)據(jù)的交互輔的準(zhǔn)備。寇一個(gè)可供選場(chǎng)擇的數(shù)據(jù)展榜示的方法顯敲示了流程定叫義的視覺(jué)環(huán)鋒境中選擇的細(xì)數(shù)據(jù)。這個(gè)堅(jiān)可以由歷史闖展示或動(dòng)畫(huà)咐執(zhí)行系統(tǒng)或馬模擬運(yùn)行來(lái)幫實(shí)現(xiàn)。間2阻.4活動(dòng)(勢(shì)Activ寶ity)窮活動(dòng)是流程矮中的一個(gè)步婆驟,一個(gè)基頂本活動(dòng)具有期屬性。這些喜屬性提供了獎(jiǎng)在這一步驟盲中誰(shuí)可以執(zhí)技行這個(gè)活動(dòng)寄、什么應(yīng)用聞或Web服貼務(wù)會(huì)被調(diào)用涌、正在工作惡的對(duì)象的哪蹦些內(nèi)容被使沫用了以及(錫或)被改變須了等信息。開(kāi)參與者(資朵源)和應(yīng)用麥可能會(huì)定義器在一個(gè)流程另中,或者被愚定義在企業(yè)回流程模型的律整個(gè)流程集受中。工作對(duì)揉象的內(nèi)容同付樣可以定義窗在一個(gè)流程號(hào)中或整個(gè)模薄型中?;顒?dòng)巨有一些其他朋屬性更進(jìn)一徐步定義了它月們的特殊角構(gòu)色或它們是賤如何實(shí)現(xiàn)的浪一個(gè)流程包省含一個(gè)或多被個(gè)活動(dòng),活稿動(dòng)對(duì)應(yīng)著流鋒程里的一個(gè)堆工作單元。桑一個(gè)典型的宴活動(dòng)能被人背力資源或計(jì)慨算機(jī)所執(zhí)行喬。獅XPDL的僻活動(dòng)粒度比枯較粗,分為舍四類(lèi),分別尋對(duì)應(yīng)BPM磚N里的任務(wù)盯、子流程、括網(wǎng)關(guān)和事件假。如下圖2旋-7所示:密圖2-7湖XPDL活桌動(dòng)與BPM賠N的映射罷2.5轉(zhuǎn)移豈線(Tra甚nsiti復(fù)on)童活動(dòng)之間通夠過(guò)轉(zhuǎn)移線連積接。轉(zhuǎn)移線體包括3個(gè)屬萌性:源活動(dòng)胳、目標(biāo)活動(dòng)其和條件。轉(zhuǎn)甚移線可以是語(yǔ)有條件的(獵設(shè)置表達(dá)式幣),也可以計(jì)是無(wú)條件的遮。挨XPDL的薦轉(zhuǎn)移線對(duì)應(yīng)點(diǎn)于BPMN排里的順序流觀,如下圖2場(chǎng)-8所示:場(chǎng)圖2-8乘XPDL轉(zhuǎn)撫移線對(duì)應(yīng)B視PMN里的伴順序流拖2.王6參與者閱聲明(Pa往rtici喬pant償Decla默ratio營(yíng)n)盾描述執(zhí)行流港程和活動(dòng)的誓資源。資源蹲可以是單個(gè)冰人、也可以乞是角色、部吹門(mén)、還可以就是自動(dòng)執(zhí)行筒的機(jī)器資源敏(例如打印徐機(jī))。灶2.回7應(yīng)用程序享聲明(Ap繡plica捷tion束Decla裙ratio老n)從活動(dòng)可以調(diào)吧用的IT系負(fù)統(tǒng)、接口、貓Web服務(wù)捕。BPMN內(nèi)使用內(nèi)置的榜服務(wù)任務(wù)(拾Servi銜ceTa污sk)直接催代表對(duì)應(yīng)用鑒程序的調(diào)用父。紙2.民8人工產(chǎn)頭出物(Ar牢tifac辰t)默為流程附加呼額外的建模蒼信息,這些緒信息不屬于片基本的流程良實(shí)體(活動(dòng)柳、轉(zhuǎn)移線、忘消息流),卸它們通過(guò)關(guān)啄聯(lián)與流程實(shí)核體聯(lián)系在一齒起。在BP桐MN里,人角工交付物包咸括3種類(lèi)型細(xì),如下圖2憑-9所示:竟圖2-9革人工產(chǎn)出物薄2.莖9消息流受(Mess白ageF洪low)脾消息流用來(lái)悠展示兩個(gè)參鄉(xiāng)與者/流程釣之間的消息鹽流向。在B協(xié)PMN中,陡用泳道中的籌池代表兩個(gè)查參與者/流獲程。消息流望不能連接同身一個(gè)池中的鐵活動(dòng)。溝圖2-1援0消息流都消息流一般范由Web服享務(wù)或消息隊(duì)聾列實(shí)現(xiàn)。在姑例子中我們卡闡述了不同饅池中的活動(dòng)?jì)D之間的消息份流是怎樣流紅動(dòng)的。這使洲得我們可以脈圖形化的展粗示流程之間娛各方面的安銜排。應(yīng)該注坡意的是消息餡流不會(huì)出現(xiàn)喚在同一個(gè)池員中的活動(dòng)之萬(wàn)間。換句話租說(shuō),順序流押用來(lái)連接同讀一個(gè)池中的鉤活動(dòng),而消外息流用來(lái)展鞭示不同池中拋的活動(dòng)之間莫的通信。這垂個(gè)例子中的遍池被畫(huà)成水傭平方向并且掠擴(kuò)展到整個(gè)元頁(yè)面。但是怖,規(guī)范中也著支持垂直池飯,并允許限壺制寬度和高槳度。這支持瞎了規(guī)范中抽己象流程和安曉排對(duì)池的使洲用。息2.10煮關(guān)聯(lián)(As怠socia攔tion)搭我們使用關(guān)轎聯(lián)將信息、賺人工產(chǎn)出物遵與流程實(shí)體讓連接起來(lái),枝為流程模型候提供更多的歷信息,它不團(tuán)影響流程的臂執(zhí)行。如下綢圖2-11蛇所示:灘圖2-1虎1關(guān)聯(lián)引2.嶼11相關(guān)饒數(shù)據(jù)元素(屑Relev尸antd險(xiǎn)ataf吩ield)辨為流程定義界執(zhí)行過(guò)程中按創(chuàng)建或使用汽到的數(shù)據(jù),混這些數(shù)據(jù)被英活動(dòng)、應(yīng)用叢程序和流程盲中定義的各耕種表達(dá)式(光轉(zhuǎn)移線條件煩計(jì)算、網(wǎng)關(guān)全條件計(jì)算)堵所使用。訪2.句12數(shù)據(jù)媽類(lèi)型與表達(dá)躲式(Dat圈aTyp逆esan館dExp耕ressi夫ons)斯定義相關(guān)數(shù)旱據(jù)元素、系坊統(tǒng)與環(huán)境數(shù)面據(jù)、參與者才數(shù)據(jù)的數(shù)據(jù)雨類(lèi)型,這包致括了一些標(biāo)歷準(zhǔn)類(lèi)型,例班如Stri射ng、in爪t、dat海e等等,也結(jié)包括了自定落義的擴(kuò)展。早表達(dá)式被用晶于各種條件東計(jì)算(轉(zhuǎn)移駁線、網(wǎng)關(guān))板以及給數(shù)據(jù)系元素賦值???.鈔13系統(tǒng)艇與環(huán)境數(shù)據(jù)培(Sys錯(cuò)tema供ndEn沒(méi)viron同menta脊lDat志a)濕由工作流系紡統(tǒng)和外部環(huán)腥境所維護(hù)的骨數(shù)據(jù),這些稿數(shù)據(jù)被流程撞在執(zhí)行過(guò)程艦中使用。攜2炕.皺14資源州倉(cāng)庫(kù)(Re除sourc蕉eRep哭osito鑰ry)蝴執(zhí)行活動(dòng)的柏資源可以是暮人、也可以匙是角色、部開(kāi)門(mén)、程序、宅還可以是自疼動(dòng)執(zhí)行的機(jī)劈器資源,所者以我們使用稻資源倉(cāng)庫(kù)將祥流程所涉及郵到的資源管美理起來(lái)。資脅源倉(cāng)庫(kù)包括糊了對(duì)組織機(jī)警構(gòu)建模的支怕持。倘2.贊15廠商眾/用戶自定車(chē)義擴(kuò)展(V眼endor憲orU罷sers娛pecif話icEx菠tensi右ons)蝶工作流系統(tǒng)駐廠商/用戶添可以針對(duì)自大己的業(yè)務(wù)需手求對(duì)流程元護(hù)素和屬性進(jìn)宋行擴(kuò)展。悠2.16鼠流程交換螺一般的元模踩型允許工具鏟交換模型。箱這些工具有駛:模擬工具監(jiān)控工具執(zhí)行工具模型工具庫(kù)工具老下圖展示了別再BPM套將件中流程交效換的使用。棍三BPM稀N2.0淘一個(gè)BPM逗N2.0擠XML流槳程的根是膏defin鳥(niǎo)ition冤s月元素。在腸命名狀態(tài),味子元素會(huì)包固含真正的業(yè)你務(wù)流程定義繭。每個(gè)智proce產(chǎn)ss戴子元素可漏以擁有一個(gè)奶id殊和牲name探。類(lèi)BPMN2蓋.0的基本區(qū)結(jié)構(gòu):糖3.1事尼件套與活動(dòng)和網(wǎng)桌關(guān)一起,事杯件用來(lái)在實(shí)據(jù)際的每個(gè)業(yè)趕務(wù)流程中。巾事件讓業(yè)務(wù)省建模工具用霧很自然的方矛式描述業(yè)務(wù)且流程,比如嚼“繭當(dāng)我接收到智客戶的訂單孤,這個(gè)流程謙就啟動(dòng)種”施,墨“士如果兩天內(nèi)功任務(wù)沒(méi)結(jié)束慣,就終止流悔程氣”志或者當(dāng)我能收到一封取值消郵件,當(dāng)檔流程在運(yùn)行覺(jué)時(shí),使用子揀流程處理郵纏件。注意典赴型的業(yè)務(wù)錢(qián)通常使用這右種事件驅(qū)動(dòng)枯的方式。人奏們不會(huì)硬編吸碼順序創(chuàng)建帳,但是他們隱傾向于使用末在他們的環(huán)舞境中發(fā)生的翁事情(比如蛙,事件)。裹在BPM論N規(guī)范中,易描述了很多嫁事件類(lèi)型,蕩為了覆蓋可支能的事情,艘在業(yè)務(wù)環(huán)境控中可能出現(xiàn)研的情況?;?.待2榮事件:空啟間動(dòng)事件婚一個(gè)啟動(dòng)事兩件說(shuō)明了流穴程的開(kāi)始(蜘或子流程)繪。圖形形式公,它看起來(lái)猶是一個(gè)圓年(可能)內(nèi)頁(yè)部有一個(gè)小杠圖標(biāo)。圖標(biāo)渡指定了事件擋的實(shí)際類(lèi)型弦會(huì)在流程物實(shí)例創(chuàng)建時(shí)娃被觸發(fā)。詢空啟動(dòng)事件地畫(huà)出來(lái)是一潮個(gè)圓,內(nèi)部該沒(méi)有圖標(biāo),順意思是這秩個(gè)觸發(fā)器是背未知或者未巧指定的。j政PDL的開(kāi)催始活動(dòng)基本繁是一樣的語(yǔ)乏法。流程換實(shí)例的流程古定義包含一甚個(gè)空啟動(dòng)事悲件,可以羅使用exe缺cutio倍nServ料ice的A勺PI調(diào)用創(chuàng)陳建。舒一個(gè)空開(kāi)始謠事件像下面穩(wěn)這樣定義。想id是必填投的,nam餐e是可選的懶。港<star準(zhǔn)tEven桂tid=災(zāi)"star挽t"n繭ame="耐mySta史rt"/璃>色新確3.碎3果事件:空酸結(jié)束騎事件哭結(jié)束事件指葵定了流程實(shí)焰例中一個(gè)流咬程路徑的結(jié)吸束。圖形上紙,它看起來(lái)渾就是一個(gè)圓真擁有厚邊框適(可能)內(nèi)伐部有小圖標(biāo)愛(ài)。圖標(biāo)指定播了結(jié)束的時(shí)玻候會(huì)執(zhí)行哪淡種操作??蒸[結(jié)束事件畫(huà)陵出來(lái)是一個(gè)太圓,擁有厚稠邊框,內(nèi)部戀?zèng)]有圖標(biāo),希這意味著教當(dāng)流程到達(dá)陜事件時(shí),不撐會(huì)拋出任何恭信號(hào)。jP壽DL中的結(jié)崇束事件與空足結(jié)束事件語(yǔ)助義相同?;@空結(jié)束事件州可以像下面圣一樣定義,未id是必填馳的,nam弄e是可選的園。朝<endE燙vent篇id="e時(shí)nd"n癥ame="址myEnd笑"/>嫩關(guān)因下面的例子組顯示了只使僵用空開(kāi)始和嬌結(jié)束事件的泡流程:絞這個(gè)流程對(duì)旗應(yīng)的可執(zhí)行啦XML像這巡樣(忽略側(cè)聲明用的導(dǎo)defin牢ition筒s望根元素)孫<pr貧ocess納id="殼noneS再tartE屈ndEve鋼nt"n截ame="奧BPMN2姓Exam以plen垮ones臘tart后ande婆ndev盤(pán)ent">鼻蓋<star乖tEven虜tid=喘"star灣t"/>腸<磨seque粒nceFl霧owid摔="flo備w1"n劍ame="南fromS到tartT雷o(hù)End"蝕圾sour畫(huà)ceRef溫="sta遇rt"t復(fù)arget蔽Ref="浙end"堵/>障須<endE將vent也id="e山nd"n昨ame="旁End"配/>炎</p惱roces霸s>蠶尚乖3.傲4蜂事件:量終止結(jié)束臘事件鼠終止燥和\o"3.8.3.
事件:空結(jié)束事件"毒空結(jié)束事件雨的區(qū)別是實(shí)飽際中流程的灶路徑是如何歲處理的(或擺者使用BP嚴(yán)MN2.歪0的術(shù)語(yǔ)叫虧做toke放n)。終止遙結(jié)束事件會(huì)享結(jié)束整個(gè)流捎程實(shí)例,而巷空結(jié)束事件年只會(huì)結(jié)束當(dāng)胞前流程路徑創(chuàng)。他們都不蔬會(huì)拋出任何餃?zhǔn)虑楫?dāng)?shù)竭_(dá)課結(jié)束事件的腐時(shí)候。痛一個(gè)終止結(jié)召束事件可以榨像下面定義逝。id是必戲填的,na雹me是可選巾的。顏<endE眨vent疲id="t霸ermin標(biāo)ateEn河d"na耍me="m糕yTerm筍inate刑End">恒曉<term衛(wèi)inate司Event縮Defin頑ition鼓/>崇</end地Event譜>獨(dú)陶獨(dú)終止結(jié)束事搬件被描繪成擱結(jié)束事件一訂樣(圓,厚洋邊框),內(nèi)襯部圖標(biāo)時(shí)一條個(gè)完整的圓飯。在下面的淋例子中,完板成豆task1腐會(huì)結(jié)束流程潮實(shí)例,當(dāng)完葉成task膽2時(shí)只會(huì)結(jié)辜束到達(dá)結(jié)束熊事件的流程饅路徑,只剩顯下task賤1打開(kāi)。陜3.稀5順序流倒順序流是事止件,活動(dòng)和待網(wǎng)關(guān)之間的綁連線,顯示選為一條實(shí)線娘帶有箭頭厘,在BPM活N圖形中(盆jPDL中再等效的是t鈴ransi舌tion)卷。每個(gè)順序輝流都有一個(gè)留源頭請(qǐng)和一個(gè)肝目標(biāo)糠引用,包含散了活動(dòng),事今件或網(wǎng)關(guān)的督id鋼。些<sequ舅enceF工lowi妄d="my添Flow"灣name她="My克Flow"附剩so亮urceR下ef="s慈ource允Id"t霜arget辦Ref="爽targe華tId"搞/>括尾多與jPDL麻的一個(gè)重要防區(qū)別是多外情向順序流的嘴行為。在懇jPDL中班,只有一個(gè)顯轉(zhuǎn)移會(huì)成為音外向轉(zhuǎn)移,術(shù)除非活動(dòng)是碧fork覆(或自定義襖活動(dòng)擁有f城ork行為液)。然而,賓在BPMN失中,多外向足順序流的默蜜認(rèn)行為是切屬分進(jìn)入的t離oken(霧jBPM中備術(shù)語(yǔ)叫做e雞xecut飄ion)分幟成toke犯n集合,每原個(gè)順序流一士個(gè)。在下面撇情況中,在劣完成第一個(gè)袍任務(wù),就會(huì)栗激活三個(gè)任竭務(wù)。該為了避免使臺(tái)用一個(gè)順序祥流,必須添忽加cond扶ition香條件到順序針流中。在運(yùn)啟行時(shí),只有三當(dāng)cond龜ition曉條件結(jié)果為合true,敵順序流才初會(huì)被執(zhí)行。械活動(dòng)(比如悅用戶任務(wù))訊和網(wǎng)關(guān)(比買(mǎi)如唯一網(wǎng)關(guān)脅)可以用戶限默認(rèn)順序流支。默認(rèn)順序總流只會(huì)在活脅動(dòng)或網(wǎng)關(guān)的厲所有其他外彈向順序流的桌condi脅tion條土件為fal姥se時(shí)才會(huì)旁使用。默認(rèn)得順序流圖形腸像是順序流書(shū)多了一個(gè)斜勾線標(biāo)記。江默認(rèn)順序流繭通過(guò)指定活賓動(dòng)或網(wǎng)關(guān)的牌料'defa摟ult'極屬性奇來(lái)使用。淺也要注意,炊默認(rèn)順序流跡上的表達(dá)式棒會(huì)被忽略。文急3.六6網(wǎng)關(guān)群BPMN中徒的網(wǎng)關(guān)是用沉來(lái)控制流程儲(chǔ)中的流向的軋。更確切的隸是,當(dāng)一個(gè)乞token冶(BPMN口2.0中匯execu蠻tion的谷概念注解)嘗到達(dá)一個(gè)網(wǎng)錦關(guān),它會(huì)根首據(jù)網(wǎng)關(guān)的類(lèi)沸型進(jìn)行合并之或切分。網(wǎng)辟關(guān)描繪成一危個(gè)菱形,使齊用一個(gè)內(nèi)部嬌圖標(biāo)來(lái)指定支類(lèi)型唯一匙,廣泛,其鉛他)。貿(mào)所有網(wǎng)關(guān)類(lèi)星型,都可以繳設(shè)置冤gatew殲ayDir箏ectio板n傲。下面的閃值可以使用澡:孝unspe封cific帝ed(默雖認(rèn))娃:網(wǎng)關(guān)可能莊擁有多個(gè)進(jìn)掠入和外出順集序流。羊mixed字:網(wǎng)關(guān)必須竭擁有多個(gè)刑進(jìn)入和外出巖順序流。夢(mèng)conve邀rging壁:網(wǎng)關(guān)必須店擁有多個(gè)進(jìn)豆入順序流,揉但是只能增有一個(gè)外出忠順序流。防diver振ging國(guó):網(wǎng)關(guān)必須占擁有一個(gè)進(jìn)捐入順序流,吉和多個(gè)外目出順序流。押煌3.鵲7網(wǎng)關(guān):雜唯一網(wǎng)關(guān)水唯一網(wǎng)關(guān)表伶達(dá)了一個(gè)流字程中的馬唯一決策霧。會(huì)有一個(gè)似外向順序流炊被使用,根辨據(jù)定義在順戶序流中的條圓件。對(duì)應(yīng)的保jPDL結(jié)焦構(gòu),相同的修語(yǔ)法是干decis卵ion寸活動(dòng)。唯一片網(wǎng)關(guān)的完全肥技術(shù)名稱是柄'基于數(shù)據(jù)釀的唯一網(wǎng)關(guān)紫'劈,但是也經(jīng)律常稱為管XOR曉網(wǎng)關(guān)座。XOR網(wǎng)濫關(guān)被描繪為逆一個(gè)菱形,夠內(nèi)部有一個(gè)羨'X',一衫個(gè)空的菱形億,沒(méi)有網(wǎng)關(guān)禍也象征著唯壤一網(wǎng)關(guān)。飾下面圖形顯令示了唯一網(wǎng)臥關(guān)的用法:田根據(jù)amo碰unt變量食的值,會(huì)撕選擇唯一網(wǎng)爛關(guān)外向的三非個(gè)外向順序姐流中的一訪個(gè)。棒3.歲8網(wǎng)關(guān):逝并行網(wǎng)關(guān)兆并行網(wǎng)關(guān)用伍來(lái)切分或同充步相關(guān)的進(jìn)濾入或外出順伍序流。便并行網(wǎng)關(guān)擁甩有一個(gè)進(jìn)入勤順序流的和討多于一個(gè)的矩外出順序流緊叫做辣'并行切分助或竟'AND-荷split趨'廊。所有外出地順序流都會(huì)惜被并行使用擱??鹱⒁猓合褚?guī)獨(dú)范中定義的熔那樣,外出保順序流中的慈條件都會(huì)被橋忽略。怎并行網(wǎng)關(guān)擁梢有多個(gè)進(jìn)入軌順序流和一預(yù)個(gè)外出順序井流叫做蒸'并行歸并據(jù)'役或曠AND-j陰oin殿。所有進(jìn)入巨順序流需要穴到達(dá)這個(gè)船并行歸并,乒在外向順序遭流使用之前沾。目下面的圖形戰(zhàn)顯示了一個(gè)罪并行網(wǎng)關(guān)可費(fèi)以如何使用碰。在流程啟棋動(dòng)后,淺“扯prepa事resh凝ipmen慶t屑”幻和抵“賞bill祥custo闖mer貢”苗用戶任務(wù)都浪會(huì)被激活。蝕并行網(wǎng)關(guān)被捉描繪為一個(gè)轉(zhuǎn)菱形,內(nèi)部獸圖標(biāo)是一個(gè)蛋十字,對(duì)切雜分和歸并行做為都是一樣慨。笨3.償9任務(wù)萌一個(gè)任務(wù)表喘示工作需要潔被外部實(shí)體傾完成,比如級(jí)人工或自動(dòng)濕服務(wù)。重要銜的是注意B既PMN語(yǔ)法準(zhǔn)的'tas功k'與jP釣DL語(yǔ)法的需區(qū)別。在j笨PDL中,壤'task張'的概念總?cè)臼怯迷谌斯け鲆恍┦虑橛傻沫h(huán)境。流影程引擎遇到大jPDL中屠的task注,它會(huì)創(chuàng)建怨一個(gè)tas瘦k,交給一劃些人的任務(wù)闖列表,然后送它會(huì)進(jìn)入等課待狀態(tài)。然應(yīng)而在BPM該N2.0款中,這里有寨很多任務(wù)類(lèi)最型,一些表香示等待狀態(tài)置(比如,楚User麥Task附一些表示旗自動(dòng)活動(dòng)(駝比如,狀Servi尚ceTa優(yōu)sk侮。所以小輪心不要混淆踐了任務(wù)的概敗念,在切換眨語(yǔ)言的時(shí)候壺。任務(wù)被描弓繪成一個(gè)圓黃角矩形,一戚般內(nèi)部包含革文字。任務(wù)違的類(lèi)型(用橋戶任務(wù),服載務(wù)任務(wù),腳諸本任務(wù),等望等)顯示在蠅矩形的左上畢角,用小圖希標(biāo)區(qū)別。根露據(jù)任務(wù)的類(lèi)慎型,引擎會(huì)噴執(zhí)行不同的蠶功能。胖3.怪10任務(wù)儀:人工任務(wù)蛙user嫌task帆是典型的'拼人工任務(wù)'翅,實(shí)際中的襪每個(gè)wor償kflow崖或BPMN炒軟件中都可親以找到。當(dāng)?shù)窳鞒虉?zhí)行到菊達(dá)這樣一個(gè)撕user獵task時(shí)棵,救一個(gè)新人工損任務(wù)就會(huì)被盟創(chuàng)建,交給葛用戶的任務(wù)鋸列表驕和\o"3.8.13.
任務(wù):手工任務(wù)"劇manua芝ltas攝k界的主要區(qū)別角是(也與人柴工工作對(duì)應(yīng)悼)是流程引霜擎了解任務(wù)學(xué)。引擎可以悔跟蹤競(jìng)爭(zhēng),充分配,時(shí)間趟,其他,這碧些不是ma庸nual肝task腐的情況。舅user叮task描櫻繪為一個(gè)圓低角矩形,在活左上角是一勿個(gè)小用戶圖備標(biāo)。墓user矩task被虎定義為下面昆的BPMN革2.0醋XML:萬(wàn)<user貼Task豆id="m端yTask舉"nam奉e="My鍋task盯"/>針僻臨根據(jù)規(guī)范,客可以使用多巨種實(shí)現(xiàn)(W拿ebSer松vice,段WS-h葬umant塑ask,等筍等)。通臭過(guò)使用秤imple縣menta溫tion殺屬性。當(dāng)前睛,只有標(biāo)準(zhǔn)抗的jBPM堂任務(wù)機(jī)制才牙可以用,所掉以這里(還饅)沒(méi)有定義巨'impl迎ement丸ation死'屬性的功觀能。刑BPMN鏈2.0規(guī)范皆包含了一些寫(xiě)方法把任務(wù)撿分配給用戶榜、背組芬、栗角色等等。倡當(dāng)前的驢BPMN2魄.0古jBPM實(shí)醒現(xiàn)允許使用布一個(gè)蹈resou肝rceAs燒signm抱entEx塔press井ion搖來(lái)分配任務(wù)鋤,結(jié)合漏human掃Perfo蘋(píng)rmer噴orPo姐tenti暑alOwn建er聚結(jié)構(gòu)。這部獄分希望在未勿來(lái)的版本里虎能夠進(jìn)一步摧演化。蓄poten鋪tialO有wner趙用來(lái)在你希章望確定用戶干、嘗組飛、謎角色的時(shí)候蜂。這是一個(gè)靠task的蠶候選人港。也要注意啟,需要在奸流程外部扣定義一個(gè)資忘源,這樣任漂務(wù)分配器可夜以引用到這盈個(gè)資源。實(shí)緒際上,任何邀活動(dòng)都可以么引用一個(gè)或猜多個(gè)資源元逮素。目前,仆只需要定義智這個(gè)資源就掉可以了(因鋼為它是規(guī)范誓中的一個(gè)必毛須的元素)蓋,但是在以業(yè)后的發(fā)布中遺會(huì)進(jìn)行加強(qiáng)雁(比如,資瘋源可以擁有餓運(yùn)行時(shí)參數(shù)恭)。乓3.端11任務(wù)茅:璃Java服豎務(wù)任務(wù)銳Servi壇ceTa臨sk傳是一個(gè)自動(dòng)伐活動(dòng),它會(huì)蔥調(diào)用一些服獅務(wù),比如w毅ebse科rvice抽,java狠serv訴ice等等決。當(dāng)前jB泳PM引擎只嘉支持調(diào)用j態(tài)avas緊ervic謹(jǐn)e,但是w著ebse是rvice誘的調(diào)用已剩經(jīng)在未來(lái)的胸版本中做了城計(jì)劃??苟x一個(gè)服用務(wù)任務(wù)需要灶好幾行XM咳L(這里就振可以看到B描PEL的影地響力)。當(dāng)才然,在不久予的未來(lái),我益?zhèn)兿M泄ね昃呖梢园堰@矛部分大量的弄簡(jiǎn)化。一個(gè)致服務(wù)任務(wù)需奉要如下定義附:追<serv圖iceTa峽skid倍="MyS蟲(chóng)ervic怒eTask夏"nam驕e="My屑serv乓icet嘴ask"救imp尖lemen伍tatio吳n="Ot工her"視opera燕tionR于ef="m欺yOper姨ation放"/>憶罵嘩服務(wù)任務(wù)需回要一個(gè)必填患的掃id芹和一個(gè)可選食的男name廈。惕imple假menta器tion殺元素是用來(lái)惜表示調(diào)用服折務(wù)的類(lèi)型。遞可選值是喊WebSe霸rvice州,綁Other宗或者Uns排pecif凡ied。因惕為我們只實(shí)道現(xiàn)了Jav朵a調(diào)用,現(xiàn)亦在只能選擇輪Other身。貓服務(wù)任務(wù)將贈(zèng)調(diào)用一個(gè)操殺作,燥opera種tion棉的提id旨會(huì)在虧opera辱tionR瓣ef避屬性中引用御。這樣一個(gè)味操作就是下痕面實(shí)例的裂inter嘴face質(zhì)的一部分。時(shí)每個(gè)操作都訴至少有一個(gè)借能輸入信息凍,并且最多舊有一個(gè)歉輸出信息仇。吉<inte乏rface橫id="窗myInt子erfac坐e"抵n縫ame="罵org.j思bpm.M唐yJava煉Servi鴨cek">皂<毅opera夜tion螺id="m燈yOper尋ation侍2"na蹄me="m尚yMeth產(chǎn)od">局璃<inM趣essag墾eRef>梯input斧Messa渾ge</i執(zhí)nMess座ageRe狡f>次饞<out存Messa冤geRef籮>outp限utMes閘sage<冷/outM到essag撒eRef>蹦<繡/bpmn掩:oper蝕ation律>考</int鵝erfac怪e>懶晶石對(duì)于jav道a服務(wù),質(zhì)接口的名稱鉗用來(lái)指定捎java類(lèi)測(cè)的全類(lèi)名。仔操作的名稱港用來(lái)指定搶將要調(diào)用方桐法名。輸入賺/輸出信息玩表示著ja若va方法的寇參數(shù)/返回尿值,定義枝如下所示:螺僚<mess帆agei限d="in毀putMe毅ssage語(yǔ)"nam挑e="in暴putm嚼essag頸e"st廚ructu捕reRef塌="myI獎(jiǎng)temDe希finit慧ion1"都/>犧玩畜BPMN中受很多元素叫讀做'ite撒m感知',嗚包括這個(gè)消升息結(jié)構(gòu)。思這意味著它固們會(huì)在流程茄執(zhí)行過(guò)程中蹦保存或讀取貿(mào)item。搭負(fù)責(zé)這些存元素的數(shù)據(jù)殘結(jié)構(gòu)需要使炸用冰ItemD豆efini刺tion價(jià)。在這個(gè)尾環(huán)境下,消平息指定了它翠的數(shù)據(jù)結(jié)構(gòu)燕,通過(guò)引用失攀struc蔑tureR叼ef土屬性中定義奴的Item節(jié)Defin逆ition勿。扁3.棒12任務(wù)越:腳本良服務(wù)任務(wù)為本任務(wù)時(shí)一雁個(gè)自動(dòng)活動(dòng)爽,當(dāng)?shù)竭_(dá)這哲個(gè)任務(wù)的時(shí)漫候流程引擎練會(huì)執(zhí)行一個(gè)皂腳本。腳本焰任務(wù)使用方律式如下:密<scri章ptTas濟(jì)kid=洲"scri謙ptTas次k"na咸me="S候cript聽(tīng)Task濤"scr航iptLa采nguag早e="bs罩h">月<sc讀ript>今<![CD閣ATA[館f晶or(in徑ti=0洗;i<葵inpu靈t.len哥gth;屆i++){補(bǔ)艦Syst浪em.ou枝t.pri蝦ntln(庫(kù)input買(mǎi)[i]+策"x軍2="導(dǎo)+(i岡nput[近i]*2)奇);綢}學(xué)]]>嗽</s召cript闖>趨</scr億iptTa園sk>粒帥宇腳本任務(wù),飯除了必填查id范和可選的盤(pán)name海之外,還允戴許指定孤scrip味tLang福uage酸和羨scrip才t犧。因?yàn)槲覀凐B(niǎo)使用了JS謎R-223媽?zhuān)╦ava系平臺(tái)的腳本類(lèi)語(yǔ)言),修刪改腳本語(yǔ)言貧就需要:敵把祥scrip圣tLang魯uage千屬性修改窯為JSR-仁223兼容昏的名稱嗽在clas遞spath差下添加JS余R規(guī)范的S躺cript逼Engin匠e實(shí)現(xiàn)盒上面的XM爬L對(duì)應(yīng)圖形閥如下所示(工添加了空開(kāi)濃始和結(jié)束事讀件)。狹3.佩13任務(wù)最:手工浩任務(wù)碗手工任務(wù)時(shí)蠢一個(gè)由外部細(xì)人員執(zhí)行的離任務(wù),但是的沒(méi)有指定是妥一個(gè)BPM裁系統(tǒng)或是一極個(gè)服務(wù)會(huì)被瓣調(diào)用。在真孩實(shí)世界里,幅有很多例子駁:安裝一個(gè)預(yù)系統(tǒng),音使用定期郵含件發(fā)送一封機(jī)信,用彈聯(lián)系客戶,油等等。數(shù)<manu辣alTas苦kid=汗"myMa繁nualT書(shū)ask"期name=道"Call病cust瞎omer"仍/>章砍薄手工任務(wù)的砌目標(biāo)更像文海檔/建模提司醒的,因?yàn)橹人鼘?duì)流程引礦擎的運(yùn)行沒(méi)恒有任何意義昂,因此,當(dāng)宜流程引擎遇修到一個(gè)手工質(zhì)任務(wù)時(shí)會(huì)簡(jiǎn)園單略過(guò)。鋸3.般14任務(wù)鄰:腿java接職收浮任務(wù)釘recei潤(rùn)veta醬sk棄是一個(gè)任務(wù)靠會(huì)等到外部喜消息的到來(lái)店。除了廣泛辮使用的we體bser生vice用障例,規(guī)范在佩其他環(huán)境中妻的使用也是柜一樣的。w冷ebse撲rvice澡用例還沒(méi)有挽實(shí)現(xiàn),但是睛recei該veta寇sk已經(jīng)可棚以在jav欲a環(huán)境中使播用了。烏recei睜veta榴sk顯示為樂(lè)一個(gè)圓角矩侄形(和ta吉sk圖形一墓樣)在左上各角有一個(gè)小張信封的圖標(biāo)豪。襲在java廟環(huán)境中,r稠eceiv勇etas況k沒(méi)有其他綠屬性,除了畝id和na幻me(可選嘗),行為就依像是一個(gè)等富待狀態(tài)。為航了在你的業(yè)踩務(wù)流程中使適用等待狀態(tài)櫻,只需要加率入如下幾行增:絲<rece懲iveTa潔skid古="rec火eiveT晌ask"襪name=促"wait貸"/>第救鴿流程執(zhí)行會(huì)器在這樣一個(gè)借recei專(zhuān)veta兆sk中等待贊。流程會(huì)使逐用熟悉的錄jBPM群signa動(dòng)lmet早hods型來(lái)繼續(xù)執(zhí)行便。注意,這勁些可能在未輪來(lái)改變,因蝶為勢(shì)'sign剖al'話在BPMN關(guān)2.0中萍擁有完全不蒙同的含義。蜂Execu董tion彎execu鞏tion魄=pro愉cessI屑nstan該ce.fi冤ndAct新iveEx巷ecuti氣onIn(誠(chéng)"rece曬iveTa陷sk");狼execu檢tionS神ervic具e.sig孔nalEx紅ecuti丘onByI染d(exe眠cutio霉n.get扣Id())藍(lán);姨胃令四BPE浙L獸4.1簡(jiǎn)甲介樹(shù)業(yè)務(wù)流程執(zhí)徑行語(yǔ)戲搬言(洲Busin葉essP度roces攤sExe良cutio婚nLan爬guage舍,BPE絮L,漸發(fā)音為井'bipp礙le'農(nóng)或住'bee-謀pell'秒),也叫業(yè)玉務(wù)過(guò)程執(zhí)行恨語(yǔ)言,是一覽種基于席XML項(xiàng)的,用來(lái)描也寫(xiě)業(yè)務(wù)流程節(jié)的編程語(yǔ)言公,被描寫(xiě)的母業(yè)務(wù)流程的犁每個(gè)單一旁昏步驟則由壤Web貢服務(wù)來(lái)實(shí)現(xiàn)黨。脾BPEL舅的目標(biāo)是要理實(shí)現(xiàn)業(yè)務(wù)流玉程定義格式暖的標(biāo)準(zhǔn)化,喚使得公司之虧間可以通過(guò)桃Web叉服務(wù)無(wú)縫的灰進(jìn)行交互。悠BPEL框是基于中Web布服務(wù)的,并色且依賴于刺WSDL匯。一個(gè)補(bǔ)BPEL竭流程可以發(fā)喜布為一個(gè)圓WSDL壺定義的服務(wù)決,并像其它物Web盜服務(wù)一樣被稻調(diào)用。而河釀且,困BPEL運(yùn)希望一個(gè)嗓Web帥服務(wù)合成所棍包含的全部偷外部襯Web駕服務(wù),都是艱用卵WSDL挪服務(wù)契約定嫩義的,這令鍛B(tài)PEL旦流程可以調(diào)代用其它紹BPEL株流程,甚至咽可以遞糠爛歸的調(diào)用自伯己。值得注詳意的是稠BPEL凡不直接支持筆人機(jī)對(duì)話,物BPEL鼓所描寫(xiě)的過(guò)喉程僅與王Web鐘服務(wù)通信,蛛而這些動(dòng)Web民服務(wù)卻可以漂提供與用戶父的信息交換退,但它們俗忌不是用戶本玉身。用扎BPEL喚編寫(xiě)的流程珍可以在任何維支持繁BEPL妖規(guī)范的平臺(tái)屋或產(chǎn)品上運(yùn)夾行。合4.2亡BPEL膛支持兩類(lèi)不柿同類(lèi)型的業(yè)巧務(wù)流程汗可執(zhí)行流程削:定義了要諷執(zhí)行的各項(xiàng)翅具體任務(wù),紛以及完成業(yè)運(yùn)務(wù)流程所需懷要調(diào)用的各否個(gè)服務(wù),它群們遵循編排忘規(guī)范,可以懼被一個(gè)編排筑引擎所執(zhí)行咐。(羽orche掏strat奔ion財(cái))丘傘朱抽象流程:千詳細(xì)說(shuō)明了竹雙方或多方啞的公共消息貿(mào)交換,但沒(méi)帳有定義流程貢流的內(nèi)部行混為細(xì)節(jié),不友可執(zhí)行。(鞏chore棗ograp危hy娛)西渾BPEL株現(xiàn)已成為被頁(yè)業(yè)界廣泛認(rèn)念可和接受的礎(chǔ)進(jìn)行尺Web送服務(wù)編排的懇事實(shí)標(biāo)準(zhǔn)。蔬4.3溫BPEL兆與其它駕Web偽服務(wù)技術(shù)的郊關(guān)系捧BPEL變是建立在誕Webs磁ervic粒es贏技術(shù)之上的犧,因此與潮WSDL土、押XML案、福SOAP染和蓋UDDI愁等標(biāo)準(zhǔn)密切幫相關(guān)。遙BPEL賺流程模型是揀在冰WSDL命定義的服務(wù)甚模型之上的什一層。一個(gè)構(gòu)業(yè)務(wù)流程定潛義了一個(gè)流昆程實(shí)例和它度的伙伴之間件的交互。為鵲了定義一個(gè)選業(yè)務(wù)流程,撐BPEL等引入了一些追新的憤XML萬(wàn)元素,例如舊Partn乏ers:雅業(yè)務(wù)事務(wù)中賭的參與者(三actor攤s敗)黑Conta開(kāi)iners網(wǎng):吼組成業(yè)務(wù)流雨程中的某一塌狀態(tài)的一組煮消息徹Opera打tions郊:庫(kù)所需很Web屢服務(wù)的類(lèi)型墳氏Port秘types總:ope屋ratio愈ns卸所要求的相爹關(guān)帆Web慮服務(wù)的關(guān)系張博4.4粉BPEL酷包含的范圍吉處理活動(dòng)的揀順序,特別抽是網(wǎng)絡(luò)服務(wù)衛(wèi)互操作。鋤消息和處理脅實(shí)例之間的鳥(niǎo)關(guān)系。潑在發(fā)生錯(cuò)誤絕和例外情況域下的恢復(fù)行遵為昏處理角色之血間的基于網(wǎng)糖絡(luò)服務(wù)關(guān)系舟的雙面性。開(kāi)4.5資BPEL兩語(yǔ)言支持的當(dāng)兩類(lèi)任務(wù)崗BPEL逃支持兩類(lèi)任直務(wù)或者說(shuō)是良行為:基本殲任務(wù)(縣basic逆task休s改)和結(jié)構(gòu)化壯任務(wù)緣(stru但cture幻dtas憐ks)擇。要基本任務(wù)是族指由業(yè)務(wù)流中程的一個(gè)基俯本的步驟,詞任務(wù)內(nèi)不會(huì)體嵌套其它任川務(wù);而結(jié)構(gòu)交化任務(wù)從外乳部看是一個(gè)前步驟而從內(nèi)滔部看卻有若廚干個(gè)步驟。鴿基本任務(wù)包胞括:迫Invok象e家任務(wù)且——鄰允許業(yè)務(wù)流赴程在某一個(gè)盒Web庫(kù)服務(wù)提供的杠portT景ype縮上調(diào)用單向鴉的(以one-w瞞ay味)或請(qǐng)求拔/塑響應(yīng)(油reque征st/re念spose件)操作。赴Recei臺(tái)ve古任務(wù)廣——威允許業(yè)務(wù)流攝程停下來(lái)等債待消息到來(lái)卸。蒙Reply墓任務(wù)牧——終允許業(yè)務(wù)流敞程對(duì)收到的籠消息發(fā)送一奴個(gè)回復(fù)消息聲。寒Wait湖任務(wù)慈——興通知流程等春待一段時(shí)間簽。劉Assig捆n辨任務(wù)惹——命把數(shù)據(jù)從一項(xiàng)處復(fù)制到另隊(duì)一處。轟Throw落任務(wù)蛙——悔表明發(fā)生了堪某個(gè)錯(cuò)誤。吵Termi稠nate趣任務(wù)送——趨終止整個(gè)編懇排實(shí)例。狠結(jié)構(gòu)化任務(wù)還包括:酬Seque嘉nce跌任務(wù)丈——芳定義一個(gè)有果序的任務(wù)序渡列煩Switc語(yǔ)h道任務(wù)盼——部根據(jù)條件選受擇某一分支晉林Pick儀任務(wù)梯——叫停下并等待亡某一適當(dāng)消模息的到來(lái),故或者等到超柱時(shí)繼續(xù)前進(jìn)位。只要多個(gè)竊觸發(fā)器中的代一個(gè)發(fā)生,束就執(zhí)行相應(yīng)旦的活動(dòng),任怖務(wù)便結(jié)束了盈。壇While瞇任務(wù)丈——拐定義循環(huán)執(zhí)悄行,直至滿慢足某一個(gè)條眉件的一組任演務(wù)。天Flow幅任務(wù)增——披表明一組應(yīng)己并行執(zhí)行的斧步驟(可以慮通過(guò)建立連躍接來(lái)定義一甘個(gè)特定流程雕的執(zhí)行序列迫)私以上是是雀BPEL4戲WS1.1肆中常見(jiàn)的任畜務(wù),在最新塊發(fā)布的危WS-BP澆EL2.0白有較大的改拴變。支持更足多新的任務(wù)攪或行為址(if-t銀hen-e翼lse,驢repea溪tUnti的l,va員lidat梢e,fo伏rEach煩,ext碑ensio加nActi撫vity)襪4.6灣BPEL王中表達(dá)式速BPEL掛支持四種表占達(dá)式忘布爾表達(dá)式末。罩持續(xù)時(shí)間表陪達(dá)式。右截止時(shí)間表坑達(dá)式。漂普通表達(dá)式叔,可以歸結(jié)瘦為鼓XMLS徹chema肢中所定義的煌strin賠g,nu愛(ài)mber可和僵boole棒an灘格式。鑰BPEL匯同時(shí)支持一旅些操作符,獨(dú)如簡(jiǎn)單的算縫
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 南通智能裝備制造基地建設(shè)合作合同
- 報(bào)警器安裝施工合同
- 個(gè)人居間合同
- 借款合同抵押與擔(dān)保
- 民間借貸抵押合同年
- 冬季水果供應(yīng)鏈管理服務(wù)合同
- 森林資源培育與利用合作合同
- 沈陽(yáng)科技學(xué)院《推銷(xiāo)理論與實(shí)務(wù)》2023-2024學(xué)年第二學(xué)期期末試卷
- 廣州城市理工學(xué)院《科研實(shí)訓(xùn)》2023-2024學(xué)年第二學(xué)期期末試卷
- 雙手向后拋實(shí)心球的練習(xí) 教學(xué)設(shè)計(jì)-2023-2024學(xué)年高一上學(xué)期體育與健康人教版必修第一冊(cè)
- 高中課程表模板1
- tlc-jc dy001通信用高頻開(kāi)關(guān)電源系統(tǒng)檢驗(yàn)報(bào)告模板va
- 閥門(mén)噪聲計(jì)算程序(IEC)(帶公式)
- 2022年RDA5807m+IIC收音機(jī)51單片機(jī)C程序上課講義
- 雅馬哈貼片機(jī)_修機(jī)_調(diào)機(jī)的經(jīng)驗(yàn)之談1
- 全自動(dòng)咖啡機(jī)基本結(jié)構(gòu)及原理教程課件
- 金屬風(fēng)管支架重量計(jì)算表
- 正負(fù)零以下基礎(chǔ)施工方案(44頁(yè))
- 簡(jiǎn)愛(ài)人物形象分析(課堂PPT)
- 義務(wù)教育《勞動(dòng)》課程標(biāo)準(zhǔn)(2022年版)
- 從業(yè)務(wù)骨干到管理者(課堂PPT)
評(píng)論
0/150
提交評(píng)論