JBPM没有任务结束却没有持久化到数据库中
我的流程定义:
引用
<?xml version="1.0" encoding="UTF-8"?>
<process-definition xmlns="urn:jbpm.org:jpdl-3.2" name="purchase">
<start-state name="流程开始">
<transition to="部门经理审批" name="提交审批"></transition>
</start-state>
<task-node name="部门经理审批">
<task name="审批部门人员采购申请">
<assignment config-type="bean" class="org.springmodules.workflow.jbpm31.JbpmHandlerProxy">
<targetBean>purchaseApplyAssignment</targetBean>
<factoryKey>jbpmConfiguration</factoryKey>
</assignment>
</task>
<transition to="内审部门审批" name="部门审批通过">
<action>
<action name="Task_ManagerApproved" class="com.blt.myoa.workflow.action.ManagerApprovedActionHandler"></action>
</action>
</transition>
<transition to="流程结束" name="部门审批驳回"></transition>
</task-node>
<task-node name="内审部门审批">
<transition to="流程结束"></transition>
</task-node>
<end-state name="流程结束"></end-state>
</process-definition>
以下是java方法
引用
public void departmentAudit(final String taskId,final String result){
final Long tid = Long.parseLong(taskId);
jbpmTemplate.execute(new JbpmCallback(){
public Object doInJbpm(JbpmContext context) throws JbpmException {
TaskInstance instance = context.getTaskInstance(tid);
System.out.println("----------------"+instance.getName());
if("ok".equals(result))
{
instance.end("部门审批通过");
}
if("no".equals(result))
{
instance.end("部门审批驳回");
}
return null;
}
});
}
为啥我使用instance.end 流程没有继续往下走呐?而我在jbpm-console里可以操纵流程正常的往下,结束。
有可能哪儿出了问题了呐?
还有:我使用了spring
[解决办法]
两个if都没进去。检查一下传来的result参数,