使用JBoss jBPM实现流程访问和执行的授权
2010-05-11 00:00:00 来源:WEB开发网核心提示: jBPM PVM由一组提供PVM功能的服务组成,主要的PVM服务包括:仓储服务,使用JBoss jBPM实现流程访问和执行的授权(3),提供一组查看和管理部署仓储的方法执行服务,提供一组查看和管理运行中流程执行(execution)的方 法,把业务流程部署到PVM,这种方法使得扩展流程定义可以通
jBPM PVM由一组提供PVM功能的服务组成。主要的PVM服务包括:
仓储服务,提供一组查看和管理部署仓储的方法
执行服务,提供一组查看和管理运行中流程执行(execution)的方 法。
管理服务,提供一组查看和管理工作(job)的方法
任务服务,提供一组查看和管理用户任务(task)的方法。
历史服务,提供一组访问运行中和已完成流程执行的历史信息的方法。
这组可用服务和实现这些服务的类(使用前面说的绑定)被配置成流程引擎的上下文。
服务执行被实现成一组命令(command),它们作为服务方法执行的一部分被调用。命令的实际执行由命令服务控制。
命令服务在命令服务上下文中被配置成一组拦截器,实现横切关注点,环绕(around)命令调用(命令执行管线)。缺省的jBPM分发包在命令执行管线中 携带了以下拦截器:
重试(Retry)拦截器负责重试命令执行
环境(Environment)拦截器负责在必要时把jBPM上下文注入命 令执行中
事务(Transaction)拦截器负责介入命令调用的事务边界划分。
拦截器是将jBPM移植到不同环境以及引入其他横切关注点的核心机制。
命令执行一般会利用环境,它也是可配置的。典型的环境组件有:
仓储会话
DB会话
消息会话
定时器会话
历史会话
邮件会话
可以添加其他会话来扩展PVM的功能。
最后,部署管理器配置允许指定一组部署器,它们依次执行,把业务流程部署到PVM。这种方法使得扩展流程定义可以通过实现额外的部署步骤完成,无需覆盖 jBPM分发包自带的部署器。
整个PVM的架构如图1示:
更多精彩
赞助商链接