簡體   English   中英

如何使用java獲取camunda流程引擎的擴展屬性

[英]How to get extension property on camunda process engine using java

我的camunda流程模型中有幾個流程。 我想按照數字順序對它們進行排序,因此我在每個進程中添加了一個變量,我稱之為“process_order”,並給它們一個代表順序的數字(1 是第一優先級,2 是第二優先級等),如圖所示下面的圖片。

整個流程的擴展屬性中的 process_order

在 BPMN 文件中,它看起來像這樣:

bpmn 文件

所以我想知道如何使用 Java 獲取擴展屬性?

感謝您的任何回復:)

您希望何時/從何處閱讀該房產?

此處的模型 API 文檔是否回答了您的問題? https://docs.camunda.org/manual/latest/user-guide/model-api/bpmn-model-api/extension-elements/

如果您需要從執行中讀取信息:

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();
        }

添加一個 java 類作為偵聽器,如下圖所示。

Java 類應該實現 org.camunda.bpm.engine.delegate.JavaDelegate。

在覆蓋方法中,您可以通過以下方式獲取變量

execution.getVariable("變量名")

Camunda 進程偵聽器映像

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM