jBPM5_用户手册-中文版_第1页
jBPM5_用户手册-中文版_第2页
jBPM5_用户手册-中文版_第3页
jBPM5_用户手册-中文版_第4页
jBPM5_用户手册-中文版_第5页
已阅读5页,还剩42页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、翻译 by amos_tljBPM用户手册目 录jBPM用户手册-1 -第一章概述-3-第二章安装-8-第三章流程-10-第四章 BPMN2.0-21 -第五章API-22 -第六章 人工任务-23 -第七章领域-规范流程-33 -第八章持久化-34 -第九章控制台-39-第十章监视-42 - #翻译 by amos_tl第一章概述本幸节将介绍jBPM5的各科级件。姐件将带您快遠的了聲业务流程的生命 周期和阶段。这些阶段包据建樸.部暑、拚行和监视。1建模jBPM 允许用户通过附形的方式修敌业务浇程。用户和开发者可通过三科方 式修改BPMN2.0业务浇程龙义。1.1. Drools F low

2、for eclipse 插件Drools Flow支持召建,调试浇程。1.2. jBPM5 for ec I ipse 插件目前仍柱幵发中,仅支特创建流程。克成后的版本将屯全支持BPMN2.0規 苑。1.3. 基于WEB的Oryx编辑器(EXT实现)Oryx為辑券整合列Guvnor,它是一个存緒流程的知钗库。Oryx编辑乐支 特查看、灵新和创建浇程。2.部署Guvnor是一个知识库,用来存借流程、域栈型、业务规则苓。它提供一个 基子WEB的控制合用来查找.修改和则试你的知识库内彖。3.执行3.1.流程引擎流程引擎是一个基于JAVA语言开发轻竟级工作流引擎。内置支持BPMN 2.0现范的流程:箍

3、件化的数据持久處与芋务品盖: 审计和窗史目志记录 基于通用的流程引擎目前浇程引擎还没有实现BPMN2.0所有给点类型与属性,但大部分通用的 结点类型己支持。TSfi岀所有JBPM5己支特的无素:-#翻译 by amostl5翻译 by amostlt SqueiLce flowOCompongtM <0Start Eventi< End Event Rul© Tsk#翻译 by amostl:.GtQwaydiverge<2> Gatew converged Reusable Sub"Process(E)Script TaskTimer Ev

4、1;nt® Error Event#翻译 by amostl#翻译 by amostlEvent Us er Task二I Embedded Sab-ProcessQMultijLgInst axices(2Service Tasks#翻译 by amos_tl下莎列岀所有BPMN 2.0文义的丸素:流程对象事件* Start Event (None, Conditional. Signal, Message. Timer)* End Event (None, Terminate, Error, Escalation, Signal, Message, Compensation)*

5、Ihtvmediate Catch Event (Signalt Timer. Conditional, Murage)立即捕联事件* Intamediate Throw Event (None, Signal,Escalation! MMsagey Compoisation)* Non-intwrupting Boundary Event (Escalation! Timer)非中斷边界事件* Interrnptiiig Boundary Event (Escalation, Error, Timer, Compensatioii)活动* Script Task (Java、MVEL) JA

6、VA 或 MVEL 脚本表达式语言*Task* Service Task* User Task* Boon ess Rule Tadc* Manual Tadc* Send Task* Receive Tadc* Reusable Sub-Process (Call Activity)可复用的子流程* Embedded Sub-Process 嵌入的子流程* Ad-Hoc Sub-Procesi点对点的子流程* Data-Object关口*分支* Exclusive (Java, MVEL or XPath expression language)排斥* Inclusive (Java. MV

7、EL or XPath expression language)包含* Parallel 并行* Event-Based*合并* Exclusive 排斥* Parallel 并行* Lanes数据* Java type language* Process properties* Embedded Sub-Process properties* 活动 properties连接对彖* Sequence flow 时序流3. 2.人工任务服务WS-HT人工任务服务是BPM业务流程管理的譽决方案一个重要组成却分。M些任 务可以勺动执行而不痔要与人交互,但有些任务需要与人交互。jBPM5中的 acto

8、rs代表人的抽象,也就旻说不一走是人,可以是阿魁阿狗。jBPM5默认 提供了 一个与actors文互的实观,WS - HTO WS-HT也支特殂很置,升级, 分配规则等。3.3. 监视流程盂听容Process listeners可臨听流程引擎运行对环境发生的各科丰件,如 流程实例处动.结点实例克成等。这些传息可用来创建禺史目志进.行报裹挣 态分析或供BAM业务话动盅绘进行动杰分析。3.3. 1.基于WEB的流程管理控制台http:localhost:8080/jbpnvconsole用户名/密码:krisv/krisv通过此控制台可以管理流程实例。进入流程Overview可以启动流程,査看流程

