上接 : jBPM开发入门指南(3)
6.5
部署processdefinition.xml
我们要把
processdefinition.xml
的流程定义的数据部署到数据库中,因为
jBPM
在正式运行的时候不是去读
processdefinition.xml
文件,而是去读数据库中的流程定义。
这里写了一个个
JUnit
程序来部署
processdefinition.xml
,当然你用普通的
Java Main
也可以。
package
com.sample;
import
java.io.FileInputStream;
import
java.io.FileNotFoundException;
import
java.io.InputStream;
import
junit.framework.TestCase;
import
org.jbpm.JbpmConfiguration;
import
org.jbpm.JbpmContext;
import
org.jbpm.graph.def.ProcessDefinition;
/**
*
部署
processdefinition.xml
*
* @author
chengang
*
*/
public
class
DeployProcessTest
extends
TestCase {
/**
*
在本方法执行完毕后,检查
jbpm_processdefinition
表会多了一条记录
*
*
@throws
FileNotFoundException
*/
public
void
testDeployProcessDefinition() throws
FileNotFoundException
{
//
从
jbpm.cfg.xml
取得
jbpm
的配置
JbpmConfiguration
config = JbpmConfiguration.getInstance
();
//
创建一个
jbpm
容器
JbpmContext
jbpmContext
= config.createJbpmContext();
//
由
processdefinition.xml
生成相对应的流程定义类
ProcessDefinition
InputStream is =
new
FileInputStream("processes/simple/processdefinition.xml"
);
ProcessDefinition
processDefinition = ProcessDefinition.parseXmlInputStream
(is);
//
利用容器的方法将流程定义数据部署到数据库上
jbpmContext
.deployProcessDefinition(processDefinition);
//
关闭
jbpmContext
jbpmContext
.close();
}
}
运行此程序,在控制台打印了一些日志,通过。如果出错,仔佃阅读出错信息以判断错误原因,并确定你按照前面两节:“修改
hibernate.cfg.xml
”和“完善库引用”的内容做好了设置。
6.6
从数据库中的查看部署效果
无论是
MySQL
还是
Oracle
,查询
jbpm_processdefinition
表,你会发现多了一条记录,如下图
(
以
PLSQL Developer
的显示为例
)
依次检查各表我们可以发现有如下变化:
并由此简单判断出各表的作用,表中各字段的作用由字段名也能知晓一二。
jbpm_processdefinition
|
一个流程定义文件对应一条记录,可记录多个流程定义文件,可记录一个流程定义文件的对个版本。
|
jbpm_action
|
记录
ActionHandler
的对象实例(以名称为标识)
|
jbpm_delegation
|
记录了
ActionHandler
全类名,以便于用反射方式来加载
|
jbpm_envent
|
它的
transition
引用了
Jbpm_transition
表的
id
,再看其它字段,估计此表是表示流程转向事件的一个实例,或者是一个各表之间的联接表。
|
jbpm_node
|
流程结点
|
jbpm_transition
|
流程的转向定义
|
jbpm_variableaccess
|
流程中携带的变量。
ACCESS
字段是这些变量的读写权限
|
分享到:
相关推荐
**jBPM开发入门指南** jBPM,全称Java Business Process Management,是一个开源的工作流管理系统,用于管理和执行业务流程。它提供了强大的流程建模、执行、监控和优化功能,使得开发者可以灵活地构建和管理复杂的...
3. **jbpm开发指南** - **使用Eclipse集成开发**:jbpm提供了Eclipse插件,便于流程模型的图形化设计。 - **编写业务逻辑**:在流程中嵌入Java代码或使用MVEL表达式实现任务的逻辑处理。 - **监听器和事件**:...
【jbpm开发入门指南例子】 jbpm,全称是Java Business Process Management,是一个开源的工作流管理系统,用于构建业务流程应用。它提供了强大的流程定义、执行、监控和管理能力,广泛应用于企业的业务流程自动化中...
【jBPM开发入门指南】 jBPM(Java Business Process Management)是一个开源的工作流管理系统,用于构建和执行业务流程。它最初是一个独立的项目,后来被JBoss组织接纳,成为其产品线的一部分。jBPM旨在提供灵活、...
本指南将围绕jBPM的核心概念、安装配置、流程设计以及实战开发等方面进行详细介绍。 首先,我们要理解jBPM的核心概念。jBPM提供了工作流引擎,能够执行流程定义(通常以BPMN 2.0标准表示)。BPMN,即Business ...
### jBPM开发入门指南知识点概述 #### 一、jBPM简介与市场需求 - **jBPM**:jBPM是一种广泛应用于企业级应用程序的工作流管理系统的开源框架。随着业务流程复杂性的增加以及对自动化需求的增长,jBPM成为了众多...
标题所指的知识点为“jBPM开发入门指南”,这是一本指导用户如何入门学习和开发jBPM的指南手册。jBPM是一个企业级业务流程管理(BPM)解决方案,它允许用户定义、执行、监控和优化业务流程。jBPM与Hibernate的整合、...
JBPM开发指南JBPM开发指南JBPM开发指南
### jBPM4.4开发指南关键知识点解析 #### 一、工作流基础与概念 **1. 工作流定义** 工作流是指业务过程的部分或整体在计算机应用环境下的自动化,其目的是为了使在多个参与者之间按照某种预定义的规则传递文档、...
前篇说起要讲在JBPM中实现用户权限,但这段时间比较忙,一直拖着。这里先把jbpm自带的websale例子放上来,大伙先将就看看。这个例子我已经把它抽取了出去,网页部份丢弃了。在看的时候主要看WebsaleTest.java,看看...
在本指南中,首先以MySQL和Oracle为例,讲解如何进行jBPM的数据库初始化操作。 对于MySQL,首先需要安装MySQL数据库。在安装完成后,创建一个名为"jbpm"的数据库。然后,获取jBPM的启动包,例如jbpm-starters-kit-...