今天演示的JBPM的启动,说明一下JBPM的启动过程。以及简单的和Spring集成。
程序采用的是TestCase方式来演示的,当然Web应用是很重要的,但是其实在Web应用上只要自己写几个类就可以把Spring和JBPM对接起来使用了,所以后面大部分都将使用TestCase,小部分会有Web的例子,希望大家理解。
所有的例子我都会做在一个工程里,所以这个工程的打包文件,我会不断的更新,请大家下载。
需要准备的东西:
JBPM SDK,从JBPM官网上下载。
Eclipse,开发环境,插件(可选)包括:Spring、M2Eclipse(Maven)、WST(WebStandardTools)
jar依赖,如果多ant和maven熟悉的朋友推荐用maven下载,如果不熟悉的,请看附件包里面的dependencies.txt文件列表,然后去下载,谢谢。
数据库,采用HSQLDb来演示,已经包含在工程的lib下了。
范例工程:JBPMSamples.zip
JBPM启动过程简要说明:
- JBPM启动,其实就是JBPM获取需要的配置以及依赖的组件(主要是Hiberante)的配置。
-
环境中一些文件来源和修改的说明:
- src/hibernate.cfg.xml:jbpm-jpdl-3.2.GA\config\hibernate.cfg.xml,由于不使用identity部分所以,注释掉配置里“identity mappings”的部分
- src/log4j.xml:jbpm-jpdl-3.2.GA\config\log4j.cfg.xml,修改了部分配置。
- res/jbpm.jpdl.hsqldb.sql:拷贝自jbpm-jpdl-3.2.GA\db\jbpm.jpdl.hsqldb.sql,给每句后面加上逗号,然后使用build.xml中任务initDb.hsqldb对数据库执行初始化。
- 样例代码:com.cnblogs.seewood.s01.ConfigurationTests:基于JUnit的测试范例,载入配置文件。
- 样例代码:com.cnblogs.seewood.s02.ConfigurationSpringTests:结合Spring的调用。
下面贴一些代码的样例:
com.cnblogs.seewood.s01.ConfigurationTests
1
package com.cnblogs.seewood.s01;
2
3
import org.apache.commons.logging.Log;
4
import org.apache.commons.logging.LogFactory;
5
import org.hibernate.Session;
6
import org.jbpm.JbpmConfiguration;
7
import org.jbpm.JbpmContext;
8
9
import junit.framework.TestCase;
10
11
2
3
4
5
6
7
8
9
10
11
1
package com.cnblogs.seewood.s02;
2
3
import org.hibernate.Session;
4
import org.hibernate.SessionFactory;
5
import org.jbpm.JbpmConfiguration;
6
import org.jbpm.JbpmContext;
7
import org.springframework.test.AbstractTransactionalDataSourceSpringContextTests;
8
9
2
3
4
5
6
7
8
9