flowable - FLOWABLE:如何更改异步作业的 5 分钟默认间隔
问题描述
我假设DefaultAsyncJobExecutor是默认情况下作为AsyncExecutor接口 的实现被拾取的类(不确定这个假设是否正确)
所以基本上我想修改一个异步作业的默认超时时长,默认超时时长是5分钟,也就是两个变量的值:
AbstractAsyncExecutor .java中的timerLockTimeInMillis、asyncJobLockTimeInMillis **
我尝试使用各自的 setter 方法更改这两个值,并尝试直接修改自定义实现的构造函数中的值,如下所示:
public class AsyncExecutorConfigImpl extends DefaultAsyncJobExecutor
{
// @Value( "${async.timeout.duration}" )
private int customAsyncJobLockTimeInMillis = 10 * 60 * 1000;
AsyncExecutorConfigImpl()
{
super();
setTimerLockTimeInMillis( this.customAsyncJobLockTimeInMillis );
setAsyncJobLockTimeInMillis( this.customAsyncJobLockTimeInMillis );
super.timerLockTimeInMillis = this.customAsyncJobLockTimeInMillis;
super.asyncJobLockTimeInMillis = this.customAsyncJobLockTimeInMillis;
}
}
但是这些值保持不变,因为超时仍然会在 5 分钟后发生。
初始化是通过 API 完成的,例如 start-new-process-instance,在这个 API 中,以下代码用于启动流程实例
-> 像这样异步启动工作流流程实例(processInstanceName,processInstanceId)
ProcessInstance lProcessInstance = mRuntimeService.createProcessInstanceBuilder()
.processDefinitionId( lProcessDefinition.get().getId() )
.variables( processInstanceRequest.getVariables() )
.name( lProcessInstanceName )
.predefineProcessInstanceId( lProcessInstanceId )
.startAsync();
->完成后,工作流程的其余部分涉及服务任务,当一个实例正在执行时,我猜会发生超时并且实例会重新启动
-> 因为,我配置了一个监听器,所以我能够在日志中看到启动事件活动每 5 分钟启动一次
例如:event-1 是第一个事件,然后此事件在 5 分钟后重新启动(持续时间显示在控制台日志中)
不确定,此时我缺少什么,如果需要任何其他详细信息,请告诉我
解决方案
如果 jar 文件不受您的控制,则无法更改默认值,count
因为在 jar 类中已编译。您只能更改对象内部的值,以便您可以使用super
关键字:
class CustomImplementation extends DefaultExecutedClass{
private int custom_count=1234;
CustomImplementation(){
super();
super.count = this.custom_count;
}
}
否则,如果您确实需要更改原始文件,则必须从 jar 中提取它
推荐阅读
- python - ZipImportError 而工具链为 kivy-ios 编程构建 python3
- javascript - 如何在反应钩子中将单词进一步拆分为字母
- c# - Unity InputSystem 值持续输出 0,除非它从执行事件中读取
- matlab - 实施卡尔曼滤波器时设计矩阵 H 不正确
- sql - SQL:选择员工的时间段 COUNT()
- python - 无法从 Windows 中的 docker 容器执行 .sh 文件
- python - DRF 序列化程序未从对 ManyToMany 字段的请求中收到值
- css - 如何在 CSS 中设置左侧面板 100% 高度?
- c# - 如何使用依赖注入在 C# 工作进程中使用范围服务
- javascript - 未处理的拒绝(TypeError):无法读取未定义的属性(读取“onSnapshot”)版本 9