9、, 停止流程.进入个人任务可以进行流程操作。进入报表可以齐看流程报表。7翻译 by amos_tl第二章安装多考Guvnor的使用:http:localho5t:8080/drook-gu/nor使用视癫: 只 uv nor-jbpm.swf若有安痕冋題,可这样子:Email: IRC: #jbpm at jBPM用户论坛http:/communityjbo$/en/jbpm?/iew=dkcussion5FAQ:1. 却本不能下4U且件?检查阿络,或直摟手动下我后放列jbpm-installer/lib文

10、件夹。2. 下栽的殂件不能聲压?乂件有问題,重新下戟。3. 请除安裝?ant clea n.demo4. 重新启动报异帝?手动人工服务结束进程,再至新启动。这長和本缺陷导玫的。5. 控制台更Guvroy按餡?检查$(jboss.home/$erver/default/logo 如不能稱决.发刊论坛。9翻译 by amos_tl第三章流程 ,PM Evauation JXz: 业务浇程旻一張浇程田裹,埸述一糸列执行步推的顺厚。它由多个结点 组成,结点之间互柯连棲。:结点代在总浇程的一个步棗,:爸头代表结点之间的连挂,它指走如何从一个结点流向另外一个结点。: BMPN2.0己经预皮义了一殂结点元素

11、。本幸节介绍如何定义和使用结点。1. 创建流程创建浇程有三科方式: Eclipse BPMN2.0图形编辑容插件 丈本芻辑季直接创建通过流程API流程丈件扩展名:bpmn bpmn2。-io -图形编辑乐插件需要打幵属性面扱配墨元素属性。XML形式:<?xml version=B 1 0" encoding'UTF-8"?><definitions id'Definltion" targetNamespace'http Z/www jboss org/drools11typeLanguage=Mhttp:/www java

12、 com/javaTypes"expressionLanguage="http /www mvel org/2.0"xmlns=Mhttp /www omg org/spec/BP14N/20100524/140DEL"Rule Taskxmlns xsi=Mhttp /www w3 org/2001/XlLSchema-instance"xsi schemaLocation=Hhttp:/www omg org/spec/BP14N/20100524/l/ODEL BPMN2xnilns g=Bhttp7/www jboss org/droo

13、ls/£ow/gpduxmlns bpmndi="http /www omg org/spec/BP14N/20100524/DI"xinlns dc=Bhttp /www /spec/DD/20100524/DCMxinlns di="http /www omg org/spec/DD/20100524/DI"xinlns tns="http /www jboss org/droolsM ><process processType=,Pnvate" isExecutable='true&q

14、uot; idsncom.sampleJieUo,1 name=Process'* ><! nodes><startEventid=ltJff name=,Starttf /><scriptTask id=”_2”><script>System.ouLprintln(HHello Worldff);</script></scriptTado<mdEv«nt id=M_3* name="Endn ><tcrinin ateEvoitDflfiiiition/></en

15、dEvent><! connections ><sequenceHowiourceRef=H targetRef=”_2” /><sequenceHow id=”_2»_3”rarceRrf_2” targetRef=”_3” /></process><bpmn &: BPMNDiagram ><bpmndi BP14NP1 ane bpmnElement="com sample hello11 ><bpmndi BPMNShape bpmnElement=,1 _ 1"

16、><dc Bounds x=T6” y=B 16° width='48B heighuVg” /></bpmndi BPMNShape<bpmndi BPMNSh ape bpmnEl ement=M _2" ><dc Bounds x="96" y=" 16" width="80" heighuVg" /></bpmndi BPMNShape><bpmn di BPMNSh ap e bpmnEl ement=M _3"

17、 ><dc Bounds x=B208M y=-16- width=B48- height=M48B />v/bpmndi BPMNShape><bpmndi BPIJNEdge bpmnElement="_ 1 -_2" ><di waypoint x="4(T y="40B />11翻译 by amos_tl<di waypoint x=T36"尸。' />v/bpmndi BPMNEdge><bpmndi.BPMNEdge bpmnEl cm ent=&quo

18、t; -_3" ><&:waypoint x=" 136" y="40" /><di waypoint x=-232M y="40" />v/bpmndi BP14NEdge></bpmndi BPMNP1 ane>v/bpmndi BPMNDiagram></definitions>API方无:为了屛菽内部API,不推荐使用。並 妥的流 程 己经良 义 A org.jbpm.workflow.core 和 org.jbpm.workflow.core

19、.node包中。你可以通过工厂 来创?L流程。示例源 码包的junit tests中。package org.jbpm process,import org jbpm JbpmTestCase.import org jbpm.ml efl ow. core RuleFlowProcessFactory,public class ProcessFactoryTest extends JbpmTestCase public void testProcessFactoryO RuleFl owPro cessFact oryfactory=RuleFlowProcessFactory createP

20、rocess(" org drools process"),factory/ headername("My process").packageNanie("org drools")/ nodesstartNode(l) name(MStart11) doneOactionNode(2) name(" Action").action("javaw, System out pnntln(M ActionH)/).doneOendNode nanie("End,1) done。/ connection

21、sconnection(l. 2)connection(2, 3),factory validateQ getProcessO.)灵多代码:http 2. 使用流程2. 1.创建知识库KnowledgeBuilder kbuilder = Kn owl e dg eB ui 1 derF a c t ory n e wKn owl e dg eB uil derO kbuilder add( ResourceFactory newClassPathResource("MyProcess bpmn2").ResourceType BPMN2).KnowledgeBase kb

