0
我有一個奇怪的行爲正在進行。Jbpm ProcessDefinition始終爲-1
我正在使用Seam和JBPM。 當我說:
ProcessDefinition templateDefinition = Jbpm.instance().getProcessDefinitionFromResource(ap.getJpdl());
//This will return Enkeltanledning.jpdl.xml
templateDefinition.getVersion();
它總是返回-1。 然而,當我從數據庫中選擇,我得到第2版。
mysql> select * from JBPM_PROCESSDEFINITION; +-----+--------+-----------------------------+--------------+----------+------------------------+-------------+ | ID_ | CLASS_ | NAME_ | DESCRIPTION_ | VERSION_ | ISTERMINATIONIMPLICIT_ | STARTSTATE_ | +-----+--------+-----------------------------+--------------+----------+------------------------+-------------+ | 1 | P | Enkeltanledning | NULL | 1 | | 1 | | 2 | P | Enkeltanledning | NULL | 2 | | 31 |
現在,我發現這個鏈接: jpdl 它說:
Unnamed process definitions will always have version number -1.
不過,我有我的流程定義沒有未命名,並且當我調試templateDefinition時,我得到正確的名稱Enkeltanledning,所以我知道這是正確的jpdl文件已被加載。
所以我的問題是,爲什麼我的代碼總是返回-1版本? 我之所以需要版本是正確的,是因爲我正在做一些檢查,看看我是否擁有正確的版本,otherwize我將重新部署ProcessDefinition,並且由於我總是獲得-1,因此它將始終重新部署。