原文地址:http://blog.chinaunix.net/u/21752/showart_2097331.html
1.軟件清單
jdk1.6
jbpm4.2
tomcat6
oracle9i
ant1.7
eclipse-jee-galileo-win32
2.配置JDK1.6
在系統(tǒng)路徑上添加
JAVA_HOME=c:\java\jdk16(我的JDK1.6安裝目錄)
CLASS_PATH=.;%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\jre\lib\rt.jar;
3.配置ANT
在系統(tǒng)路徑上添加
ANT_HOME=c:\java\ant
path=%ANT_HOME%\bin
4.配置數(shù)據(jù)庫(使用Oracle,默認使用的是hsqldb)
(1)將class12.jar復制到jbpm-4.2\lib目錄下,否則找不到驅動
(2)進入c:\jbpm-4.2\install\jdbc目錄修改文件oracle.properties文件,設置你自己的oracle數(shù)據(jù)庫名、用戶名和密碼
注意jbpm-4.2的根目錄名稱不能更改,否則無法運行ANT
(3)修改c:\jbpm-4.2\install\build.xml,修改為<property name="database" value="oracle" /> <!-- {hsqldb | mysql | oracle | postgresql} -->
(4)進入c:\jbpm-4.2\install, 運行 ant create.jbpm.schema,將創(chuàng)建數(shù)據(jù)庫腳本并在指定數(shù)據(jù)庫中創(chuàng)建表
4.配置Tomcat
(1)復制apache-tomcat-6.0.20.zip文件到c:\jbpm-4.2\install\downloads目錄中
(2)進入c:\jbpm-4.2\install,運行ant install.tomcat.
完成后,在c:\jbpm-4.2目錄下生成一個tomcat目錄
5.配置eclipse
(1)復制eclipse-jee-galileo-win32.zip文件到c:\jbpm-4.2\install\downloads目錄中。
注意:eclipse的名稱必須是eclipse-jee-galileo-win32
(2)進入c:\jbpm-4.2\install,運行ant install.eclipse,運行時間較長
完成后,在c:\jbpm-4.2目錄下生成一個eclipse目錄
注意:如果沒有不用ant配置eclipse,安裝下面的GPD時,提示出錯,點擊確定后,GPD依然可以使用,不知道為什么。
6.配置流程設計器GPD
啟動eclipse,在Eclipse里添加更新站點的方法:
幫助 --> 安裝新軟件...
點擊 添加...
在 添加站點 對話框中,單擊 壓縮包...
找到 install/src/gpd/jbpm-gpd-site.zip 并點擊 '打開'
點擊 確定 在 添加站點 對話框中,會返回到 '安裝'對話框
選擇出現(xiàn)的 jPDL 4 GPD 更新站點,全部選中
點擊 下一步.. 然后點擊 完成
接受協(xié)議
當它詢問的時候重啟eclipse
7.配置elcipse工程
配置jBPM:
點擊 Window --> Preferences
選擇 JBoss jBPM --> jBPM-4.2 --> Runtime Locations
點擊 Add...
在 Add Location 對話框中,輸入一個名字,比如 jBPM-4.2 然后點擊 Search...
在 Browse For Folder 對話框中,選擇你的jbpm-4.2根目錄,然后點擊 OK
點擊 OK 在 Add Location 對話框中
8.定義一個用戶庫
用戶庫用來放置jBPM的庫文件。 如果你創(chuàng)建一個新工程, 只需要將用戶庫全部添加到build path
點擊窗口 --> 屬性(Windows --> Preferences)
選擇Java --> 創(chuàng)建路徑 --> 用戶類庫(Java --> Build Path --> User Libraries)
點擊新建(New)
類型名字jBPM Libraries
點擊添加JARs(Add JARs...)
找到jBPM安裝程序下的lib目錄
選擇lib下的所有jar文件并點擊打開(Open)
選擇jBPM Libraries作為入口
重新點擊添加JARs(Add JARs)
在jBPM的安裝程序的根目錄下選擇jbpm.jar文件
點擊打開(Open)
在jbpm.jar下選擇源碼附件(Source attachment)作為入口
點擊編輯(Edit)
在源碼附件的配置(Source Attachment Configuration)對話框中,點擊目錄(External Folder...)
找到jBPM安裝程序下的src目錄
點擊選擇(Choose)
點擊兩次'確定'(Ok)會關閉所有對話框
9.創(chuàng)建一個jbpm demo
創(chuàng)建一個例子,并將工作流程定義保存到數(shù)據(jù)庫中
(1)創(chuàng)建一個java Project,起名“ myjbpm ”,然后就可以單擊“完成”了
(2)將c:\jbpm-4.2\examples\src中的所有配置文件復制到myjbpm工程中的根目錄下
jbpm.cfg.xml
jbpm.hibernate.cfg.xml
jbpm.mail.properties
jbpm.mail.templates.examples.xml
logging.properties
(3)修改jbpm.hibernate.cfg.xml
hibernate.cfg.xml 的默認設置是用 HSQL ,這是一個內存數(shù)據(jù)庫,這種內存數(shù)據(jù)庫用來代替項目實際所用的數(shù)據(jù)庫來做單元測試挺不錯的。不過我們這里是要試試用 MySQL 、 Oracle
MySQL 的更改如下:
<property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="hibernate.connection.url">jdbc:mysql://localhost:3306/jbpm</property>
<property name="hibernate.connection.username">root</property>
<property name="hibernate.connection.password">123456</property>
Oracle 的更改如下:
<property name="hibernate.dialect">org.hibernate.dialect.OracleDialect</property>
<property name="hibernate.connection.driver_class">oracle.jdbc.driver.OracleDriver</property>
<property name="hibernate.connection.url">jdbc:oracle:thin:@192.168.123.10:1521:wxxrDB</property>
<property name="hibernate.connection.username">xiong</property>
<property name="hibernate.connection.password">xiong</property>
(4)定義流程
創(chuàng)建流程的定義文件是 pd.jpdl.xml,將下面代碼復制到文件中
------------------------------------------------------------------------------------------
<?xml version="1.0" encoding="UTF-8"?>
<process name="pd" xmlns="http://jbpm.org/4.0/jpdl">
<start name="start1" g="207,62,48,48">
<transition name="to state1" to="state1" g="-59,-17"/>
</start>
<end name="end1" g="208,293,48,48"/>
<state name="state1" g="185,155,92,52">
<transition name="to end1" to="end1" g="-47,-17"/>
</state>
</process>
------------------------------------------------------------------------------------------
(5)布置jbpm
import junit.framework.TestCase;
import org.jbpm.api.Configuration;
import org.jbpm.api.ExecutionService;
import org.jbpm.api.HistoryService;
import org.jbpm.api.ManagementService;
import org.jbpm.api.ProcessEngine;
import org.jbpm.api.RepositoryService;
import org.jbpm.api.TaskService;
public class ServicesTest extends TestCase {
public void testObtainServicesAndDeployProcess() {
Configuration configuration = new Configuration();
ProcessEngine processEngine = configuration.buildProcessEngine();
RepositoryService repositoryService = processEngine.getRepositoryService();
ExecutionService executionService = processEngine.getExecutionService();
TaskService taskService = processEngine.getTaskService();
HistoryService historyService = processEngine.getHistoryService();
ManagementService managementService = processEngine.getManagementService();
// 開始部署一個新的流程文件
String deploymentId = repositoryService.createDeployment().addResourceFromClasspath("pd.jpdl.xml").deploy();
}
}
無論是 MySQL 還是 Oracle ,
jbpm4_deployment表,你會發(fā)現(xiàn)多了一條記錄
jbpm4_deployprop表會多了三條記錄,對應id,key,version
jbpm4_lob 表會多了一條記錄,保存流程圖
參考文獻:
1.bestyanghui. JBPM4.1配置實用過程. http://blog.csdn.net/bestyanghui/archive/2009/10/12/4656914.aspx
2.熊熊之家. jbpm4開發(fā)步驟. http://hi.baidu.com/freshman0502/blog/item/092bab19ea68a873dab4bd91.html
posted on 2009-12-03 19:48
周銳 閱讀(821)
評論(1) 編輯 收藏 所屬分類:
Java 、
jBPM