JBPM中JPDL深入解析

本文详细介绍了JBPM中JPDL流程定义语言的架构设计与运行机制,包括XSD文件定义、绑定类编码、部署器配置以及如何扩展新活动类型。通过解析这些关键环节,读者能够更好地理解JPDL语言,为业务流程的灵活扩展奠定基础。

JBPMJPDL深入解析

流程引擎需要根据流程定义进行业务流程的流转,所以提供一种简单直观、易用方便、便于扩展的流程定义方式就显得直观重要了。JBPM提供了自己的一套流程定义语言JPDL,通过对JPDL的分析解决,我们可以了解其架构设计和运行机制,以便根据业务需求进行灵活的扩展。

JBPMJPDL架构设计

1. 定义相关的xsd文件(比如jpdl-4.0.xsdjpdl-4.2.xsdjpdl-4.3.xsdjpdl-4.4.xsd)。

Xsd定义了流程定义xml的整体架构,既xml中的元素和属性,其也就决定了我们定义的流程定义的xml的形式;同时在流程发布的时候也会使用xsd进行验证。

2. 定义并编码与xsd中定义的活动结点对应的binding类,用于解析相应流程定义xml 活动结点;

3. jbpm.jpdl.cfg.xml文件中定义最终负责管理解析xmldeployer

JBPMJPDL运行机制

1. XSD定义流程xml的元素和属性,控制了xml的整体结构

2. 引擎初始化时,加载jbpm.jpdl.bindings.xml中配置的binding类,为解析流程定义xml

做准备

3. 作好流程定义xml,并通过xsd进行整体的规则验证

4. 配置的xml解析类解析流程定义xml,同时根据相关的binding类解析不同的活动结点,并最终形成ProcessDifinitionImpl对象,并将该对象实例进行全局缓存

5. 定义的相关数据进行持久化

扩展新的活动类型

1. jpdl-4.4.xsd中添加下列代码

2. 开发自定义活动的binding

这里需要注意的是Tag的值一定要与xsd<element name=””>name的值相等

3. 开发自定活动的ActivityBehavior

4. jbpm.jpdl.bindings.xml中添加新增的binding

Ok ,我们现在新增好了一个新的活动类型!对于扩展以后活动的属性,先前的文章已经介绍,不在赘述!

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值