jbpm4怎么获取下一节点名称?
xuanzd
2011-08-18
jbpm4怎么获取下一节点名称。
|
|
yanghw6
2011-08-24
我也在查找这个问题,如何能获取当前环节的所有下一环节信息,taskService.getOutcomes(task.getId()),这个方法,获取到得数据位null,
|
|
依依大漠007
2011-08-30
在发送之前肯定知道是发给谁了并且可以获得当前流程的ExecutionId
通过task当前的受理人可获得 如: List<Task> taskList = jbpmMgr.getTaskListByUser(受理人); 在获得受理人的任务列表中再通过task.getExecutionId()(唯一)来具体确认一个任务及所有信息 |
|
xuanzd
2011-08-30
依依大漠007 写道 在发送之前肯定知道是发给谁了并且可以获得当前流程的ExecutionId
通过task当前的受理人可获得 如: List<Task> taskList = jbpmMgr.getTaskListByUser(受理人); 在获得受理人的任务列表中再通过task.getExecutionId()(唯一)来具体确认一个任务及所有信息 我知道task.getExecutionId()可以获得ExecutionId,然后ExecutionService.findExecutionById(executionId)可以得到Execution,但是Execution中的方法只能得到当前节点的信息,但是我想得到当前节点的下一个信息,不知道有什么办法得到。 |
|
wqlin_007
2011-08-30
貌似是流程的问题也,为什么BPM你们的还要自己写程序掉流程吗?
|
|
xuanzd
2011-08-30
wqlin_007 写道 貌似是流程的问题也,为什么BPM你们的还要自己写程序掉流程吗?
不是的,我是想在提交的时候,告诉用户提交到哪一节点。 |
|
chenchuan
2011-09-03
根据transaction去获得下一个节点
|
|
xuanzd
2011-09-04
chenchuan 写道 根据transaction去获得下一个节点
具体怎么实现呢,能否具体一些。 |
|
liuzejian4
2011-09-05
/** * 获取当前任务的节点,Transitions * @param ExecutionId 当前流程id * @return Transitions 当前任务的节点下的所有 Transitions * @throws SpringBeanException */ public List getTransitions(String ExecutionId) throws SpringBeanException{ ProcessEngine processEngine = (ProcessEngine) BeanUtil .getBean("processEngine"); ExecutionService executionService = processEngine.getExecutionService(); TaskService taskService = processEngine.getTaskService(); // 这里不会影响事物 EnvironmentImpl envImpl = ((EnvironmentFactory) processEngine) .openEnvironment(); try { ExecutionImpl e = (ExecutionImpl) executionService .findExecutionById(ExecutionId); ActivityImpl clerkOpinionActivityImpl = e.getActivity(); List listadd = new ArrayList(); List list = clerkOpinionActivityImpl.getOutgoingTransitions(); for (Iterator iterator = list.iterator(); iterator.hasNext();) { Transition ts = (Transition) iterator.next(); listadd.add(ts.getName()); } return listadd; } catch (Exception e) { e.printStackTrace(); } finally { envImpl.close(); } return null; } |
|
xuanzd
2011-09-05
liuzejian4 写道 /** * 获取当前任务的节点,Transitions * @param ExecutionId 当前流程id * @return Transitions 当前任务的节点下的所有 Transitions * @throws SpringBeanException */ public List getTransitions(String ExecutionId) throws SpringBeanException{ ProcessEngine processEngine = (ProcessEngine) BeanUtil .getBean("processEngine"); ExecutionService executionService = processEngine.getExecutionService(); TaskService taskService = processEngine.getTaskService(); // 这里不会影响事物 EnvironmentImpl envImpl = ((EnvironmentFactory) processEngine) .openEnvironment(); try { ExecutionImpl e = (ExecutionImpl) executionService .findExecutionById(ExecutionId); ActivityImpl clerkOpinionActivityImpl = e.getActivity(); List listadd = new ArrayList(); List list = clerkOpinionActivityImpl.getOutgoingTransitions(); for (Iterator iterator = list.iterator(); iterator.hasNext();) { Transition ts = (Transition) iterator.next(); listadd.add(ts.getName()); } return listadd; } catch (Exception e) { e.printStackTrace(); } finally { envImpl.close(); } return null; } 搞定了,多谢 |