taskService.completeTask(task.getId());
单步跟踪下去的顺序
1、执行函数体内,得到dbid,感觉是注入到这个id去的。在taskimpl中有setdbid的方法
2、commandService.execute(new CompleteTaskCmd(taskId));
3、在CompleteTaskCmd中,public Void execute(Environment environment) throws Exception
{
//要从数据库中取数据,因为task是在进入节点的时候,产生到数据库中的
TaskImpl task = dbSession.get(TaskImpl.class, Long.parseLong(taskId));
if (outcomeSpecified) {
task.complete(outcome);
} else {
task.complete();
}
}
在Complete中
//它在历史事件中Update了historytask,主要是更新了endtime及setTransitionName
historyTaskComplete(outcome);
//在historyEvent 基类下,有taskCreate等多个子类,每个子类,都采用模板的Process的方式。说明任务在创建到结束的时候,该事件都会被启动
DbSession dbSession = EnvironmentImpl.getFromCurrent(DbSession.class, false);
if (dbSession!=null){
dbSession.delete(th
单步跟踪下去的顺序
1、执行函数体内,得到dbid,感觉是注入到这个id去的。在taskimpl中有setdbid的方法
2、commandService.execute(new CompleteTaskCmd(taskId));
3、在CompleteTaskCmd中,public Void execute(Environment environment) throws Exception
{
//要从数据库中取数据,因为task是在进入节点的时候,产生到数据库中的
TaskImpl task = dbSession.get(TaskImpl.class, Long.parseLong(taskId));
if (outcomeSpecified) {
task.complete(outcome);
} else {
task.complete();
}
}
在Complete中
//它在历史事件中Update了historytask,主要是更新了endtime及setTransitionName
historyTaskComplete(outcome);
//在historyEvent 基类下,有taskCreate等多个子类,每个子类,都采用模板的Process的方式。说明任务在创建到结束的时候,该事件都会被启动
DbSession dbSession = EnvironmentImpl.getFromCurrent(DbSession.class, false);
if (dbSession!=null){
dbSession.delete(th