`

JBPM3中文用户手册——第一章:介绍

阅读更多

[译:liuu   Blog: liuu.iteye.com E-mail: liuu9(a)163.com   欢迎交流指正,保留除复制外的其他权利,本译文尚未征得原文作者同意]

1       介绍

JBoss jBPM是一个灵活的、可扩展的流程语言框架,而jPDL是基于这个公共框架之上的流程语言,这是一种直观的流程语言,它使用任务、异步通讯等待状态、定时器和自动动作等,图形化地表述业务流程。为了将这些操作结合起来,jBPM使用了最强大的和可扩展的流控制机制。

 

jPDL依赖性极小,可以像使用普通Java库一样使用它。不过,通过部署到J2EE应用服务器集群上,它同样可以在那些需要极限处理能力的苛刻环境下使用。

 

jPDL可以配置使用任何类型的数据库,并部署到任意的应用服务器上。

1.1    概述

核心的工作流和业务流程管理功能被打包在一个简单的Java库中,这个库为向jBPM数据库中保存、更新和检索流程信息提供服务。

 

图表 1.1jPDL组件概览

 

 

 

1.2    jPDL套件

初学者工具包包含了全部的jBPM组件,并打包在一起方便下载。包括:

l         config为标准java环境准备的配置文件

l         db:创建数据库结构的SQL脚本

l         designer:图形化编写jpdl流程的eclipse插件

l         doc:用户指南和Javadocs

l         examples:示例

l         lib jbpm依赖的库

l         server:预安装好的JBoss服务器,包含jbpmweb应用控制台

l         srcjbpm和身份(identity)组件的java源代码

 

预配置的JBoss应用服务器已经安装如下组件:

l         Web控制台(web consoleWAR包,Jbpm管理员和流程参与者,都可以使用这个控制台。

l         作业执行器(job executor,它执行定时器和异步消息。在Web控制台应用中,配置了一个Servlet上下文监听器,用于启动作业执行器,它维护一个线程池,监控并执行定时器和异步消息。

l         Jbpm数据库表:进程内Hypersonic数据库,包含了jBPM的表,

l         示例流程,已部署到jbpm数据库。

l         身份组件,这是Web控制台的一部分。相关的表(以JBPM_ID_为前缀的表)已经在数据库建好。

 

 

1.3    jPDL图形化流程设计器

jPDL还包含一套图形化设计工具。这个设计器是一个用于编写业务流程的图形化工具,它是一个Eclipse插件。

 

图形化设计工具是最重要特征,是它包含对业务分析人员和技术开发人员两方面的工作支持,这使得我们可以平滑地从业务流程建模转化到实际的实现。

 

这个插件可以通过标准的Eclipse软件更新机制从一个本地更新站点(一个普通zip文件)安装。在JBossToolsJBoss DeveloperStudioSOA Platform中,也打包了jPDL图形化流程设计器插件。

1.4    jBPM Web控制台

jBPMWeb控制台服务于两个目的。首先,它作为一个主要的用户接口,提供与流程执行过程中产生的运行时任务进行交互的能力;其次,它是一个管理和监控平台,允许查看和操作运行时实例;第三个功能是业务活动监控(Business Activity Monitoring),对流程执行的统计,这些信息,对于管理者找出瓶颈,或做出优化很有用。

1.5    jBPM核心组件

jBPM的核心组件是一个纯JavaJ2SE)软件,用于管理流程定义和流程实例执行的运行时环境。

 

jBPM是一个Java库。因此,它可以在任何java环境中使用,如Web应用、Swing应用、EJBWeb服务等等。jBPM库也可以暴露为无状态会话BeanSLSB),这样允许集群式的部署和对极端高性能的可伸缩性。无状态会话BeanJ2EE1.4规范编写,因此可以部署到任何标准的应用服务器上。

 

依据你使用的功能,jBPM核心组件包(lib/jbpm-jpdl.jar)可能依赖某些第三方的库,如hibernatedom4j等。我们做了极大的努力,让你只在必需的时候,才需要依赖这些库。进步的依赖描述,见“第4章,部署”。

 

jBPM内部使用Hibernate进行持久。除了传统的对象/关系映射,Hibernate还消除了不同数据库和SQL方言之间的差异,使得jBPM可以跨所有流行数据库移植。

 

jBPM API可以从你项目里的任意自定义Java程序中访问,比如Web应用、EJBWeb服务组件、消息驱动Bean或其它Java组件。

 

 

1.6    jBPM身份标识(identity)组件

JBoss jbpm能够与任何包含用户和其它机构信息的公司目录集成。但为了那些没有简易可用的机构信息组件的项目,jBPM包含了这个组件。这个身份标识组件中使用的模型,较之传统的servlet-ejb-portlet模型更丰富。

 

更多信息见“身份标识组件”一节。

1.7    jBPM作业执行器

作业执行器是一个在标准Java环境下,监控和执行作业的组件。作业用来执行定时器和异步消息。在企业级环境中,JMSEJB定时器服务也可以用于这个目的。但相对它们,作业执行器可以在没有JMSEJB的环境下使用。

 

作业执行器组件打包在核心jbpm-jpdl库中,但它需要部署于下面环境之一:要么在Web应用的部署描述符中,注册作业执行器启动程序(JobExecutorLauncher Servlet上下监听器,用于在Servlet上下文的创建和销毁时,启动和停止作业执行器;要么启动一个单独的JVM运行作业执行器主程序。

  • 大小: 49 KB
分享到:
评论

相关推荐

    JBPM采购申请系统——08_JBPM流程节点.7z

    JBPM采购申请系统——08_JBPM流程节点.7z JBPM采购申请系统——08_JBPM流程节点.7z JBPM采购申请系统——08_JBPM流程节点.7z JBPM采购申请系统——08_JBPM流程节点.7z JBPM采购申请系统——08_JBPM流程节点.7z JBPM...

    JBPM采购申请系统——12_JBPM异步(一).7z

    JBPM采购申请系统——12_JBPM异步(一).7z JBPM采购申请系统——12_JBPM异步(一).7z JBPM采购申请系统——12_JBPM异步(一).7z JBPM采购申请系统——12_JBPM异步(一).7z JBPM采购申请系统——12_JBPM异步(一).7z JBPM...

    JBPM采购申请系统——21_JBPM4.0与JBPM3.0差异(一).7z

    JBPM采购申请系统——21_JBPM4.0与JBPM3.0差异(一).7z JBPM采购申请系统——21_JBPM4.0与JBPM3.0差异(一).7z JBPM采购申请系统——21_JBPM4.0与JBPM3.0差异(一).7z JBPM采购申请系统——21_JBPM4.0与JBPM3.0差异(一)...

    jBPM4.1中文用户手册.pdf

    jBPM4.1中文用户手册.pdf

    JBPM采购申请系统——05_构建JBPM数据库.7z

    JBPM采购申请系统——05_构建JBPM数据库.7z JBPM采购申请系统——05_构建JBPM数据库.7z JBPM采购申请系统——05_构建JBPM数据库.7z JBPM采购申请系统——05_构建JBPM数据库.7z JBPM采购申请系统——05_构建JBPM...

    JBPM采购申请系统——02_Eclipse与JBPM.7z

    JBPM采购申请系统——02_Eclipse与JBPM.7z JBPM采购申请系统——02_Eclipse与JBPM.7z JBPM采购申请系统——02_Eclipse与JBPM.7z JBPM采购申请系统——02_Eclipse与JBPM.7z JBPM采购申请系统——02_Eclipse与JBPM.7z ...

    JBPM采购申请系统——06_JBPM版本控制及Token对象.7z

    JBPM采购申请系统——06_JBPM版本控制及Token对象.7z JBPM采购申请系统——06_JBPM版本控制及Token对象.7z JBPM采购申请系统——06_JBPM版本控制及Token对象.7z JBPM采购申请系统——06_JBPM版本控制及Token对象.7z ...

    JBPM采购申请系统——17_JBPM采购申请系统(一).7z

    JBPM采购申请系统——17_JBPM采购申请系统(一).7z JBPM采购申请系统——17_JBPM采购申请系统(一).7z JBPM采购申请系统——17_JBPM采购申请系统(一).7z JBPM采购申请系统——17_JBPM采购申请系统(一).7z JBPM采购申请...

    JBPM采购申请系统——14_JBPM开发报销系统(一).7z

    JBPM采购申请系统——14_JBPM开发报销系统(一).7z JBPM采购申请系统——14_JBPM开发报销系统(一).7z JBPM采购申请系统——14_JBPM开发报销系统(一).7z JBPM采购申请系统——14_JBPM开发报销系统(一).7z JBPM采购申请...

    JBPM采购申请系统——19_JBPM采购申请系统(三).7z

    JBPM采购申请系统——19_JBPM采购申请系统(三).7z JBPM采购申请系统——19_JBPM采购申请系统(三).7z JBPM采购申请系统——19_JBPM采购申请系统(三).7z JBPM采购申请系统——19_JBPM采购申请系统(三).7z JBPM采购申请...

    JBPM采购申请系统——16_JBPM开发报销系统(三).7z

    JBPM采购申请系统——16_JBPM开发报销系统(三).7z JBPM采购申请系统——16_JBPM开发报销系统(三).7z JBPM采购申请系统——16_JBPM开发报销系统(三).7z JBPM采购申请系统——16_JBPM开发报销系统(三).7z JBPM采购申请...

    JBPM采购申请系统——13_JBPM异步(二).7z

    JBPM采购申请系统——13_JBPM异步(二).7z JBPM采购申请系统——13_JBPM异步(二).7z JBPM采购申请系统——13_JBPM异步(二).7z JBPM采购申请系统——13_JBPM异步(二).7z JBPM采购申请系统——13_JBPM异步(二).7z JBPM...

    jBPM 4.4中文用户手册

    jBPM 4.4用户手册 翻译官方文档 JBoss jBPM Teams 4.4 译者: Lingo 首页: http://www.family168.com/ 论坛: http://old.family168.com/bbs EMAIL: lingosurf168@gmail.com 2009年11月1日 1. 导言 1.1. 许可...

    JBPM采购申请系统——07_JBPM中的脚本语言.7z

    JBPM采购申请系统——07_JBPM中的脚本语言.7z JBPM采购申请系统——07_JBPM中的脚本语言.7z JBPM采购申请系统——07_JBPM中的脚本语言.7z JBPM采购申请系统——07_JBPM中的脚本语言.7z JBPM采购申请系统——07_JBPM...

    JBPM采购申请系统——20_JBPM4.0使用及特性.7z

    JBPM采购申请系统——20_JBPM4.0使用及特性.7z JBPM采购申请系统——20_JBPM4.0使用及特性.7z JBPM采购申请系统——20_JBPM4.0使用及特性.7z JBPM采购申请系统——20_JBPM4.0使用及特性.7z JBPM采购申请系统——20_...

    JBPM采购申请系统——22_JBPM4.0与JBPM3.0差异(二).7z

    JBPM采购申请系统——22_JBPM4.0与JBPM3.0差异(二).7z JBPM采购申请系统——22_JBPM4.0与JBPM3.0差异(二).7z JBPM采购申请系统——22_JBPM4.0与JBPM3.0差异(二).7z JBPM采购申请系统——22_JBPM4.0与JBPM3.0差异(二)...

    JBPM采购申请系统——11_讲任务调度.7z

    JBPM采购申请系统——11_讲任务调度.7z JBPM采购申请系统——11_讲任务调度.7z JBPM采购申请系统——11_讲任务调度.7z JBPM采购申请系统——11_讲任务调度.7z JBPM采购申请系统——11_讲任务调度.7z JBPM采购申请...

    JBPM采购申请系统——23_综合技术应用.7z

    JBPM采购申请系统——23_综合技术应用.7z JBPM采购申请系统——23_综合技术应用.7z JBPM采购申请系统——23_综合技术应用.7z JBPM采购申请系统——23_综合技术应用.7z JBPM采购申请系统——23_综合技术应用.7z JBPM...

    JBPM采购申请系统——15_JBPM开发报销系统(二).7z

    JBPM采购申请系统——15_JBPM开发报销系统(二).7z JBPM采购申请系统——15_JBPM开发报销系统(二).7z JBPM采购申请系统——15_JBPM开发报销系统(二).7z JBPM采购申请系统——15_JBPM开发报销系统(二).7z JBPM采购申请...

    JBPM采购申请系统——18_JBPM采购申请系统(二).7z

    JBPM采购申请系统——18_JBPM采购申请系统(二).7z JBPM采购申请系统——18_JBPM采购申请系统(二).7z JBPM采购申请系统——18_JBPM采购申请系统(二).7z JBPM采购申请系统——18_JBPM采购申请系统(二).7z JBPM采购申请...

Global site tag (gtag.js) - Google Analytics