WEB开发网
开发学院软件开发Java 使用JBoss jBPM实现流程访问和执行的授权 阅读

使用JBoss jBPM实现流程访问和执行的授权

 2010-05-11 00:00:00 来源:WEB开发网   
核心提示: 除了以上更改,我们还想扩展流程实例查询,使用JBoss jBPM实现流程访问和执行的授权(2),好让用户可以通过指定某些流程变量的值来缩小查询结果,这种搜索的一个常见情况就是查询“由我启动的”流程,为定义在jbpm.cfg.xml中的基础PVM执行(execution)配

除了以上更改,我们还想扩展流程实例查询,好让用户可以通过指定某些流程变量的值来缩小查询结果。这种搜索的一个常见情况就是查询“由我启动的”流程。为 了确保这种查询总是可用,我们更改了启动流程实例命令的实现,显式地把当前用户ID加到了流程变量值的集合中。

最后,为了支持多种用户认证方法,我们实现了一个自定义的身份会话,它支持用程序来设置和访问当前用户的证书。其目的在于,把用户证书(ID和参与的组) 的获得和jBPM运行时对这种信息的使用分离开来。

我们的实现利用了非常强大和灵活的jBPM 4的配置机制,它让我们可以:

通过扩展现有jBPM类,最小化了自定义代码的数量,只实现我们扩展所需的额外功能

将我们的扩展实现成可以与jBPM 4类库一起使用的单独jar包,无需对现有库进行任何改变。

在深入我们的实现细节之前,我们首先要讨论一下我们大量使用的jBPM 4的配置。

jBPM 4的配置机制

jBPM的基础是流程虚拟机(PVM),它建立在自定义的依赖注入实现之上。依赖注入由非常强大的、基于XML的配置机制控制,这种机制用于创建标签和预定义接口相关的特定实现之间的绑定 (binding)。

这种机制的核心是jbpm.wire.bindings.xml文件,它描述了jBPM PVM的主要组件,包括:

基本类型

对象及引用

环境引用

Hibernate绑定

会话

服 务

部署器

拦截器

该文件是jBPM分发包的一部分。如果用户想增加自己的绑定(binding),他可以创建jbpm.user.wire.bindings.xml描述 它们,而不用修改jbpm.wire.bindings.xml文件。

这两个文件会被jBPM PVM在启动时读入并解析,为定义在jbpm.cfg.xml中的基础PVM执行(execution)配置而服务。jbpm.cfg.xml一般会包含 多个部分,描述了PVM执行的特定组件的配置。

上一页  1 2 3 4 5 6 7  下一页

Tags:使用 JBoss jBPM

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接