如何在jbpm中使用超时正确建模并行执行?

时间:2016-07-15 09:28:39

标签: drools jbpm bpmn kie kie-wb

我需要一些jbpm的帮助和使用kie-workbench的建模。 我的情景:

向用户显示潜在服务提供商的列表。他现在可以选择其中的多个并指定一个日期,作为提供者响应该请求的截止日期(待处理的请求应解释为"提供者拒绝请求"超时命中时)。在所有回复可用后(通过响应或超时),流程将继续,并将回复呈现给用户。

我必须使用jbpm来模拟这种行为,并且想知道这样做的最佳方法。

我的第一个想法是简单地使用"多实例子流程"为此目的something like this

遗憾的是,这是不可能的,因为这些是按顺序执行的,因此服务提供商可能无法响应,因为另一个已经超时。此外,由于要在运行时确定要执行的实例数,因此简单的并行网关既不会执行此任务。

有关如何使用jbpm正确建模此方案的任何建议吗?

修改

我不知道,如果考虑以下情况"脏",但这是我目前的想法(尚未完全实施):

添加一个流程变量" subProcId"由子进程节点引用为"被叫元素"。在此节点之前,我调用自定义服务任务,该任务将执行以下操作:

  • 使用RuleFlowProcessFactory根据当前运行时数据创建流程定义
  • 构建流程并使用其REST-API
  • 将其上载到Execution-server
  • 设置" subProcId"包含已创建进程的ID

使用这种方法,我可以定义一个包含并行网关的子进程,其中包含所需的确切传出连接数。

任何想法,如果这是一个好主意,实际上可以工作吗?

0 个答案:

没有答案