日期:2014-05-18  浏览次数:20665 次

JBPM 的signal和end的区别是什么
public void taskhandle(long taskid) {
JbpmContext jbpmContext = jbpmConfiguration.createJbpmContext();
try {
/*
* 根据操作者ID,获取属于该操作者的任务集
*/
TaskInstance ti = jbpmContext.getTaskInstance(taskid);
System.out.println("处理节点:" +ti.getName() );
// Token token = ti.getToken();
// token.signal();
ti.end();
// jbpmContext.save(ti);
} finally {
jbpmContext.close();
}

1.用token.signal()跳转的话,taskinstance没有结束,而用ti.end()就关闭了,这是为什么?
2.jbpmContext.close()就可以持久化,那jbpmContext.save()的作用是什么?

------解决方案--------------------
1、token.signal();//流程推动
jbpmContext.save(token); //要保存
2、jbpmContext等同于hibernate的session(会话)