jBPM学习笔记3--流程的部署
2011-01-11 10:57
232 查看
用户使用jPDL的流程设计器定义业务流程,当然,你也可以直接用文档编辑器直接编辑processdefinition.xml定义文件。定义文档是可以直接被ProcessDefinition类载入使用的,但在正式运行的系统中,流程定义信息更多是使用关系型数据库来存储。从流程定义文件将数据导入流程数据库的过程,我们称之为流程部署。
jPDL的流程部署文件包含processdefinition.xml的定义部分和Java处理器的代码部分,这些文件可以被一起打包成.jpdl的zip格式包而后上传服务器端。这个过程可以在流程设计器界面的“deployment”标签页中操作:
这里我们着重要讲述的是接受部署文件上载的服务器端配置。在jBPM3.2的包中带着一个jPDL的管理控制台web应用,默认名字为jbpm-console。该应用带有接受流程定义包部署的程序,但不是最小化的。实际上完成流程部署功能的,只是jbpm-jpdl.jar核心包中的一个servlet类:org.jbpm.web.ProcessUploadServlet
. 完成这个Servlet的成功部署,需要以下工作:
1. 配置web.xml,将servlet配置成启动时加载,如下:
2. 建立流程定义存储数据库表:
Demo中,我们使用的数据库是MySQL的,在E:/Java/tools/jbpm-jpdl-3.2.2/db/目录下有个jbpm.jpdl.mysql.sql数据库脚本文件。但我们不能直接导入该文件,
会提示有错误, 应为该文件的SQL语句末尾少了分号,在批量执行时,MySQL报错。需要在每一行SQL的末尾添加一个分号,这样就可以用source命令导入了。
3. 配置Hibernate.cfg.xml
由于jBPM的数据库持久化是依靠Hibernate进行的,因此需要配置Hibernate.cfg.xml使其适应我们的MySQL环境
4. Import需要的jar包
这里的jar包包括三部分:jbpm的核心包;Hibernate及其支撑包;MySQL的JDBC驱动包。
到此,我们的配置工作完成,这是实现jBPM流程部署服务端的最小化应用配置。
jPDL的流程部署文件包含processdefinition.xml的定义部分和Java处理器的代码部分,这些文件可以被一起打包成.jpdl的zip格式包而后上传服务器端。这个过程可以在流程设计器界面的“deployment”标签页中操作:
这里我们着重要讲述的是接受部署文件上载的服务器端配置。在jBPM3.2的包中带着一个jPDL的管理控制台web应用,默认名字为jbpm-console。该应用带有接受流程定义包部署的程序,但不是最小化的。实际上完成流程部署功能的,只是jbpm-jpdl.jar核心包中的一个servlet类:org.jbpm.web.ProcessUploadServlet
. 完成这个Servlet的成功部署,需要以下工作:
1. 配置web.xml,将servlet配置成启动时加载,如下:
<web-app> <servlet> <servlet-name>GDP Deployer Servlet</servlet-name> <servlet-class>org.jbpm.web.ProcessUploadServlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>GDP Deployer Servlet</servlet-name> <url-pattern>/upload/*</url-pattern> </servlet-mapping> </web-app>
2. 建立流程定义存储数据库表:
Demo中,我们使用的数据库是MySQL的,在E:/Java/tools/jbpm-jpdl-3.2.2/db/目录下有个jbpm.jpdl.mysql.sql数据库脚本文件。但我们不能直接导入该文件,
会提示有错误, 应为该文件的SQL语句末尾少了分号,在批量执行时,MySQL报错。需要在每一行SQL的末尾添加一个分号,这样就可以用source命令导入了。
3. 配置Hibernate.cfg.xml
由于jBPM的数据库持久化是依靠Hibernate进行的,因此需要配置Hibernate.cfg.xml使其适应我们的MySQL环境
<!-- hibernate dialect --> <property name="hibernate.dialect">org.hibernate.dialect.MySQLInnoDBDialect</property> <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property> <property name="hibernate.connection.url">jdbc:mysql://localhost:3306/linly</property> <property name="hibernate.connection.username">linly</property 4000 > <property name="hibernate.connection.password">coffee</property> <property name="hibernate.cache.provider_class">org.hibernate.cache.HashtableCacheProvider</property>
4. Import需要的jar包
这里的jar包包括三部分:jbpm的核心包;Hibernate及其支撑包;MySQL的JDBC驱动包。
到此,我们的配置工作完成,这是实现jBPM流程部署服务端的最小化应用配置。
相关文章推荐
- jBPM学习笔记5--简单流程测试剖析
- jBPM-jPDL学习笔记——流程设计与控制
- jbpm 笔记 流程部署
- OpenStack各组件逻辑关系、通信部署关系及工作流程学习笔记2017-11-16
- JBPM学习---JBPM流程的部署
- jBPM-jPDL学习笔记——流程设计与控制
- Activiti学习笔记三-开发部署bpmn流程文件
- jbpm4.4学习总结(二)部署流程到Mysql数据库
- activiti学习笔记(五) 流程部署
- jBPM-jPDL学习笔记——流程设计与控制
- JBPM创建数据库,流程定义以及发布学习笔记
- Activiti学习笔记四-开发部署zip格式的流程文件
- Jbpm笔记之一 -- 流程定义管理( 部署和定义查询、删除、查看流程图)
- jBPM-jPDL学习笔记——流程设计与控制
- jBPM学习之部署流程定义
- Java学习笔记01---可视化输入输出,数据类型转化,流程控制
- jBPM-jPDL学习笔记—框架设计简介(四)
- Java学习笔记001——学前准备、数据类型、运算符、流程控制语句
- Activiti 学习笔记六:流程执行历史记录
- java基础学习笔记第二天——流程控制