JBPM4开发详解:五步走流程

4星 · 超过85%的资源 需积分: 9 6 下载量 118 浏览量 更新于2024-09-22 收藏 24KB DOCX 举报
"JBPM4是一个轻量级的工作流管理系统,本资源主要介绍了JBPM4的基本开发步骤,包括定义流程、部署流程、启动流程、执行流程和完成任务,并详细解析了相关服务接口的功能。" 在JBPM4中,开发工作流应用主要涉及以下几个关键步骤: 1. **定义流程**: 这是工作流开发的第一步,通常通过流程定义语言(如JPDL)来设计流程图。流程定义描述了工作流中的各个节点、任务、决策和流转规则。例如,使用"Dormitoryorder.jpdl.xml"文件定义了一个名为"Dormitoryorder"的流程。 2. **部署流程**: 部署流程是将流程定义文件上传到JBPM4的流程仓库,以便后续的启动和执行。这可以通过RepositoryService接口完成,如`RepositoryService.createDeployment().addResourceFromClasspath("Dormitoryorder.jpdl.xml").deploy();`这段代码所示,它将类路径下的"Dormitoryorder.jpdl.xml"资源部署到仓库。 3. **启动流程**: 使用ExecutionService提供的`startProcessInstanceByKey`方法启动流程实例。例如,`ProcessInstance processInstance = ExecutionService.startProcessInstanceByKey(“Dormitoryorder”, map, “SQ0010001”);`表示以"Dormitoryorder"为标识启动流程,传入的map用于设置流程变量,"SQ0010001"作为业务关联的申请单号。 4. **执行流程**: 在流程执行过程中,可能需要根据业务逻辑推进流程。`signalExecutionById(executionId);`方法用于发送信号来执行流程中的某个特定节点,例如处理一个等待事件。 5. **完成任务**: 任务的完成通过TaskService接口完成。`TaskService().completeTask(taskid, “to二级审核“);`这个例子中,taskid指定了要完成的任务,"to二级审核"则定义了流程的下一个流向。 除了上述步骤,JBPM4还提供了几个核心服务接口: - **RepositoryService**: 负责流程资源管理,如部署、查询和删除流程定义,是流程定义与运行时之间的桥梁。 - **ExecutionService**: 提供流程实例的操作,如启动流程实例、推进流程、设置和查询流程变量,是与运行中流程交互的主要接口。 - **TaskService**: 专注于任务管理,包括任务的创建、提交、查询、保存和删除,以及任务分配和完成。 - **HistoryService**: 提供对流程历史数据的查询,如已结束的流程实例和活动实例,便于审计和分析。 - **InterfaceManagementService**: 主要用于管理定时任务和其他后台作业,比如调度和控制Job。 - **IdentityService**: 用于身份认证和权限管理,确保只有具备相应权限的用户才能执行特定任务或操作。 理解并熟练运用这些服务接口,开发者能够构建出灵活且功能强大的工作流应用程序,满足企业中各种业务流程自动化的需求。
2014-03-15 上传
.1、安装JDK 1.2、安装Ant Ant 是使用 jBPM 必须的一个工具。 jBPM 中的很多操作都要用到 Ant 。 安装方法: ( 1 )先下载: 为了执行ant脚本,你需要1.7.0或更高版本的apache ant: http://ant.apache.org/bindownload.cgi ( 2 )解压到 D:\ant (当然其他目录也可以)。 ( 3 )设置如下系统变量: ANT_HOME=d:\ant 。 ( 4 )把 %ANT_HOME%\bin 加入到系统变量 PATH 中。 安装 jBPM jBPM 的下载地址: http://sourceforge.net/project/showfiles.php?group_id=70542&package_id=268068 2 、建库 MySQL 中创建一个库,库名: jbpmdb 3 、生成建表的 SQL 语句并建表 这个构建文件${jbpm.home}/db/build.xml包含了脚本 用来创建和删除数据库结构的操作。 进入到这个目录下,运行ant -p 可以获得更多细节。 你的数据库中创建表结构: 首先,更新${jbpm.home}/db/jdbc中的数据库配置文件。 然后,在D:\jbpm-4.0\db\build.xml 更改为 mysql 然后在db目录下执行ant create.jbpm.schema 可以看到 MySQL 客户端中执行“ mysql.create.sql ”脚本,这样 将在 jbpmdb 库中创建一个个的数据表。 --------------------------------------------------------------------- 安装 jBPM 4的 Eclipse 开发插件 jBPM 4的 Eclipse 开发插件 只有GPD 流程设计器(GPD) 图形化流程设计器(GPD)使用Eclipse作为其平台, 并把GPD插件安装到eclipse上。 使用Eclipse软件升级(Software Update)机制安装设计器是非常简单的。 在gpd目录下有一个gpd/jbpm-gpd-site.zip文件, 这就是更新站点(archived update site)的 压缩包。 在Eclipse里添加更新站点的方法: 帮助 --> 安装新软件... 点击 添加... 在 添加站点 对话框中,单击 压缩包... 找到 gpd/jbpm-gpd-site.zip 并点击 '打开' 点击 确定 在 添加站点 对话框中,会返回到 '安装'对话框 选择出现的 jPDL 4 GPD 更新站点 点击 下一步.. 然后点击 完成 接受协议 当它询问的时候重启eclipse 5 配置jBPM运行时 点击 Window --> Preferences 选择 JBoss jBPM --> jBPM 4 --> Runtime Locations 点击 Add... 在 Add Location 对话框中,输入一个名字,比如 jbpm-4.0 然后点击 Search... 在 Browse For Folder 对话框中,选择你的jbpm根目录,然后点击 OK 点击 OK 在 Add Location 对话框中 6 定义jBPM用户库 如何在你的工作空间定义一个用户库, 用来放置jBPM的库文件。 如果你创建一个新工程, 只需要将用户库全部添加到build path下 点击窗口 --> 属性(Windows --> Preferences) 选择Java --> 创建路径 --> 用户类库(Java --> Build Path --> User Libraries) 点击新建(New) 类型名字jBPM Libraries 点击添加JARs(Add JARs...) 找到jBPM安装程序下的lib目录 选择lib下的所有jar文件并点击打开(Open) 选择jBPM Libraries作为入口 重新点击添加JARs(Add JARs) 在jBPM的安装程序的根目录下选择jbpm.jar文件 点击打开(Open) 在jbpm.jar下选择源码附件(Source attachment)作为入口 点击编辑(Edit) 在源码附件的配置(Source Attachment Configuration)对话框中,点击目录(External Folder...) 找到jBPM安装程序下的src目录 点击选择(Choose) 点击两次'确定'(Ok)会关闭所有对话框 7  jBPM 的 demo 新建jBPM项目 主菜单“文件->新建->项目”,在弹出的对话框里,有“ java Project ”项 选上好,单击“下一步”,起个名“ myjbpm ”,然后就可以单击“完成”了。然后手动 创建src/test/config copy D:\jbpm-4.0\examples\src 2009-07-07 15:40               546 jbpm.cfg.xml 2009-07-07 15:40             1,085 jbpm.hibernate.cfg.xml ...... .....