22、ase = kbuilder newKnowledgeBaseQ;2. 2.创建会话启动流程流程启动勇要显式讷用startProcess方法。StatefulKnowledgeSession ksession =kbase newStatefulKnowledgeSessionO.ksession startProcess("com sample hello1');参數 com.sample.hello 代表流程 ID。startProcess(String processld. Map parameters)方法的 Map 参数可传入额外 的多数,这些多数是徒值对。些多敢将

23、披复制列流程实例,作为流程 的顶级顶级麦電是箱变電的作用或是顶级的。2.3.结点类型的细节解释ED:唯一NAME:显示名称VERSION:版本Package:命名空间Variables: 支量,用于传逅欽据Swimlanes: 泳道(专用通道几 指主执行人工任务的actorConnection Layout 麦接布扇Manual :人工Shortest path :承矩珞&-13-翻译 by amos_tlManhattan曼哈極15翻译 by amos_tl#翻译 by amos_tlBMPN支檜绘点真晏如下:#翻译 by amos_tl& ComponentssStart

24、Event® End Event® Rule Task Gateway diverge<?> Gateway converge0 Reusable Sub-Processi亘I Script TaskO Timer Event(*) Error Event(卑 Message Event® User Task于 i Embedded Sub-Process>3 Multiple InstancesD Service Tasks di LogEmail 开始审伴月维泉审伴,一个流程必须有一个幵始事件,一个或多个结束事 件。结東事件的Terminat

25、e 为T R U E ,邓么将结束整个流程,否则若 有多个结束芋件只会结束对应结束丰件的跆徑。如T2-E2. T1 臼(Terminate=false)S+| - T2 - E2 (Termi nate=fal se)Rule Task代裹需要执行一组规则集。规用定义A多个分需的丈件中,烙式 要隶为Drools rule formate规则可以成为标准規则流俎的一部分通过衣头祁使 用 ruleflow-group 属性。ru I efl ow-g roup的执行可认为是一个队列。新来的必须等前而的执行克才会 执行。DiveiingGateway 分支结点,一4.多Gateway不好初译,所以省

26、略。AND parallel与,并行, 两个那要满足(同步丿XOR or exclusive 界或排斥,只选择其中一个OR or inclusive或,包含,至少只要冇一个满足即可(不同步)Converging Gateway合并结点,多进一出。AND parallel与,并行, 丙个都要漓足(冃步丿-17 -翻译 by amos_tlXOR or exclusive 畀或.排斥.只选择其中一个Reusable Sub-Process 可复用子浇程Wait forcompletion 等待丸成On-entry and on-exit actio ns: 绑 定入 口 与出芫 action.Pa

27、rameter in/out mapping: in 示输入多数out表示输入多数和返sr 只有多 Wait for completion为true肘,out才可以使用。Script Task代在一个可拚行的仲本。支持Java , MVEL方言。艸本绑定 刊 Action.Action:绑丸的 Action.Timer Event定肘森爭件Timer delay 延迟肘间msError Event异帝事件FaultName异卷处理容名FaultVariable弄常吏電.Message Event谄息琴件,没有输入EventType盂听英件类型VariableName事件数据Scopeinter

28、nal浣程内部事件external外部事件.UserTask用户任务人工任务丿Actorld责任人,多个人用還号“,”分隔Groupld姐,多个俎用選_号“,”分隔Skippable表示这个任务是否可忽略,即不执行就结束。Swimlane 冰道On.entry /on-exit actions: 绑走入 口 . 出口 ActionParameter mapping 传 入参数Result mapping 返回结黑Content:任务数据Sub-Process 子流程.Multiple Instances多实例子流程,特辣的子流程,允许执行多次Service Task CWork Item no

29、dej代表一个抽象的任务。可通过.它护展任务。Additi on al parameters 犷展多数沱义Data支莹.顶级.子级,堆永树-19翻译 by amos_tl约東:包括代吗约束和规刚约東ActionsAction可以访河全局,流程支竟,知识库上下丈预丸义it,访问运行肘,启动流程.分发事件.插入数据。Events事件类型一事件盜听(谄息事件丿-事件处理(action;事件分发:内部事件流程管理外秫爭件actionTimers定时森更折渝程/ create the session and start the process "com sample process"

30、 KnowledgeBuilder kbuilder =StatefulKnowledgeSession ksession =.Processinstance processlnstaiice = ksession startProcessCcom sample process"), / add a new version of the process "com sample process?" kbuilder = KnowledgeBuilderFactory newKnowledgeBuiiderO,kbuilder add(. ResourceType B

31、PMN2), kbase.addKnowledgePackages(kbuilder getKnowledgePackagesO),/ migrate process instance to new versionMapvStnng. Long> mapping = new HashMap<Stnng, Long>0;/ top level node 2 is mapped to a new node with id 3mapping putf 2"» 3L),/ node 2, which is part of composite node 5, is

32、mapped to a new node with id 4mapping put(" 5 2Bt4L)>WorkflowProcessInstanceUpgrader upgradeProcessInstance( ksession, processinstance getldO, com cess?11, mapping).-21-翻译 by amos_tl第四章BPMN2.0因此本幸略过。fl前jBPM5没有屯全实现BPMN2.0规范。第五章API本章是代码,前面己经贴过,不再多说。讲聲了知识库、会话、浇程的关条及如何创建。翻译 by amos_tl第

33、六章人工任务-# -翻译 by amos_tl-# -翻译 by amos_tl人工任务規范http /download boulder ibm com/ibmdl/pub/soflware/dw/specs/wsbpel4Deople/WS-HumanTask vl pdfjBPM5使用UserTask结点表示人工任务C需要与actor 互的任务丿。 UserTask任务结点支特定义任务类型、actors和任务关联的数据。通过.Task Service 可管理 UserTasko为了使用人工任务,你必须定义UserTask结点。一个UserTask表示一个需 要actor执行的勺动化任务。人

34、工任务其实可以简单认为長任何类型的外部服务, 外那服务需要菠调用,可看成特療类型的work item实观。人工任务惟一的特色赴支持冰道来简化给用户分配任务。UserTask结点厲性:"d:结点唯一标识A Name: 结点珞称* TaskName:任务名称* Priority:优丸级(整敎J* Comment:任务注释* Actorld: actor,多个使用退号",”分隔* Skippable:任务可跳过(不执行就结束丿刊Con tent:任务关联的数据* Swimlane: 冰道,可以荀化分配多个人工任务给同一个actorWait for completion:走召等特人

35、工任务执行屯成,若为F alse,则创走屯人工任务后继续流程。On-e ntry and o n-exit acti ons:绑定入 口、出芫爭件处.理容-actio n* Parameter mapping:多数* Result mapping:结爭* Timers:丸对弄Parentld: 父人工服务ID1.泳道说朗:M个译決对于丸衣来讲.不朗自短字?但禺词丽己,他倉前專谆导,畏艮谆寻此理解了.使用泳道甫必须中馳置泳道的筠金。多个人工任务使用同一泳道,第一个人工任务执行肘,将会指定一个actorld.后面的人工任务即使显式指定actorld.,也不会起作用,而是使用第一个人工任 务的act

36、orld®壬然我们使用泳道就没必要再赭沱actorid,第一个除外。公司才 2 不部门,HR部乌 IT 部)2>b*4HR. IT, St"丸头中包舍4 *人工修參,肯两小人工任鲁需要乌HR*越現犬JL冷為个人工任 务仿要乌IT部血現犬工."观们能丸11曲下人兀任參的actorld时,*要分紀两次 “ 两个屯爰如此.观盛极腐惜况发直了,HTttttiim,观们曼不曼務*修歐fitflt-25 -翻译 by amos_tl丈.义下所宥人工服务的actorld?而通it彼用乐道,只需矣修敌第一个耒第三金的actorld泳道与actorld是一对多的关糸,也就是说

37、,一个人工任务可指;t给多个actor 来处现。冰道的实质是什么,实质就是杞人工任务辻行分类,并绑定actor列表。2. 人工任务管理组件人工任务与其它外部服务类似,可作work itme的犷展派实观和诃用。流程仅 包含人工任务执行所必要的抽象埸述。work item handler旻这个抽象扌缶述的标 准实现。用户 使用我们可拔插的work item handler方式克成底星的实观。我約也提供了一个 WS-HumanTask现范的管理俎件。通过它来管理任务的生命 列期(创建,获取,屯成,任务状态特久化丿。同肘也支持国际化、5、各种 分配类型,代理和生死线。人工任务生命周期27ina cfi

38、 voQ in crj (fir M njyz%) M 8< "nd 护 HT 詞 RGbUr pr4 "71 MwMpic poJc<tKl witter | exaxvepau <ocro corCfeM oc<in«q *ak rath worMorgg|l non: Indian petfCmed) LA 心 nMize/、4Mperc/ReottyRe砂1 丿、WflT | 02*R*s«<ved(>UaUEfHTC才A:inProiisinProgrws_9J(Cgpdrfi 们 FEWJj Sndrutf

39、><FttiOd< 丿/)站 WoR 3CpCd1)n XClosed(Ens J ExitedOI»oI»iq j宙一个流程实剑的人工任务结点枚牡发.人工任务实例柠枚创 戌。占创 戌克成后. 人工任务进入Created状杰。壬人工任务的Wait for completion属性为False时,流程会立即继续执行,否 则要等待任务克成或终止。赴入Created状态.任务将显示所有负责执行的actorso等持他们来获取任务。一旦有一个actor获取任务任务进入Reserved状杰。用户决定开始执行任务.此时任务进.入InProgress状恚.任务开始执行,执

40、行屯成后,用户必须老成任-29-翻译 by amos_tl 务。此肘用户进入Completed状杰。用户也可以决走任务己经失败,此肘任务 进入Failed状态。上面介绍的正常的生令周期,其它包括:Delegating /forwarding 任务.分灵任务给另外一个actor来处理Revoking 回滚任务Temporarly suspending and resuming 临肘挂起或继 续任务Stopping a task in progress停止正在执行的任夯Skipping 跳过.C不执行丿3. 链接人工任务管理组件和引擎4. 1.注册 work i tem hand I erwork

41、 i tem hand I er的功能是初译抽条的work item(如人工任务丿 为规范的调用。我们 己经 实观了 个 work item handler A & jbpm-human-task 中:org.jbp m. process.workite m wsht.WSHuma nTaskHa ndler注册代码示例:StatefulKnowledgeSession ksession = :ksessio n.getWorkltemMa nagerO.registerXX/orkltemHa ndlerCHuma nTask", new WSHumanTaskHandle

42、rQ);-#-若需要持久化会话内农,应谅使用cess.workitem.wsht.CommandBasedWSHumanTaskHandler 它们都默认使用Mina来提供C/S通佶传输。奂快速的实现HornetQ也是可行的。人工任务家户端使用如下的生命周期管理方法:public void start( long taskld. String userid, TaskOperationResponseHa ndler response Ha ndler) public void stop( long taskld. String

43、userid, TaskOperationResponseHandler responseHandler) public void release( long taskld. String userid、TaskOperationResponseHandler responseHandler) public void suspend( long taskld String userid. TaskOperationResponseHandler responseHandler) public void resume( long taskld. String userid TaskOperati

44、onResponseHandler responseHandler) public void skip( long taskld. String userid, TaskOperationResponseHandler responseHandler) public void deiegate( long taskld. String userid. String targetUserldTaskOperationResponseHandler responseHandler)public void complete( long taskld. String userid, ContentDa

45、ta outputData. TaskOperationResponseHandler responseHandler)4. 启动人工任务管理组件it提:数据裹users , groups中数据己经配置好。你可能通过如下代码来添加用户和 殂:taskSessio n.8ddU5er(user)taskSession.addGroup(group)确侏数据库相关裹中莹少有一个Administrator用户和administrator角色。我们提供的evaluation评审示例中会fl动加栽两个用户和组配置文件:jbpm-i nstallrtask-£rvicQ©ource5o

46、rgjbpmLoadUsers.mvel-31-翻译 by amos_tlLoadGroups.mvel启动任务管理殂件示例:EntityManagerFactory emf = Persistence createEntityManagerFactoryf1 org.jbpm task11).TaskServicetaskService=newTaskS ervi c e (emf,SystemEventListenerFactory getSystemEventListenerO).MinaTaskServer server = new 14inaTaskServer( taskServi

47、ce );Thread thread = new Thread( server ),thread, start。,任务管理组件使用J PA来存緖任务数据.因此常要忆墨persistence.xml下面旻任务管现组件使用Hibernate和 H2救据库存的示例:<?xml version="l 0" encoding=MUTF-8B standalone="yesB?>persistenceversion=" 1 0Bxsi schemaLocation="http:/java sun com/xml/ns/persistenceht

48、tp:/java sun com/xml/ns/pcrsistence/pcrsistence_l_0 xsdhttpiava sun com/xml/ns/persistenc“ormhttp:/java sun com/xml/ns/persistence/orm_l_0 xsd"xmlns orm1 http./xmlns xsi="http /www.w3 org/200 l/XMLSchema-instance" xmlns="http:/java sun com/xml/ns/persistenceM><persistence-u

49、nit nanie=" org drools task" ><pr ovider>org.hibernate. ejb.HibematePersistence</provider><class>org jbpm task Attachment</class><class>org jbpm上ask Contentv/class><class>org jbpm task BooleanExpression</class><class>org jbpm.task Comme

50、nt</class><class>org jbpm task Deadline</class><class>org jbpm task Comment</class><class>org jbpm task Deadline</class><class>org jbpm.task Delegation</class><class>org jbpm task Escalation</class><class>org jbpm task Group<

51、/class><class>org jbpm task 118NText</class><class>org jbpm task Notification</class><class>org jbpm task EmailNotification</class><class>org jbp nrt ask EmailNotificationHeader</class><class>org jbpm task PeopleAssignments</class><cl

52、ass>org jbpm.taskReassignment</class><class>org jbpm task Status</class><class>org jbpm task Task</class><class>org jbpm task TaskData</class><class>org jbpm task SubTasksStrategy</class><class>org jbpm task OnP ar ent Abort All SubTasks

53、EndStrat egy </cl ass ><class>org jbpm task OnAllSubTasksEndParentEndStrategy</class> <class>org jbpm task User</class><properties><property n am e=" hib ern ate di al e ct" value=M org hibernate dialect H2DialectM/> <property name=" hibern

54、ate connection driverclass" value=Borg h2 Dnver"/> <property nanie="hibernate.connection url" value="jdbc:h2 menrmydb" /> <property name="hibernate.connection usernaineM value="sa7> <property name="hibernate.connection password" val

55、ue="sasa7> <property name="hibernate connection autocommit11 value="falseB /> <property name-1 hibernate.max_fetch_depth11 value=-3"/><property name="hibernate.hbm2ddl auto- value=" create" /> <property name="hibernate show_sql" va

56、lue="true" l></properties></persistence-umt></persistence>H2叙握岸卖际上旻h$qldb2O+胶扎你也可以通过jbpm-human-task 源玛包 src/test/java目录下的org.jbpm.task.RunTaskService类 来启动任务服务帝,它会勺 动加栽LoadUsers.mvel 和 LoadGroups.mvel 配蛋文件。5. 与任务管理组件交互最终用户不可能直接通过底层AP来管理任务,因此开发者需要使用API来实现与任务笞现姐件凭互.-33-翻译

57、 by amos_tl示例:TaskClient client = new TaskClient(new 14inaTaskClientConnector(Hclient I",new MinaTaskClientHandler(SystemEventListenerFactory getSystemEventListenerO);client connect(M 127.0.0 l*t 9123);/ adding a tadcBlockingAddTaskResponseHandleraddTaskResponseHandler=newBlockingAddTaskRespons

58、eHandlerO.Task task =;client addTask( task, null. addTaskResponseHandler )tlong taskld = addTaskResponseHandler getTaskIdO,/ getting tasks for user >fbobbaHBlockingTaskSummaryResponseHandler taskSumm ary Re sp on s eHan dl er =new B1 o ckingTaskSumm ary Re sp on s eHan dl er 0,client getTasksAssignedAsPotentialOwnerCbobba11, ''en-UK", taskSummaryResponseHandler);List<TaskSummary> tasks = taskSummaryResponseHan

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论