2012-12-18 25 views
0

不知道有沒有人能給我一個直接的答案。這主要是好奇心,儘管可能是重要的。jBPM:在java類或BPMN中聲明過程變量

當使用jBPM的,我有2個選項來聲明過程變量:

1)將參數傳遞給BPMN通過java代碼,使用地圖,其中字符串是變量名和對象其值

2 )直接在BPMN屬性上

我最近注意到在BPMN中聲明流程變量就足夠了。我應該只在那裏聲明它,還是應該在java類中聲明它?這裏有什麼區別?

乾杯

回答

4

的BPMN文件必須定義所有打算在這個過程中的不同節點使用的過程變量。過程變量主要用於將輸入/輸出變量映射到任務或從任務映射。如果在TaskA中需要一個來自流程的變量,則必須在流程中定義一個變量,並且必須定義正確的映射。爲了在你的過程中使用一個變量,你必須首先定義它。 這裏的誤解是,BPMN只定義了它的變量的名稱和類型,但沒有定義它們的結構。如果要在啓動過程時爲這些變量設置值,則必須提供您提到的Map。 jBPM會將Map的值「複製」到過程中的變量中。您在Map中使用的鍵必須與您在過程中定義的變量的名稱相對應。

希望它有幫助,

+0

謝謝你的回答。確實非常有用! –