直入主题:
一、导入SQL文件
选择数据库,我使用的是ORACLE10G for win7(我自己个修改的,对数据库版本没有要求) ,找到数据库文件《jbpm-4.3/install/src/db/create/jbpm.oracle.create.sql》 我这里使用的是这个SQL文件
导入SQL文件(这个地球上的程序员都知道)。导入成功!
二、创建工程
承接上文(上一篇日志)我在my eclipse 下 install jbpm plugin 。创建一个WEB工程(以后要和VIEW互动,所以没有建JAVA PROJECT)
从jbpm4.3的rar文件中将jbpm-4.3/examples/src 下的
几个文件copy到工程的src下。
将lib(jbpm4.3根目录下)的相关JAR COPY拷贝过来
将jbpm.jar(在jbpm4.3根目录下)拷贝到lib下
三、定义新工作流程
新建个package 右键选择 JBPM 4 Process Definition 点击进行流程定义,
左边是节点和连接符等定义按钮(以前使用过 workflow 的会感觉到有些亲戚)。
这个流程是我简单画的,画完后点击保存(这里边注意一下 点击空白处的时候 右边会提示创建流程定义名称和版本号等信息,这里暂时先不要写版本号,我写了一下出错了,可能是小数点的原因,至于工作流程版本管理以后再讲)。
四、创建jdbc
打开jbpm.hibernate.cfg.xml文件 去掉原来的数据源定义,我这里填写是oracle的数据源
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<property name="hibernate.hbm2ddl.auto">create-drop</property>
<property name="hibernate.format_sql">true</property>
<property name="connection.driver_class">oracle.jdbc.driver.OracleDriver
</property>
<property name="dialect">org.hibernate.dialect.Oracle9Dialect</property>
<property name="myeclipse.connection.profile">wf</property>
<property name="connection.url">jdbc:oracle:thin:@localhost:1521:orcl</property>
<property name="connection.username">orcl_wf</property>
<property name="connection.password">orcl</property>
<!--下面部分是自带的-->
<mapping resource="jbpm.repository.hbm.xml" />
<mapping resource="jbpm.execution.hbm.xml" />
<mapping resource="jbpm.history.hbm.xml" />
<mapping resource="jbpm.task.hbm.xml" />
<mapping resource="jbpm.identity.hbm.xml" />
</session-factory>
</hibernate-configuration>
点击保存。
五、创建实例
package org.jbpm.mytest;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.jbpm.api.Configuration;
import org.jbpm.api.ProcessEngine;
import org.jbpm.api.RepositoryService;
public class Test {
private static RepositoryService repositoryService = null;
private static Logger _log = LoggerFactory.getLogger(Test.class);
public static void main(String args[]) throws Exception {
//初始化流程
ProcessEngine conf = new Configuration().buildProcessEngine();
RepositoryService repositoryService = conf.getRepositoryService();
String flowid = repositoryService.createDeployment().addResourceFromClasspath("org/jbpm/mytest/test.jpdl.xml").deploy();
if(flowid!=null){
_log.info("TEST工作流程:初始化流程成功");
}
}
}
输出结果:
18:18:37,489 FIN | [HibernateSessionResource] ----- committing hibernate tx 33179918 -------------------------------------------------------
18:18:37,494 INF | [Test] TEST工作流程:初始化流程成功