flowable6.4 與springboot2 整合

litblank發表於2019-01-28
1、整合遇到的問題

1.1 指定資料來源

spring 中的流程定義:SpringProcessEngineConfiguration。工作流需要指定資料庫,SpringProcessEngineConfiguration設定定義的資料來源時,報錯資料來源重複定義,或者迴圈引用。結果發現不引用資料來源,也可自動載入資料來源。遺留一個問題,配置類中引用資料來源,如何避免迴圈引用資料來源?參照了多資料來源配置,但是多資料來源是在同一個配置類中。

1.2 flowable-engine-6.4.0.jar!/org/flowable/db/mapping/mappings.xml 報錯空指標,未找到namespace。

配置mybatis不應該掃描flowable的mappings.xml,flowable會自動配置。但是若未限制mapper-locations,就有可能把flowable的mappings.xml掃描。

  1. @MapperScan mybatis掃描的mapper介面
  2. mapper-locations 配置掃描XML類

1.3 flowable6.4 與 springboot版本1升級2,資料越界問題。

ArrayStoreException: sun.reflect.annotation.TypeNotPresentExceptionProxy

flowable6.2與springboot1,沒有問題。但是flowable6.2與springboot2結合就出現資料越界異常。具體的異常要打異常斷點,才能發現是具體是那個配置類異常。原因是2版本的類檔案位置改變了,需要增加註解。或者升級了flowable6.4解決了問題。

@ConditionalOnClass(value = {SecurityAutoConfiguration.class})

1.4 建立資料庫表

測試flowable6.2可以自動建立表,但是flowable6.4需要執行DbSchemaCreate類的main方法。或者org.flowable.idm.db.create 目錄下的sql檔案

1.5 啟動後一直刷定時任務得SQL

文件上說明AsyncExecutorActivate預設false,但是沒有還是開啟了定時任務,手動關閉,有需要再開啟

processEngineConfiguration.setAsyncExecutorActivate(false);

1.6 bpmn20,xml流程檔案

啟動時載入到了act_re_deployment主機表,和act_ge_bytearray表中得流程,之後動態修改流程可以參考

相關文章