jBPM,全稱(chēng)是Java Business Process Management,是一種基于J2EE的輕量級工作流管理系統。jBPM是公開(kāi)源代碼項目,它使用要遵循 Apache License。jBPM在
jBPM最大的特色就是它的商務(wù)邏輯定義沒(méi)有采用目前的一些規范,如WfMC‘s XPDL, BPML, ebXML, BPEL4WS等,而是采用了它自己定義的JBoss jBPM Process definition language (jPdl)。jPdl認為一個(gè)商務(wù)流程可以被看作是一個(gè)UML狀態(tài)圖。jPdl就是詳細定義了這個(gè)狀態(tài)圖的每個(gè)部分,如起始、結束狀態(tài),狀態(tài)之間的轉換等。
jBPM的另一個(gè)特色是它使用Hibernate來(lái)管理它的數據庫。Hibernate是目前Java領(lǐng)域最好的一種數據持久層解決方案。通過(guò)Hibernate,jBPM將數據的管理職能分離出去,自己專(zhuān)注于商務(wù)邏輯的處理。
使用jBPM開(kāi)發(fā)工作流的一般流程如下:
1) jBPM的運行需要數據庫的支持,因此系統設計時(shí)要選定所用數據庫。只要是Hibernate支持的數據庫,jBPM就支持。數據庫的初始化可以由jBPM自動(dòng)完成,也可以通過(guò)ant generate.ddl任務(wù)生成SQL語(yǔ)句,在jBPM外部自己創(chuàng )建所需的表。
2) 使用jPdl定義工作流,生成processdinination.xml文件??梢圆捎?/span>GUI工具gpdl,但目前只支持jBPM1.0,而且bug很多。XML的DTD定義文件在jBPM下載包中。
3) Ant create.pde生成pde包的工作目錄。將processdinination.xml文件和其它需要的文件放在指定的目錄下,使用ant build.precess.archives生成pde包。pde包的格式采用jar。
4) 更改pde工作目錄/src/config/jbpm.properties的相關(guān)屬性,主要是設定相關(guān)的數據庫連接信息。注意要將數據庫的JDBC驅動(dòng)放在pde工作目錄的lib目錄下。
5) Ant deploy.process.archives將剛才生成的pde部署到數據庫。實(shí)際上就是向數據庫插入一些相關(guān)數據。
6) 利用jBPM API函數開(kāi)發(fā)相應的工作流程。
聯(lián)系客服