jBPM:在java类或BPMN中声明流程变量

Raf*_*tos 0 java jbpm bpmn

想知道是否有人可以给我一个直接的答案。这主要是好奇心,尽管可能是重要的事情。

使用 jBPM 时,我有 2 个选项来声明流程变量:

1)通过java代码向BPMN传递参数,使用Map,其中string是变量名,Object是其值

2)直接在BPMN属性上

我最近注意到在 BPMN 中声明流程变量就足够了。我应该只在那里声明它还是应该在java类中声明它?这里有什么区别?

干杯

Est*_*rti 5

BPMN 文件必须定义将在流程的不同节点中使用的所有流程变量。流程变量主要用于将输入/输出变量映射到任务或从任务映射输入/输出变量。如果在 TaskA 中您需要来自流程的变量,则必须在流程中定义变量,并且必须定义正确的映射。为了在流程中使用变量,您必须首先定义它。这里的误解是 BPMN 只定义了其变量的名称和类型,但没有定义它们的结构。如果您想在进程启动时为这些变量设置值,则必须提供您提到的映射。jBPM 会将 Map 的值“复制”到流程中的变量中。您在映射中使用的键必须与您在流程中定义的变量的名称相对应。

希望能帮助到你,