Activiti_安装以及demo_第1页
Activiti_安装以及demo_第2页
免费预览已结束,剩余22页可下载查看

下载本文档

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

文档简介

1、Activiti_安装以及demoActiviti学习一.搭建一个Activiti开发环境1 在eclipse中Z1 |LapseIA話 t: j2出p tg.aali Sg.4MT)l ftywwir 1*1IFetTarleessinsK7Ii|B Mil If iklQkapd&rtar Eukftem nlKQ lUpfi. lIiuChtck fwEdise点击“Add”Activiti_安装以及demor tne丄ocation or a sie.OLQOEa zi ta|Add.Find more software by vorkine: vith lha皿订1蚀空乞Si

2、tespreferences在Name选项中填写一个名称Location: /designer/update/点击“ok “再点击“下一步”Activiti_安装以及demo选择红色点击“Finish”Activiti_安装以及demo安装activiti完成。创建Activiti会签二 仓U建个Activiti project1.n L UJU1X1. %LU LUXn %L V J g3 . C1 X V J e U U 1 KflllU%! . nuxi II A1LU.UW八卍丄卩Alt+Shift+HCloseCtrH-WClose AllCtrl

3、+Shift+WM)SaveCtrl+S,斗Save As.勺 dSave AllCtrl+SHt+SRevert,Move.Rename.迂RefreshConvert Line DLimiters To卜闫Frirkt.Ctrl+PSwitch fforkspaceRestartOpen 也Import 3Java Pr oject;Project.出PackageG ClassIni erface& EnujnAroxotat ionSource FolderQ1)Java Working SetFol der匱Untitled Text File官JUn.it Test Cas

4、evTaskHJExample.0=;Other.CtrlfN:;Activiti_安装以及demoEdit Source Refactor Navi gate Search Project Tomcat Run Window Helpsvccccc Tsct-csccKeClassAInterfaceJava ProjectJava Project from Existing Ant BuildfileTlug-in Praj ect+ 已 General1审dOCTHRPRI+Android+ & Connecti on Profiles & CVS & Eclip

5、se Modeling Framework G EJB舀乡 EJI FrcjectLei Message-Driven Bean (EJB 3. x)VFileAlt+Shi ft+W3 Java Project=:Project.CloseCtrl+WClose AllCtrl+Shift+W関SaveCtrl+S匕Save虫s.喘Save AllCtrl+ShifHSRevertMoye.Rexiame.进RefreshCouvert Line Delimiters To芭J Print.Ctrl+PSwitch WorkspaceRes tart出PackageG ClassG Inte

6、rfaceG Enum( Annotation25Source FolderJJava Working SetFolder仃File冒Unti tied Text File减JUni t Test Case、Taskraselcrlis5) ) askitasraselcFliiIm-Dort . Other.Ctrl+NtasU)Export.Proper timsAlt+Entertasks=service creat-eTasJOpen File.Example.3) )Activiti_安装以及demoFinishCancelActiviti_安装以及demoSelect a wiza

7、rdCreate a new Activiti Project with a tasic folder wtructure and a Maven POM file.Vizards:type filter textG ClassG Interface洁Frcject瘡Java Project from Existing Ant Buildfile!住Plug-in Project+ 3 General点击“下一步”O Hew匚回冈4Hi.-&已凸凸a.,-&.&s-Q-Activi tiActiviti DiagramActiviti ProjectAndroi dCo

8、nnection. ProfilesCVSe Modeling FrameworkEJBTini shCaxicelActiviti_安装以及demo填写一个项目名称点击完成2.选择刚建的项目Activiti_安装以及demoGo IntoOpen in New WindowOp en Type Hi erarchyF4Show InAlt+Shi ft+W謹CopyCtrl+IasertCopx QuiLi fie & Nsmw歯PasteShi ft+Insert塚DeleteDelete=:Project.Ex an)pl e .Ctrl+AlHShi ft+DownFolder

