首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 服务器 > 其他服务器 >

JBPM的几个小问题 希望大家讨论下

2012-03-31 
JBPM的几个问题 希望大家讨论下也许对大家都是简单的问题,希望大家慢慢看完,谢谢!一直听说JBPM 查了下资料

JBPM的几个问题 希望大家讨论下
也许对大家都是简单的问题,希望大家慢慢看完,谢谢!
一直听说JBPM 查了下资料也没查到太多,在网上找了些流程定义的例子看了下,初步理解如下:
一般一个流程有start-state 和一个end-state,中间有很多task-node ,descion,
流程也就是由这些关联起来,成了一个流程图。
  task-node中有 transition,transtion决定跳转到哪一个task-node,decision也有transition
  当然还有fork,join来一起构成一个流程。

我没有很深入的看,也没有下载包来试验,有几个问题如下:
 1 每个task-node中的task都会关联一段代码,也就是一些业务逻辑,但是每个task-node应该有相应的权限,
不可能一个task-node,每个人都可以执行,我在流程里面没有看到权限的定义,我想是不是权限在外部实现,
 2 一个流程可能会关系到不同的实例,(比如 一个请假流程,有2个人请假,那么就有2个实例,不同的人请假,
实例进行到不同的环节,可能一个已经审批过了,一个还没有审批通过,这些数据必然加以区分,)
关系到不同的实例就会涉及到不同的数据,那么jbpm是怎么处理的,
3 流程中会关系到一些约束,比如一个申请单,里面的数据金额大于5000就怎么,小于5000就怎么,在decision中
可以用一种表达式 描述,那么流程就会关系到实例中的数据,jbpm是怎么处理的,其实就是2有点类似,我也看到过
流程跳转的时候 一段代码processInstance.signal(); 可能processInstance会有流程实例的数据,但是数据
的形式是怎么样的列,在数据库中如何存储?
4 流程交互?

[解决办法]
2 一个流程可能会关系到不同的实例,(比如 一个请假流程,有2个人请假,那么就有2个实例,不同的人请假, 
实例进行到不同的环节,可能一个已经审批过了,一个还没有审批通过,这些数据必然加以区分,) 
关系到不同的实例就会涉及到不同的数据,那么jbpm是怎么处理的,
--------
每个流程实例必然关联着不同的业务实例,其关联可通过将业务实例比如请假条表中的一条纪录的标识列存入流程实例中,当进入任务节点(比如审批)时,相关页面是通过遍历所有它需要处理的任务实例,通过任务实例取得流程中先前存入的标识,取得业务实例(也就是读取表中的数据),然后进行处理

热点排行