gpt4 book ai didi

java - 如何获取activiti中的 Activity 进程列表?

转载 作者:行者123 更新时间:2023-12-01 09:12:18 25 4
gpt4 key购买 nike

我正在研究简单的 activiti 进程,我需要以某种方式检查当前进程是否已经在运行。我的想法是使用这样的代码:

activitiInitEngineBean.getRuntimeService()
.createExecutionQuery()
.processDefinitionKey(BPConstants.PROCESS_ID_D1_ASSEMBLY_PROCESS)
.count() > 1;

所以我只是在一个java方法中获取runtimeService,该方法由activiti BPConstants.PROCESS_ID_D1_ASSEMBLY_PROCESS进程执行,并使用definitionKey(进程的id)添加过滤器并检查计数。 我发现 .createExecutionQuery() 总是返回空列表。例如,这样的代码也将返回空列表:

activitiInitEngineBean.getRuntimeService()
.createExecutionQuery()
.list()

这不是预期的,因为我在进程内调用它(所以它应该返回至少 1 次执行)。 我应该配置什么才能使用runtimeService?

最佳答案

在达到等待状态之前,您的更新不会存储到数据库中(请参阅 Transactions and Concurrency )。如果您想从正在运行的查询中获取流程实例,流程实例必须达到第一个等待状态。事实上,您不需要创建查询来执行,因为执行已经存在,例如script task variables或者作为接口(interface)方法的参数。

关于java - 如何获取activiti中的 Activity 进程列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40844050/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com