9、QFileJk Remove from Context谱Other.Ctrl+IT9.3t(Task task2 : tasks)service complete(tasSys ten out .pirintln.(匕So-ur ceAlt+Shift+SRe factorAlt+Shift+TImport.Export.RefreshF5Close Proj ectkssign Working SetsRun ksDelug AsProfile AsValidate3在工E中运行m2MavenBuild PathMB5ks = service.er亡ax亡T&processln.st

10、an.cetaskAssign.ee (rrxr (Task task2 ; tasks)servicecomplete(tas System out. pr in.t ln.( tBks = service .cirmaXETsiprocessInstan.ce.taskAssigaee(hr (Ta3k ta3k2 : tasks) service complete(tas System outprintln(tIBac,rTeamCompare WithRestcbre froni Local Mi st orj/PropertiesAlt+Enter卜-TCreate deployme

11、nt arti factsImport BPMN 2.0 fileProblemsAnt O Error LoActiviti_安装以及demoActiviti_安装以及demoG? Class& Interface丿Java. ProjectJ=ava. Froject frm Eistiag Axit BuildEile Tlugrin Project+ D General;二& Ati vitij |QActivity Project+ Android+ 凸Connection Profiles+ &CVS -L_: Eclipse Modeling framew

12、ork ! - EJBO Ne匚回冈Select a wizard=Create殳new kctiviti BPM1I 2.0 Diagr.1A一iwFinishCancelXctivi ti DiagramW i zartype filter t&xtActiviti_安装以及demo选择“下一步”Activiti_安装以及demoAdvanced Fini shCaitcel点击“Finish”打开diagrams下的MyProcessl.activiti在里面画流程图New Activiti DiagramCreate a new Activi ti BPNN 2.0 Diagr

13、am.Enter or select the parent folder:File Ranje: MyProcessl. activitiActiviti_安装以及demoi卩切记要填写Main config是节点的用 #键表示一个任务人如果是线节点表判断的时候带参数要$键表示要传入的指如果任务节点中没写“任务人”则会报错,致使不会生成XML描述文件。厂、拟稿X._/、tn、行政部经理审核JIT)会签打回Activiti_安装以及demo activiti : taskListener event=ncompletefrclass= oo2n listener iyyd,st:3 assign

14、eeList; $result != 2 froperties怎*_ frobleiTis如Ant V Error Log Console SearchJava代码:package oom. listErm;import j ava util ArrayList;import j ava util List;import org activiti engine dmlmgatE DelegateTask;Listener inplen entail onlypeEventFieLisSev乩tjcon.lis tener. Nyli st enerclassTypecreat econ.lis

15、tener.Nyli st enerCISSTTPGccaplete刘7T7.1SequeritialOles (*) )KoPropertiesProbing Ant Q Error Log SConsols蛀“Listeners:Activiti_安装 以及demoimport org activiti engine delegate TaskListener;public class Mylistener implements TaskListener private static int a=0;public void notify(DelegateTask delegateTask)

16、 /获取事件名称String eventName = delegateTask getEventName();/获取任务idString tasked = delegateTask/获取节点键String taskKmy = delegateTask gmtTaskDmfinitionKmy();/userTask3/获取流程定义编号String prooDmf工d = delegateTask getProcessDefinitionld();/获取流程实例编号String proolnstld = delegateTask getProcessInstanceld();/获取节点名称Lis

17、t list =(ArrayListvStiring)dmlmgatETask gEtVariablm (assignEmList;);if (create equals(eventName)/初始化会签人员信息/初始化业务规则 else if (ncompleten equals (mgntName) )/执行业务规则if (delegateTask getAssignee () toString () trim () equals (zhangsan1 )delegateTask setvariable (result , 1);elsedelegateTask setvariable (

18、resultH, 2);if(delegateTask getAssignee() toString() trim() equals(nlisi) delegateTask setvariable (result*1, 1);elsedelegateTask setvariable (result , 2)Activiti_安装以及demoif(delegateTask gmtAssignmm() toString() trim() equals(Hlibon) delegateTask setvariable (result , 1);else delegateTask setvariabl

19、e (result , 2);if(delegateTask getAssignee() toString() trim() equals(nxiaoH) delegateTask setvariable (result , 1);else delegateTask setvariable (result , 2);if(delegateTask gotAssignee() toString() trim() equals(haha) delegateTask setvariable (resultn, 1);else delegateTask setvariable(nresuIt, 2);

20、if(delegateTask gotAssignee() toString() trim() equals(nyunsiH) delegateTask setvariable (resultn, 1);else delegateTask setvariable (result , 2);Java测试:package com.listener;import java.util. ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;Activiti_安装以及demoimport org.act

21、iviti.engine.ProcessEngine;import org.activiti.engine.ProcessEngineConfiguration;import org.activiti.engine.RepositoryService;import org.activiti.engine.RuntimeService;import org.activiti.engine.TaskService;import org.activiti.engine.repository.Deployment;import org.activiti.engine.repository.Proces

22、sDefinition;import org.activiti.engine.i-untime.Processinstance;import org.activiti.engine.task.Task;public class Test org.junit.Testpublic void bbTest() /创建一个流程数据源的配置ProcessEngine processEngine = ProcessEngineConfiguration/获取数据源连接的服务Repositoryservice repositoryservice = processEngine.getRepositoryS

23、ervice();/读取配置流程配置文件对象Deployment deployment = repositoryService.createDeployment()Activiti_安装以及demo.addClasspathResource(Hdiagrams/MyProcess.bpmn20.xmlM).deploy()/发布到数据库中ProcessDefinition pdf = repositoryservice.createProcessDefinitionQuery().deploymentId(deployment.getId().singleResult();/开启一个服务Run

24、timeServiceruntimeService=processEngine.getRuntimeService();/*定义流程中的参数*/建立一个集合存放流程中的参数Map model = new HashMap();/开启流程的人model.put(nusern,”胖子“);行政审核人modeLputCmanager,肖正伟”);/审核结果model.put(”backtrack”, yes);Activiti_安装以及demo会签(将所有参与会签的人放入list集合中)List list = new ArrayList();list.add(zhangsan);list.add(nl

25、isiu);list.add(nlibon);list.add(xiao);list.add(haha);list.add(yunsi);/把list结合放入集合中model.put(assigneeListn, list);/开启一个流程Processinstance pi = runtimeService.startProcessInstanceById(pdf.getld(), model);/节点服务TaskService service = processEngine.getTaskService();/获取节点*拟稿*/List tasks = service.createTask

26、Quer()Activiti_安装以及cessInstanceId(pi.getProcessInstanceId().taskAssignee(胖子u).list();for (Task task : tasks) plete(task.getld();System.out.println(task.getName();1行政审核节点tasks = service.createTaskQuery().processInstanceId(pi.getProcessInstanceId().taskAssignee(肖正伟n).list();for (Task task : ta

27、sks) plete(task.getld();System.out.println(“行政部经理审核”);* */tasks = service.createTaskQuery().processInstanceId(pi.getProcessInstanceId()Activiti_安装以及demo.taskAssignee(,zhangsan1,).list();for (Task task2 : tasks) plete(task2.getld();System.out.println(task2.getAssignee();* */tasks = service.createTaskQuery().processInstanceId(pi.getProcessIns

温馨提示

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

最新文档

评论

0/150

提交评论