1. 下載
現在中央倉庫上只有 jBPM5.1 之后的版本咯,所以我們只能到 sourceforge下載 jBPM4(下載地址)。
把 jbpm-4.x.zip(不區分操作系統) 下載下來以后,解壓到硬盤上的任何一個目錄中即可。
下面以 ${jbpm.home} 來表示 jbpm 解壓后的路徑。
這個目錄中包含這些子目錄及文件 ——
- doc:包括用戶指南、Javadoc 以及開發指南。
- examples:包括用戶指南中使用到的示例流程。
- install:包括適用于不同環境下的安裝腳本。
- lib:包括 jBPM 依賴的第三方庫和一些特定的歸檔包。
- src:全部 jBPM 源代碼。
- jbpm.jar:jBPM 源代碼 歸檔包文件。
- migration:jBPM 升級功能解決方案包。
2 安裝數據庫
安裝腳本包含了安裝 jbpm 數據庫的初始化操作,例如創建表,其中的刪除表是可選的。
使用任何數據庫操作的前提條件是在 ${jbpm.home}/install/jdbc 目錄的.properties文件中配置數據庫的連接參數。
下面以 MySQL 數據庫系統為例進行說明。
- 執行 ${jbpm.home}/install 目錄下的腳本任務 create.jbpm.schema,這會創建 jBPM 數據庫表,當然,先要在DBMS上建立好數據庫。作為創建表和約束的一部分,JBPM4_PROPERTY 表會被初始化一些種子數據,例如當前的 jBPM 引擎版本(key db.version)和 ID 生成器版本(key next.dbid)。
- 執行 drop.jbpm.schema 腳本任務刪除表結構。注意這會刪除 jBPM 數據庫表中的所有數據以及表(慎用!!!)。
以上操作都是使用 ant 工具來執行的。
3 安裝圖形化流程設計器(GPD)
圖形化流程設計器,即 Graph Process Designer(GPD),用戶能夠通過圖形拖曳、屬性設置等可視化的方式對業務流程進行設計,還可以建立并展現業務流程模型。這個模型在 jBPM4 中是后綴為 .jpdl.xml 的文件,遵循 jPDL 規范,它就是流程定義文件,它在運行時會由工作流引擎解釋執行,并生成相應的流程實例。
jBPM的經典 GPD 一直使用 Eclipse 作為設計器的支撐平臺,現在介紹如何將 GPD 插件安裝到 Eclipse IDE 上。
3.1 下載 Eclipse
注意,要使用帶有 XML編輯器 的 Eclipse 版本。
3.2 安裝 GPD 插件
使用 Eclipse 軟件升級(Software Update)功能安裝 GPD 。${jbpm.home}/install/src/gpd/jbpm-gpd-site.zip 文件就是 GPD 的站點更新存檔(archived update site)。
在 Eclipse 里添加 GPD 站點更新存檔的步驟:
1)選擇Help→Install New Software 命令。
2)單擊 Add 按鈕。
3)在Add Site 對話框中,單擊 Archive 按鈕。
4)找到 ${jbpm.home}install/src/gpd/jbpm-gpd-site.zip 文件,并單擊Open 按鈕。
5)在 Add Site 對話框中單擊 OK 按鈕,返回到 Install 對話框。
6)選中出現的 jPDL 4 GPD Update Site 選項。
7)單擊 Next 按鈕,然后單擊 Finish 按鈕。
8)接受軟件許可證協議。
9)詢問時重啟 Eclipse。
3.3 添加 jPDL4 Schema 校驗
jPDL 是 jBPM 獨有的流程定義語言,它以 XML 形式來描述業務流程的。
jBPM 官方提供的圖形化流程設計器功能不是特別全面,很多設計并不能全在圖形界面下完成。因此,在很多情況下,我們需要直接編輯j PDL 的XML 源代碼,所以,最好是為 jPDL XML 指定 Schema,這樣在編輯流程定義源代碼的時候,可以通過 eclilpse 的編輯器快捷鍵 "Alt+/" 快速呼出語法提示,同時關聯后還可以校驗 jPDL 的語法錯誤,這樣可以更為高效地編寫 流程定義 XML 源代碼。
在 Eclipse 中配置 Schema 的過程如下:
1)選擇 Window→Preferences 命令。
2)選擇 XML→XML CataLog 選項。
3)單擊 Add 按鈕。
4)將添加 XML Catalog Entry 的窗口打開。
5)單擊 File System 按鈕。
6)在打開的對話框中,選擇 jBPM4 安裝目錄下 src 文件夾中 jpdl.xsd 文件。
7)單擊打開按鈕。
8)關閉所有的對話框,配置完成。
4 配置 jBPM 運行環境
因為已經習慣使用 idea 作為 IDE,所以這里把 idea 作為運行環境(流程定義在 eclipse 中,代碼編寫在 idea 中)。
我們把 ${jbpm.home} 作為項目根目錄,導入 idea。
配置項目的依賴包,依賴包在 ${jbpm.home}/lib 中。
在上一頁面,點擊 Sources,然后點擊 + 號,為依賴包關聯源代碼路徑。
至此,就可以在 eclilpse 中定義流程,然后拷貝到 idea 中開發 jBPM 項目啦 O(∩_∩)O~。
注意: 如果直接拷貝 *.jpd.xml 文件到 idea,可能會出現中文亂碼。(拷貝 *.jpd.xml 的源代碼即可解決)