1.前提条件
已经安装好 jdk1.6,并且配置好
已经下载好jbpm4.2,并且解压。
已经安装好tomcat6
已经安装好 mysql5.1
已经安装好 ant1.7
已经安装好 eclipse-jee-galileo-win32
2.设置ant的环境变量
ANT_HOME=D:/Program Files/Apache Software Foundation/apache-ant-1.7.0
path=%ANT_HOME%/bin
3.建立mysql的数据库和用户
建立数据库名字叫:myjbpm
用户:myjbpm
口令:myjbpm
授权用户访问此数据库
4.配置数据库,使用mysql,原来使用的是hsqldb
- 确认在{jbpm-4.2}/lib目录下,有mysql-connector-java.jar文件。
- 进入{jbpm-4.2}/install/jdbc目录修改文件mysql.properties文件,设置你自己的mysql数据库名、 用户名和密码
- 修改{jbpm-4.2}/install/build.xml,修改为<property name="database" value="mysql" /> <!-- {hsqldb | mysql | oracle | postgresql} -->
- 进入{jbpm-4.2}/install, 运行 ant create.jbpm.schema,将创建数据库脚本并在指定数据库中创建表
- 通过navicat(或者其他mysql客户端),访问myjbpm数据库。确认有jbpm4_开头的18个表单生成
5.在eclipse上配置流程设计器
这个过程比较麻烦,可以参考jbpm的官方文档文档,上面有详细描述。
file:///D:/Jar_Lib/jbpm-4.3/doc/userguide/html_single/index.html#gettingstartedquickly 。2.11.2章节
或者在线版本 http://www.family168.com/tutorial/jbpm4.0/html/installation.htm
6.创建一个简单应用:myjbpm
- 在eclipse上建立一个java项目,名字叫myjbpm
- 配置项目使用eclipse 下的jbpm的类包环境(通过项目的properties->java build path->libraries->add libray->user library ->jbpm libraries).或者把jbpm的jar文件复制到项目的lib目录下。
- 配置项目使用eclipse 下的junit的类包环境(通过项目的properties->java build path->libraries->add libray->junit->junit4).或者把junit的jar文件复制到项目的lib目录下。
- 将{jbpm-4.2}/examples/src中的所有配置文件复制到myjbpm工程中的src目录下
jbpm.cfg.xml
jbpm.hibernate.cfg.xml
jbpm.mail.properties
jbpm.mail.templates.examples.xml
logging.properties - 修改jbpm.hibernate.cfg.xml
<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/myjbpm</property>
<property name="hibernate.connection.username">myjbpm</property>
<property name="hibernate.connection.password">myjbpm</property> - 定义流程
创建流程的定义文件是 process.jpdl.xml,将下面代码复制到文件中
------------------------------------------------------------------------------------------
<?xml version="1.0" encoding="UTF-8"?>
<process name="pd" xmlns="http://jbpm.org/4.0/jpdl">
<start g="45,131,48,48" name="start1">
<transition g="-59,-17" name="to state1" to="state1"/>
</start>
<end g="435,129,48,48" name="end1"/>
<state g="227,128,92,52" name="state1">
<transition g="-47,-17" name="to end1" to="end1"/>
</state>
</process>
------------------------------------------------------------------------------------------ - 编写一个测试用例 ServicesTest
- 运行这个junit程序(run as junit test),我们在控制台上可以看见如下输出:
并且在
jbpm4_deployment表,你会发现多了一条记录
jbpm4_deployprop表会多了4条记录,对应langid,pdid,key,version
jbpm4_lob 表会多了一条记录,保存流程图
7. jBPM 的 ant 语法