首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用java在camunda流程引擎上获取扩展属性

如何使用java在camunda流程引擎上获取扩展属性
EN

Stack Overflow用户
提问于 2019-12-16 17:43:17
回答 2查看 2.1K关注 0票数 2

我的camunda进程模型中有几个进程。我想在数字顺序之后对它们进行排序,因此我在每个进程中添加了一个变量,我称之为"process_order“,并给它们一个代表顺序的数字(1是第一优先级,2是第二优先级,依此类推)。如下图所示。

在BPMN文件中,它看起来像这样:

所以我想知道如何使用Java获取扩展属性?

感谢您的回复:)

EN

回答 2

Stack Overflow用户

发布于 2019-12-20 01:10:45

您希望何时/从何处读取该属性?

这里的模型API文档回答你的问题了吗?https://docs.camunda.org/manual/latest/user-guide/model-api/bpmn-model-api/extension-elements/

如果您需要从执行中读取信息:

代码语言:javascript
复制
ServiceTask serviceTask = (ServiceTask) execution.getBpmnModelElementInstance();

CamundaProperties camProperties = serviceTask.getExtensionElements().getElementsQuery().filterByType(CamundaProperties.class).singleResult(); 

    for (CamundaProperty camProperty : camProperties.getCamundaProperties()) 
        {
          String name = camProperty.getCamundaName();
          String value = camProperty.getCamundaValue();
        }
票数 2
EN

Stack Overflow用户

发布于 2019-12-17 16:43:28

添加一个java类作为监听器,如下图所示。

Java类应该实现org.camunda.bpm.engine.delegate.JavaDelegate。

在重写的方法中,可以通过以下方式获取变量

Execution.getVariable(“变量名”)

Camunda Process Listener Image

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59353985

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档