我正在使用JBoss服务器上的camunda引擎。如果部署了新的(版本的)BPMN diagramm,我会搜索执行自定义代码的方法。
我想要的是什么:
如果检测到新部署,是否存在将执行的侦听器或类似内容?
感谢您的帮助!
答案 0 :(得分:3)
这里需要使用的是" BPMN Parse Listener"。
Camunda提供了一个很好的示例,说明如何在此处设置解析侦听器:
Parse Handlers的最初意图是自动将任务或执行侦听器添加到流程模型。你为什么这么做? 例如,如果您自动希望所有用户在分配任务时收到电子邮件通知(这是一个非常常见的用例)。麻烦的是,将此建模到流程中真的会弄乱流程图。所以...我们使用ParseListener自动注入行为。
现在,这对您的用例有何帮助?
答案很简单。它使您可以访问模型部署操作。 每次部署新模型时,BPMN都会被解析并且#34;并触发任何已注册的ParseListener。
在你的情况下,你会绑定到" parseProcess()"方法并执行您的自定义代码。
我建议您使用服务调用并外化自定义逻辑,以便抽象逻辑调用和逻辑执行,但这取决于您。
虽然这是一个不常见的用例,但对于BpmnParseListeners来说,这实际上是一个非常好的用例。
希望这会有所帮助。 格雷格