2016-09-23 69 views
0

我想使用activiti为Web应用程序建模。我想将每个页面表示为用户任务。关于页面导航,我遇到了一个挑战。当我们想要返回或前进导航时,似乎无法导航回先前完成的用户任务(页面)。我无法在每个页面任务之后将顺序流回到先前的用户任务,因为有多条路径可以通过这些路径到达该用户任务。使用activiti的页面导航

如果可以通过Activiti实现此用例,您是否有任何建议或建议?

感谢, 贾扬

回答

0

事实上,默认BPMN办法做到这一点是模拟顺序流回到以前的用户任务。在Activiti引擎中,一个流程实例的状态存储在ACT_RU_EXECUTION表中,其中有一个指向执行当前活动ID的指针(ACT_ID_)。所以你可以把它改成以前的用户任务。执行此操作的一种可能方法是使用RuntimeService运行ExecutionQuery,然后将结果转换为ExecutionEntity并使用setActivity或setCurrentFlowElement方法更改状态指针。您需要激活Activiti事务才能将此更改存储在ACT_RU_EXECUTION表中,您可以使用ManagementService executeCommand方法在具有正在运行的事务的命令中运行此逻辑。

+0

我能够通过更新ACT_RU_EXECUTION表使其工作。这会产生任何其他逻辑的不良后果吗? – Jayant