?? jbpm3.0在jboss上地部署及默認(rèn)數(shù)據(jù)庫地遷移.txt
字號:
由于國內(nèi)對JBPM的研究較少,我們在研究該工作流研究后特把本手冊公布出來,希望對大家有所幫助,手冊由陸義平整理主要包括如下幾點:
1. 如何在一個干凈的JBoss服務(wù)器上安裝Jbpm3.0,
2. 如何將原Jbpm3.0缺省的數(shù)據(jù)庫從HyperSonic改為MySql,
3. 如何發(fā)布流程包到mysql數(shù)據(jù)庫,
4. 如何部署原Jbpm3.0自帶的Web應(yīng)用例子。
1 安裝之前的準(zhǔn)備工作
1.1 JBoss 4.0.2
Jbpm3.0壓縮包中預(yù)先配置好工作流引擎的JBoss應(yīng)用服務(wù)器的版本為4.0.2,因此我們先安裝好一個干凈的JBoss 4.0.2(可從http://www.jboss.com/products/jbossas/downloads下載),假定我們安裝在D:\dev\java\jboss-4.0.2(我們定義此目錄為#{jboss.home},后同),JBoss自帶了3種配置的服務(wù)器,我們可以在#{jboss.home}\server目錄下面發(fā)現(xiàn)3個目錄:minimal, default, all. 我們的jbmp server configuration將參考default server configuation模板而建立。
1.2 Mysql
在本手冊中我們用到的Mysql版本是4.1.13。(可從http://www.mysql.com獲得)
1.3 jbpm3.0壓縮包
完整的jbpm3.0壓縮包jbpm-starters-kit-with-eclipse-3.0.zip可從http://www.jboss.com/products/jbpm/downloads獲得。
2 新建jbpm配置
2.1
在#{jboss.home}\server目錄下新建一個目錄jbpm,將default目錄下所有文件和目錄copy到j(luò)bpm下。
2.2
刪除jbpm\deploy目錄下的以下目錄和文件(去掉不必要的模塊,加快jbpm啟動和運(yùn)行速度):
\jboss-aop.deployer
\jboss-ws4ee.sar
\management
bsh-deployer.xml
hsqldb-ds.xml
jboss-ha-local-jdbc.rar
jboss-ha-xa-jdbc.rar
monitoring-serve.xml
properties-service.xml
schedule-manager-service.xml
scheduler-service.xml
uuid-key-generator.sar
2.3
刪除jbpm\deploy\jms目錄下的以下文件:
hqldb-jdbc2-server.xml
hsqldb-jdbc-state-service.xml
jbossmq-destinations-service.xml
同時將下面兩個文件copy到j(luò)ms目錄下(右鍵復(fù)制后粘貼到j(luò)ms目錄下):
3 創(chuàng)建jbpm數(shù)據(jù)庫
上面我們配置好了一個jbpm server configuration,下面我們將要為jbpm server configuration創(chuàng)建一個mysql數(shù)據(jù)庫來存放jbpm系統(tǒng)表,同時將jboss下的jbpm server configuration所引用的數(shù)據(jù)源指向我們創(chuàng)建的mysql數(shù)據(jù)庫。執(zhí)行下列步驟前保證mysql已經(jīng)啟動。
3.1 新建一個數(shù)據(jù)庫
打開mysql的命令行客戶端,創(chuàng)建一個數(shù)據(jù)庫名為jbpm3
CREATE DATABASE jbpm3;
USE jbpm3;
3.2 創(chuàng)建jbpm系統(tǒng)表
在jbpm完整壓縮包的jbpm-db\build\mysql\scripts目錄下我們可以找到4個sql腳本文件,執(zhí)行其中的mysql.create.sql,這樣我們就創(chuàng)建了jbpm所需要的系統(tǒng)表。
3.3 創(chuàng)建Web例子用戶
創(chuàng)建web應(yīng)用例子中所需要的4個用戶
INSERT INTO JBPM_ID_USER VALUES(1,'U','cookie monster','cookie.monster@sesamestreet.tv','crunchcrunch');
INSERT INTO JBPM_ID_USER VALUES(2,'U','ernie','ernie@sesamestreet.tv','canthereyoubert,theresabananainmyear');
INSERT INTO JBPM_ID_USER VALUES(3,'U','bert','bert@sesamestreet.tv','ernie,theresabananainyourear');
INSERT INTO JBPM_ID_USER VALUES(4,'U','grover','grover@sesamestreet.tv','mayday mayday');
3.4 deploy Mysql數(shù)據(jù)源
下面我們將HyperSonic數(shù)據(jù)源替換成Mysql數(shù)據(jù)源
首先將mysql的jdbc驅(qū)動程序(文件名為mysql-connector-java-3.1.7-bin.jar,可以在jbpm3.0的完整壓縮包的jbpm-db\mysql\lib目錄下找到)copy到#{jboss.home}\server\jbpm\lib目錄下,
然后將下面的文件copy到#{jboss.hom}\server\jbpm\deploy目錄下,請注意修改該xml文件中的數(shù)據(jù)庫用戶名和口令。
這樣我們就將原來JBoss所指向的HyperSonic數(shù)據(jù)源替換成Mysql的數(shù)據(jù)源了。
4 部署jbpm服務(wù)包
在#{jboss.home}\server\jbpm\deploy目錄下新建jbpm.sar目錄,將下面的sar文件(標(biāo)準(zhǔn)zip格式)展開在jbpm.sar目錄下
展開后的目錄結(jié)構(gòu)如下圖所示
5 Recompile&depploy jbpm相關(guān)文件
下面我們將重新編譯和發(fā)布jbpm例程相關(guān)包,主要涉及到以下幾個模塊:
l Websale流程包(websale.par)。
l Websale應(yīng)用例子(jbpm.war)。
5.1 新建一個java project
5.1.1 在eclipse中新建一個java project,命名為myjbpm
5.1.2 將下列兩個目錄copy至src目錄下
位于jbpm壓縮包\jbpm\src\java.webapp下的org目錄
位于jbpm壓縮包\jbpm\src\java.examples\org\jbpm下的websale目錄(請刪除WebsaleTest.java文件!)
5.1.3 在myjbpm下新建一個目錄lib,將下列jar文件copy到lib目錄下:
antlr-2.7.5H3.jar
asm.jar
bsh-2.0b2.jar
cglib-2.1.jar
commons-collections-2.1.1.jar
commons-logging.jar
dom4j.jar
ehcache-1.1.jar
hibernate3.jar
javax.servlet.jar
javax.servlet.jsp.jar
jbpm-3.0.jar
jbpm-identity-3.0.jar
jta.jar
mysql-connector-java-3.1.7-bin.jar
在lib目錄下新建一個目錄jsf,將下列jar文件copy到j(luò)sf目錄下:
commons-beanutils-1.6.1.jar
commons-digester-1.5.jar
jstl-1.1.0.jar
myfaces-1.0.9.jar
myfaces-impl-1.0.9.jar
myfaces-jsf-api-1.0.9.jar
standard-1.1.2.jar
5.1.4 在myjbpm下新建一個目錄resources,將下列目錄copy到其下
位于jbpm壓縮包\jbpm\src\resources下的jbpm.war目錄
位于jbpm壓縮包\jbpm\src\process.examples下的websale.par目錄
5.1.5 copy以下文件到myjbpm目錄下
請注意更改build.xml中deploy.dir的屬性以及hibernate.cfg.xml中數(shù)據(jù)庫的用戶名和口令,打開build.xml文件并執(zhí)行deploy.process和deploy.war兩個目標(biāo)對象。
執(zhí)行完成后,我們就將websale流程包和webapp應(yīng)用例程部署完畢了
6 運(yùn)行jbpm server configuration
在命令行模式切換到#{jboss.home}\bin目錄下,運(yùn)行下列命令
run –c jbpm
待jboss啟動成功后即可按照原來的模式運(yùn)行web例程。
7 調(diào)試web應(yīng)用例程
如果想debug剛才部署的web應(yīng)用例程,可以按照以下步驟操作:
7.1 安裝JBoss-IDE plug-in for Eclipse
Jboss-IDE plug-in可以從http://www.jboss.com/products/jbosside/downloads下載
7.2 配置project debug環(huán)境
7.2.1 選擇run菜單下面的debug項,在彈出的對話框左邊的列表中右鍵點擊Jboss4.0.x,選擇new.
7.2.2 設(shè)置JBoss home以及server configuration
7.2.3 切換到source tab page,將myjbpm java project加入
7.2.4 將IDE perspective切換到Debug模式,設(shè)置斷點
7.2.5 點擊debug按鈕開始啟動JBoss,進(jìn)入調(diào)試狀態(tài)
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -