新Jbpm4 4與spring整合方式

2021-08-31 09:13:43 字數 1049 閱讀 6477

背景:最近專案要用到工作流,在網上搜了一些jbpm4和spring的整合方案,發現大部分都是官方文件提供的方案(本文不詳細描述官方方案)。

但官方整合方式有其缺陷,例如遇到如下情況,系統架構是通過web.xml載入專案的所有spring檔案,並出現了多個sessionfactory的情況。中途客戶提出新的需求,需要引入工作流引擎(這裡用jbpm4.4) ,我們需要新建datasource和sesionfacotory,此時我們用官方的方案就會出現架構混亂的狀況。

解決方案:

一、定義自己的processengine工廠

public class processenginefactorybean extends springhelper 

public processengine createprocessengine()

}

二、建立spring配置檔案,用於新建datasource和sesionfacotory,此處省略了jdbc.properties(即資料庫連線資訊)。

<?xml version="1.0" encoding="gb2312"?>

$ $

$ $

$ $

$ $true

/web-inf/hibernate/jbpm/jbpm.hibernate.cfg.xml

三、建立我們的jbpm.cfg.xml<==>com/dawn/jbpm4/cfg/jbpm.cfg.xml

<?xml version="1.0" encoding="utf-8"?>		

四、建立jbpm.tx.spring.cfg.xml<==>com/dawn/jbpm4/cfg/jbpm.tx.spring.cfg.xml

,修改了spring事務攔截方式

<?xml version="1.0" encoding="utf-8"?>

ok!你可以試試效果了,希望對遇到同樣需求的朋友有幫助!各位多多指教!

jBPM 4 4 與Spring整合配置

jbpm 4.4與spring整合配置比較容易,這裡我使用的是spring 2.5.6,資料庫連線池使用c3p0,將相關的兩個jar檔案加入到classpath中。jbpm 4.4與spring整合的配置過程說明如下。配置 1 修改jbpm.cfg.xml配置檔案 將jbpm.cfg.xml檔案中一...

Jbpm 4 4學習筆記 二

jbpm是面向流程程式設計的框架。1.key是檔名稱,類似於startprocessinstancebykey這樣的方法就是按照檔名查詢 2.state,狀態節點為典型的等待狀態,它不會向任務列表新增任務。task節點本質上還是state的一種,只是多了個參與者。當乙個流程執行到任務節點 task ...

JBPM4 4 表結構和介面

1 資料庫設計 jbpm4.4的持久層是採用的hibernate,大大提高了程式了移植性,和資料庫進行了解耦。它通過18張表進行資料處理,我們可以通過powerdesigner進行反向工程,匯出資料物理設計圖,進行檢視這些表之間的結構。表名稱 說明 jbpm4 deployment 儲存部署id j...