有没有办法通过 Java API以编程方式创建BPMN 2.0 ?
我知道我可以使用图形建模工具或手动创建BPMN XML,但我正在寻找一种在运行时动态创建它的方法。
在我的例子中,BPMN 将通过 jBPM 执行。jBPM 文档说您可以使用他们的API 来定义流程,但他们不建议使用它来“保护自己免受内部 API 的影响”。如果有一个不与特定供应商绑定的 API,那就太好了。
有没有办法通过 Java API以编程方式创建BPMN 2.0 ?
我知道我可以使用图形建模工具或手动创建BPMN XML,但我正在寻找一种在运行时动态创建它的方法。
在我的例子中,BPMN 将通过 jBPM 执行。jBPM 文档说您可以使用他们的API 来定义流程,但他们不建议使用它来“保护自己免受内部 API 的影响”。如果有一个不与特定供应商绑定的 API,那就太好了。
EasyBPMN是一种选择。没有“供应商中立”的方式,因为 Java 没有用于该概念的标准 API(与通用 XML 操作不同),但这将是一种在工作流引擎和建模工具之间更具可移植性的选项。
BPMN2 规范的整体理念是保持供应商中立,在 jBPM5 中,您拥有流畅的 API,在某种程度上允许您创建可以导出的 BPMN2 模型。我不确定它是否与 XML 中支持的最新功能保持同步,但我很确定您可以使用它创建自己的流程。干杯
BPMN2 模型基于 EMF 模型(org.eclipse.bpmn2 项目,模型文件夹,BPMN20.ecore 文件)。您可以使用 EMF Java Api 创建、读取或修改 BPMN2 模型。
您可以使用来自activiti的库。这里有一个 activiti 背后的人的博客文章。我做了一个基于此修改进程的编译器,它可以工作。