资源描述:
《【精品】jbpm5持久化及流转流程剖析》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、Jbpm5持久化及流转流程剖析1Jbpm5持久化结构图Jbpm5实例流程图下面的文档讲解了基丁•该流程的步骤流程2第一步启动任务流程吋序图:第一步人工任务执行时序图TaskCIient(TaskCIianlHandler〉1•启动TaskServer.持久化OrganizationA顶层包::外部系统2.启动流出2.1耕析bpmn2文件;2.2开启事务2.3ksession开始执j亍任务2.3・1执行StartNode,执^fbeforeNode拦截器尊:_2.3.2执行liumanTaskNode*执行beforeNode拦18器等)!!3.初始化handler3.1初始化Cli
2、ent3.2建立Minn通佶连絃3.3注册妙件Complete3.4注册班件Fiii13・5注册爭件Skip4.调用exculdiorkllea方法匚二〉4.1初始化Task任务和息fTT调用Client添加任务信总[!
3、4・3AddTaskRequest4.5AddTaskResponse;4・6返回4.7返回i5关闭事务;II6・1UltflhimanTaskAfterNode拦彊器6.2执fiStartAfterNode拦截25I6.3持久化processInfo,work11i6.3ksession.dispose02.1启动TaskServer使用线程丿[动TaskSer
4、ver,初始化持久化OrganizationEntity,将流程中需要使用到的groupld,actorld.全部初始化到表中。2.2启动流程1)根据路径解析*.bpmn2或*.bpmn文件,放入到内存中。在该类注册了相关的对象org.jbpm.bpmn2.xml.BPMNSemanticModule・addHandler(nprcpercyurnevzPropertyHandler());addHandler(nlanenznew匚aneHandler());addHandler(”弓匸己二匸三匸呂口匸",newStartEventHandler());addHandler(匸"
5、卩nevzEndEven^Handler());addHandler(r,exclJ3LveGatewaynznewExcl^3LveGa*ewayHaEdler());addHandler(n2.ncleJSLveGatewaynfnewZncl^3LveGa*ewayHaEdler());addHandler(nparallelGa^ewayr,znewParallelGatewayHandler());addHandler("^刁巴口匚2ei3£dG己匸e讨己了”营nevzE^zencSasedGacewayHandler());addHandler(ncciriplexGa
6、ce/7aynnewCoir.plexGacewayHandler());addHandler(nscrLp"CTasknznewScrip^TaskHandler());addHandler(r,tasknznewTaskHandler());addHandler(n-jserTasknfnewUserTaskHandlex());addHandler(nrsanj.aLZasknznewMan'jalTa^kHandler());addHandler(r,ser*7LceTa3knfnewServiceIa3kHandler());addHandler(n3endTa3knrn
7、ewSendTa3kHandLer());addHandler(nreoe2_veTa3knfnewRecei*7eTa3kHa^dler());addHa^dler(,lbJ3Lr.e33R,j.LeTa3knznew3^3Lr.e33R-j±eTa3kHandLer());addHandler(ncaLLAct2_vitynznewCalLActivityHandLer());addHandler(n3,.ibProce33nfnewS^bProcessHandler());addHandler(11adHocS^bFrcce33n,newAdHoc5^bProce33^and
8、ler());addHandler("二二匸呂二mwci二&匸€:Ce匸三寸e:n匸”'newZnterir.ediateCatchEventHandLer());addHandler("二二匸呂二mwci二&匸巳二上二c专三寸e:n匸”'newZnterir.ediateTr:rcwEventHanciLer());addHandler(ribc^ndaryEventf,AnewBc^ndaryEventHandler());addHandler(r,d&taOb;