欢迎来到天天文库
浏览记录
ID:35302961
大小:37.08 KB
页数:4页
时间:2019-03-23
《工作流activiti的学习总结(五)activiti的api和虚拟工作流测试》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、工作流Activiti的学习总结(五)activiti的API和虚拟工作流测试activiti的API在activiti引擎中,你可以通过多种方式获取ProcessEngine对象,从ProcessEngine中获取各种服务对象,从而访问工作流/BPM方法。ProcessEngine和她的各种服务均为线程安全性服务。在整个项目中每一种服务仅需要保持一个引用。ProcessEngineprocessEngine=ProcessEngines.getDefaultProcessEngine();Runtime
2、ServiceruntimeService=processEngine.getRuntimeService();RepositoryServicerepositoryService=processEngine.getRepositoryService();TaskServicetaskService=processEngine.getTaskService();ManagementServicemanagementService=processEngine.getManagementService();I
3、dentityServiceidentityService=processEngine.getIdentityService();HistoryServicehistoryService=processEngine.getHistoryService();FormServiceformService=processEngine.getFormService();针对ProcessEngine的说明:ProcessEngine.getDefaultProcessEngine()在第一个被调用的时候初始化并创
4、建一个流程引擎,在以后的调用中返回同一个引用的流程引擎对象。针对流程引擎中初始化方法为ProcessEngine.init().销毁方法的方法为ProcessEngine.destroy().ProcessEngineConfiguration.createProcessEngineConfigurationFromInputStream(inputStream).buildProcessEngine()创建工作流引擎,ProcessEngine见扫描所有的activiti.cfg.xml文件和activ
5、iti-context.xml文件。异常策略:在activiti中org.activiti.engine.ActivitiException类为所有异常的基类。ActivitiException为非检查性异常。例如:***Calledwhenthetaskissuccessfullyexecuted.*@paramtaskIdtheidofthetasktocomplete,cannotbenull.*@throwsActivitiExceptionwhennotaskexistswiththegiven
6、id.*/voidcomplete(StringtaskId);其他异常类如下:ActivitiWrongDbException:ThrownwhentheActivitienginediscoversamismatchbetweenthedatabaseschemaversionandtheengineversion(schema版本和引擎版本不匹配报的错误).ActivitiOptimisticLockingException:Thrownwhenanoptimisticlockingoccursin
7、thedatastorecausedbyconcurrentaccessofthesamedataentry.ActivitiClassLoadingException:Thrownwhenanclassrequestedtoloadwasnotfoundorwhenerroroccurredwhileloadingit(eg.JavaDelegates,TaskListeners,...).Activiti的测试:activiti的测试支持Junit3和Junit4的单元测试。在junit3的单元测试中
8、,org.activit.engine.test.ActivitiTestCase必须被继承。在setup()方法中,流程引擎要初始化加载classpath下默认的activi.cfg.xml资源文件。针对不同的配置文件可能需要重新getConfigurationResource()方法。在ActivitiTestCase中可以使用org.activiti.engine.test.Deployment注解方法。publiccl
此文档下载收益归作者所有