- 浏览: 576037 次
- 性别:
- 来自: 厦门
文章分类
- 全部博客 (669)
- oracle (36)
- java (98)
- spring (48)
- UML (2)
- hibernate (10)
- tomcat (7)
- 高性能 (11)
- mysql (25)
- sql (19)
- web (42)
- 数据库设计 (4)
- Nio (6)
- Netty (8)
- Excel (3)
- File (4)
- AOP (1)
- Jetty (1)
- Log4J (4)
- 链表 (1)
- Spring Junit4 (3)
- Autowired Resource (0)
- Jackson (1)
- Javascript (58)
- Spring Cache (2)
- Spring - CXF (2)
- Spring Inject (2)
- 汉字拼音 (3)
- 代理模式 (3)
- Spring事务 (4)
- ActiveMQ (6)
- XML (3)
- Cglib (2)
- Activiti (15)
- 附件问题 (1)
- javaMail (1)
- Thread (19)
- 算法 (6)
- 正则表达式 (3)
- 国际化 (2)
- Json (3)
- EJB (3)
- Struts2 (1)
- Maven (7)
- Mybatis (7)
- Redis (8)
- DWR (1)
- Lucene (2)
- Linux (73)
- 杂谈 (2)
- CSS (13)
- Linux服务篇 (3)
- Kettle (9)
- android (81)
- protocol (2)
- EasyUI (6)
- nginx (2)
- zookeeper (6)
- Hadoop (41)
- cache (7)
- shiro (3)
- HBase (12)
- Hive (8)
- Spark (15)
- Scala (16)
- YARN (3)
- Kafka (5)
- Sqoop (2)
- Pig (3)
- Vue (6)
- sprint boot (19)
- dubbo (2)
- mongodb (2)
最新评论
通过任务id获得formkey
用处是用户点击办理任务时可以跳出业务信息的页面,而页面的位置则存放在对应节点的form key中。
当前任务是同时存在 ACT_RU_TASK 和 ACT_HI_TASKINST
ProcessDefinitionEntity -->TaskDefinition -->DefaultFormHandler -->Expression.getExpressionText()
用处是用户点击办理任务时可以跳出业务信息的页面,而页面的位置则存放在对应节点的form key中。
HistoricTaskInstance -->ProcessDefinitionEntity -->TaskDefinition-->DefaultFormHandler -->Expression -->Expression.getExpressionText() ;
当前任务是同时存在 ACT_RU_TASK 和 ACT_HI_TASKINST
/** * * @CreateUser:xxxx * @ReturnType:String * @param taskId * @param businessEventId * @return * @CreateDate:2014-6-10下午7:49:32 * @UseFor :根据任务id获得form key值 */ public String getBusinessInfoUrl(String taskId, String businessEventId) { String url = ""; String businessKey = ""; // 获得任务对象 HistoricTaskInstance taskInstance = (HistoricTaskInstance) historyService .createHistoricTaskInstanceQuery().taskId(taskId) .singleResult(); // 判断当前任务Task是否为空 if (taskInstance != null) { url = getTaskFormData(taskId); if (url == null || "".equals(url)) { String processDefinitionId = taskInstance.getProcessDefinitionId(); url = getProcessDefinitionFormData(processDefinitionId); } // 业务id 即eventid businessKey = ((HistoricProcessInstance) historyService .createHistoricProcessInstanceQuery() .processInstanceId(task.getProcessInstanceId()) .singleResult()).getBusinessKey(); } else { HistoricProcessInstance historicProcessInstance = (HistoricProcessInstance) historyService .createHistoricProcessInstanceQuery() .processInstanceBusinessKey(businessEventId).singleResult(); if (historicProcessInstance != null) { url = getProcessDefinitionFormData(historicProcessInstance .getProcessDefinitionId()); businessKey = businessEventId; } } // 拼接URL 把eventid接到url上面 url的格式是 xx.htm?eventid= return (new StringBuilder(String.valueOf(url))).append(businessKey) .toString(); } /** * * @CreateUser:xxxx * @ReturnType:String * @param taskId * @return * @CreateDate:2014-6-10下午5:21:27 * @UseFor :根据任务iD获得form Key 值 */ private String getTaskFormData(String taskId) { //表单key值 String formkey = ""; //获取需查询的任务实例 HistoricTaskInstance task = (HistoricTaskInstance) historyService .createHistoricTaskInstanceQuery().taskId(taskId) .singleResult(); //获取流程定义对象 ProcessDefinitionEntity processDefinition = getProcessDefinitionEntityByProcessDefinitionId(task .getProcessDefinitionId()); TaskDefinition taskDefinition = (TaskDefinition) processDefinition .getTaskDefinitions().get(task.getTaskDefinitionKey()); DefaultFormHandler defaultFormHandler = (DefaultFormHandler) taskDefinition .getTaskFormHandler(); Expression expression = defaultFormHandler.getFormKey(); if (expression != null) formkey = expression.getExpressionText(); return formkey; } /** * * @CreateUser:xxxx * @ReturnType:ProcessDefinitionEntity * @param processDefinitionId * @return * @CreateDate:2014-12-10下午7:39:01 * @UseFor :获得 ProcessDefinitionEntity */ private ProcessDefinitionEntity getProcessDefinitionEntityByProcessDefinitionId( String processDefinitionId) { ProcessDefinitionEntity processDefinitionEntity = (ProcessDefinitionEntity) ((RepositoryServiceImpl) repositoryService) .getDeployedProcessDefinition(processDefinitionId); return processDefinitionEntity; } /** * * @CreateUser:xxxx * @ReturnType:String * @param processDefinitionId * @return * @CreateDate:2014-12-10下午7:38:46 * @UseFor :获得第一个节点的Form key */ private String getProcessDefinitionFormData(String processDefinitionId) { StartFormData startFormData = formService .getStartFormData(processDefinitionId); return startFormData.getFormKey(); }
发表评论
文章已被作者锁定,不允许评论。
-
Activiti 学习总结内容
2016-11-04 14:50 1514Activiti总结内容 常用方法汇总 sequenceFl ... -
Activiti自我总结
2014-12-26 20:55 1280Spring代码 <?xml version=&qu ... -
Activiti根据Flowname进行转向
2014-06-29 18:13 702转向问题需要注意的是每次转向到其他节点时要把其他Transit ... -
Activiti小知识总结
2014-06-29 11:00 5801.ACT_HI_ACTINS表中Assignee字段没有值的 ... -
Activiti获取待办任务信息
2014-06-27 10:00 5166根据userid获得TaskQuery然后再获得Histori ... -
Activiti获取任务候选人
2014-06-27 09:33 2111IdentityLink是任务候选人的对象。来自于taskSe ... -
Activiti获得下一个节点
2014-06-26 14:37 1458用PvmTransition表示箭头的类。而这些类是从 Lis ... -
Activiti获取流程中的审批意见
2014-06-26 14:18 2351执行流程的过程中所有的变量信息都保存在ACT_HI_VARIN ... -
Activiti获取某个流程实例已经审批的节点记录
2014-06-25 16:15 2522已知businessid即eventid获得对应的审批记录 ... -
Activiti中流程对象之间的关系
2014-06-25 10:36 714在开始之前先看看下图,对整个对象结构有个了解,再结合下面的详细 ... -
Activiti学习-2
2014-06-08 17:12 8585.12乱码问题解决: <!-- Activiti ... -
activiti学习之task与execution的关系
2014-06-08 16:54 1375一.含义 task 即待办任务 execution 即流程 ... -
Activiti学习总结
2014-06-03 11:50 18951.获得流程图乱码问题 ... -
Activiti环境安装及项目下载基础学习
2014-06-01 23:10 574Activiti资料 官网:http://www.activ ...
相关推荐
Activiti(Flowable) 流程实例克隆解决方案1
主要介绍了activiti获取流程图的方法,需要的朋友可以参考下
这个是Activiti开发的请假流程实例,可以作为用Activiti开发工作流的参考;项目采用spring+hibernate+strus2+activity开发,可以运行;数据库采用oracle,其中 QingJia 和 QingJiaHis 是自己的业务表,分别表示 请假...
activiti流程图查看demo
忙活了一个星期左右,查找各种资料,终于将Activiti的流程设计器分离出来,与SpringMVC,spring整合了起来,先把工程分享出来,等有时间了在慢慢讲解具体的整合步骤。工程下载之后直接可以运行,只需要改一下数据库...
Activiti流程跟踪监控图路径线和节点高亮显示,本实例提供了两种方式,都可以生成png图片。
NULL 博文链接:https://profound-accumulation.iteye.com/blog/2244881
主要介绍了Activiti流程图查看实例,需要的朋友可以参考下
主要介绍了Activiti如何动态获取流程图过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
Activiti 学习笔记四:流程实例、任务的执行
activiti工作流实例,实例化、获取任务、完成任务、任务跟踪、历史任务
Activiti 6.0 流程设计器汉化,替换Activiti-App下的activiti-app-logic-6.0.0.jar 文件
activiti 5.10请假流程 xml
activiti6.0实现流程图片自定义颜色 当前任务为红色,走过的任务为绿色,自定义文字颜色连线文字显示
5.目前能实现的功能就是走一个流程,适合初学者研究 我深知刚刚学习activiti的心情,什么都不懂,都不知道如何创建一个activiti项目,所以我写了这个web项目供大家参考,这仅仅只是个demo,大家可以在这上面进行扩展...
Activiti6-流程跟踪监控图-节点-流程线高亮显示-支持通过、不通过、驳回、退回 支持内容: 已完成节点高亮显示、当前执行中节点红色显示 支持一个节点多条流出线,包括通过、不通过、驳回、退回,按照已执行操作正确...
在用activiti的时候经常遇到取会签人员的问题,这个文档解决怎么获取会签人员。
Activiti工作流设计实例,配置复杂的Activiti工作流模板
activiti5.22 流程设计器绘画的流程图条件线上的字不显示 下载该jar包 替换对应的maven仓库的jar包就可以了
Activiti多实例任务实现会签.