如何在Camunda-bpm中使用流程变量?
How to use process variables in Camunda-bpm?
我是 Camunda 的新手,没有找到任何教程或参考资料来解释如何实现以下目标:
我有一个简单的 bpmn 流程,我在其中使用服务任务。我想使用 processEngine.getRuntimeService().startProcessInstanceByKey("Process_1", variables); 来执行我的流程
我的变量如下:
Map variables = new HashMap();
variables.put("a", 2);
variables.put("b", 5);
现在我的服务任务是实现一个 java class,我想在其中处理变量 "a" 和 "b"?
如何在 class 中获得相同的过程变量 "a" 和 "b"?
让您的 class 实现 JavaDelegate 并将其添加为建模器中的服务委托。然后通过传递给 execute 方法的 DelegateExecution 实例访问变量。
public class MyServiceDelegate implements JavaDelegate {
public void execute(DelegateExecution execution) {
execution.getVariable("a");
}
}
这是非常基础的,并且在入门示例中涵盖了 shure。也许退后一步研究基本概念是个好主意?
我是 Camunda 的新手,没有找到任何教程或参考资料来解释如何实现以下目标: 我有一个简单的 bpmn 流程,我在其中使用服务任务。我想使用 processEngine.getRuntimeService().startProcessInstanceByKey("Process_1", variables); 来执行我的流程 我的变量如下:
Map variables = new HashMap();
variables.put("a", 2);
variables.put("b", 5);
现在我的服务任务是实现一个 java class,我想在其中处理变量 "a" 和 "b"?
如何在 class 中获得相同的过程变量 "a" 和 "b"?
让您的 class 实现 JavaDelegate 并将其添加为建模器中的服务委托。然后通过传递给 execute 方法的 DelegateExecution 实例访问变量。
public class MyServiceDelegate implements JavaDelegate {
public void execute(DelegateExecution execution) {
execution.getVariable("a");
}
}
这是非常基础的,并且在入门示例中涵盖了 shure。也许退后一步研究基本概念是个好主意?