jBPM Executor 可以用作业务流程的调度程序吗?

Can jBPM Executor be used as a scheduler for Business Processes?

  1. 能否jBPM executor用于安排整个业务流程(或者这种方法是否会被滥用)?

对该问题背后逻辑的简短解释:到目前为止我发现的几乎所有示例都将 jBPM 执行器作为一种方式:异步调用业务流程的一部分(工作项处理程序)或简单的 类 其中包含一些业务逻辑。

此外,这是 jBPM 命令接口 javadoc 的摘录(执行程序对命令进行操作):

/**
 * Executor's Command are dedicated to contain purely business logic that should be executed.
 * It should not have any reference to underlying process engine and should not be concerned
 * with any process runtime related logic such us completing work item, sending signals, etc.
 * ...
 */

另一方面,我在 Maciej Swiderski 的博客上找到了一个 entry,其中写到执行器支持:'async start process instance'.

  1. 如果可以通过 jBPM 执行器启动整个业务流程,您是否有扩展执行器功能的经验? 我的意思是添加更多类似 Quartz 的功能,例如支持业务日历、工作链、工作分组。

提前感谢您的所有回答。

我在 jBPM IRC 频道上与 Maciej Swiderski(jBPM 的核心开发人员)进行了交谈,得到的答案是:

ad 1. 是的,您可以使用以下命令完成此操作:https://github.com/kiegroup/jbpm/blob/master/jbpm-flow/src/main/java/org/jbpm/process/core/async/AsyncStartProcessCommand.java

ad 2. Job Executor 无法轻松扩展以提供类似 Quartz 的功能。它有不同的用途。应该使用例如需要此类高级选项时使用 Quartz。