在实际的activiti的项目开发中,任务节点是经常用到的,今天我就在任务节点监听器摸索了一天,网上虽然有资料但是都是各种节点都讲了下却都没有深入,我仅仅是以今天自己碰到的困惑记录下,希望能帮到学习activiti的同学。
任务节点的监听只要实现TaskListener接口即可,通常我们使用activiti肯定是将流程和业务完全区分开,那肯定必不可少的用到节点监听器,在节点监听器中我们可以处理业务,将参数通过
taskService.setVariables(“参数名”,参数map)
将参数先传入到activiti自带的act_variable表中,然后在节点监听器中通过
Object value = delegateTask.getVariable(“参数名”);
取到参数来实现业务的操作。当然这就和taskService.complete(task.id,var),即和完成任务传入网关的判断条件的流程变量不会冲突。
通常是在完成任务时进行业务的保存
所以将Event改成complete,当然你如果想在节点进行前进行操作就是将Event改成creat,同理assign和delete,这就是activiti灵活的地方。
记得每次添加一个监听器需要重新部署才会生效!
下面放上我项目中的一个应用
public String startTask(