做jbpm一段时间,但是一直没来得及记下点什么,今天开始写点jbpm4.x的笔记。
首先介绍一下jbpm的一些理论知识。(参考jbpm4工作流应用开发指南)
企业信息化是每个现代企业构建强有力管理或生产后盾的一个基本途径,普通的流程已经不能满足复杂的企业应用,工作流逐渐流行起来,特别是在ERP(企业资源计划),CRM(客户关系管理),EAI(企业应用集成)等企业应用中,发挥了不可估量的作用,当然,互联网领域也有着很多类似的应用。
传统的工作流解决方案已经阻碍开发者的脚步,那么工作流引擎成了统一步伐的发令枪。
JBoss的jbpm可以说是现在最为流行的一种java工作流业务流程管理框架,是一个可扩展,灵活的能够实现工作流/业务流程管理的企业级开发框架,提供了流程定义,流程部署,流程执行,流程管理等功能。
前段时间一个前同事说学习jbpm时候吃了很多亏,倒腾了几天还在报错,我现在就从最开始怎样配置,怎样部署,一步步的记录jbpm的开发过程,也算是我再熟悉一下了(现在脑子想的事儿多,一时半会容易出现blank,好记性不如烂键盘!)。
一,这个东东虽然是jboss的,但是也支持tomcat的。你可以下载tomcat6或者jboss5,我建议先下载jbpm4.4,然后解压,解压后的文件夹就是你的jbpm工作目录,我就用${jbpm.home}来表示,然后下载一个jboss-5.1.0.GA.zip,并且把这个压缩文件,直接拷贝到${jbpm.home}/install/downloads下面去(其实tomcat是一样的道理)。你可以不拷贝进去,但是你不拷贝的话,等你ant的时候,它会自动的在网上下载这个版本的jboss,万能了ant啊(后面会提到)。
二,假如你不了解ant的话,我建议你看看我的另外一篇博文http://duyunfei.iteye.com/blog/857675,假如你没时间看,请继续。
ant说简单点,是一个构建部署程序的一把利剑,由于是基于java的开源产品,所以具有良好的移植性和易用性。首先,你下载一个最新ant版本,然后下载后解压,设置环境变量 ANT_HOME=E:\ant1.8.2,Path后面加上;E:\ant1.8.2\bin,启动cmd然后ant,出现build.xml does not exist! 成功。
此时你打开命令控制台,即cmd,进入目录${jbpm.home}/install,运行脚本:ant demo.setup.jboss,ok,别看这两步,它帮你完成了这些操作:
1,把jboss安装到${jbpm.home}的jboss-5.1.0.GA下。
2,把jbpm安装到jboss中。
3,安装HSQLDB,并在后台启动。
4,创建数据库表结构。
5,在后台启动jboss,你可以用http://localhost://8080访问,会出现jboss的首页。
6,根据示例(来自examples目录)创建一个examples.bar 业务流程归档,并把它发布到jbpm数据库中。
7,从${jbpm.home}/install/src/demo/example.identities.sql初始化用户和组。
有的书中说还把eclipse安装到${jbpm.home}/eclipse中,启动eclipse,安装jbpmweb控制台,安装signavio web设计器,但是我这人
貌似没这些。
此时你可以使用GPD(图形化流程设计器)这个机遇eclipse的客户端软件区进行流程建模,如何安装待会儿再讲,或者你可以通过
Signavio web设计器进行流程建http://localhost:8080/jbpmeditor/p/explorer,这时候,也可以使用jbpm控制台
http://localhost:8080/jbpm-console/,用下列用户之一进行登录(用户名/密码):
alex/password,mike/password,peter/password,mary/password
ant可以为我们办到很多事情,比如下载安装eclipse,jboss,tomcat等,但是惟独没有帮我们下载并安装数据库软件,如果要成功运行jbpm,你必须要修改一些配置文件,例如数据库对应的配置文件,在目录${jbpm.home}/install/jdbc中,这个目录列出了jbpm官方支持数据库类型的相应配置,根据你对数据库的选择配置相应的properties文件。例如mysql.properties的内容如下
jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/jbpmdb
jdbc.username=jbpm
jdbc.password=jbpm
oracle.properties的内容如下
jdbc.driver=oracle.jdbc.driver.OracleDriver
jdbc.url=jdbc:oracle:thin:@localhost:1521:jbpmdb
jdbc.username=jbpm
jdbc.password=jbpm
在install的build.xml文件中database可以自定义,默认是HSQLDB,可选值是mysql,oracle,postgresql,在ant的时候jboss.version可以指定为5.0.0GA或者5.0.0GA,jbpm4.3的默认是前者,jbpm4.4默认是后者,我们按照高版本来。如果要自定义这些参数值,可以在运行ant安装脚本时使用 -D指令,如:
ant -Ddatabase=postgresql demo.set.jboss,假如你刚才已经执行过了,现在务必把jboss的服务关了,而且得把mysql服务打开,并确保mysql.properties中的链接语句是正确的,才能重新执行成功。
执行成功后,你可以在mysql数据库中看到jbpmdb下面建立了许多表。在这儿不列出来了。
在这里提到一个重要的概念,执行ant的时候,会把jbpm安装到Jboss应用服务器中,这回把jbpm安装成一个jboss的服务,因此这台jboss上所有应用程序都可以使用这个安装的jbpm流程引擎。
在上面我们提到 Signavio 这个东西,它是基于web的流程设计器,输入
http://localhost:8080/jbpmeditor/p/explorer,可以进入管理页面。
配置它比较简单,大多数参数在web.xml中修改即可,你可以在jbpmeditor.war/WEB-INF/目录中找到,fileSystemRootDirectory很重要,
这个参数的值必须为一个物理上存在的本地目录,它指定了流程定义文件(*.jpdl.xml文件)存储的位置,比如我的这个参数显示的是
- <context-param>
- <description>Filesystem directory that is used to
- store models</description>
- <param-name>fileSystemRootDirectory</param-name>
- <param-value>F:/jbpm-4.4/signavio-repository</param-value>
- </context-param>
相关推荐
jbpm学习笔记:安装插件、配置环境、发布流程定义、查看流程定义
1 流程配置类数据库表: 2 1.1 JBPM_PROCESSDEFINITION:流程模版表 2 1.2 JBPM_NODE:流程节点表 2 1.3 JBPM_TRANSITION:流程迁移表 3 1.4 JBPM_ACTION:流程动作表 4 1.5 JBPM_EVENT:流程事件表 5 1.6 JBPM_...
JBPM采购申请系统——05_构建JBPM数据库.7z JBPM采购申请系统——05_构建JBPM数据库.7z JBPM采购申请系统——05_构建JBPM数据库.7z JBPM采购申请系统——05_构建JBPM数据库.7z JBPM采购申请系统——05_构建JBPM...
jbpm jbpm4.3.jar DDDDDDDD
1 流程配置类数据库表: 2 1.1 JBPM_PROCESSDEFINITION:流程模版表 2 1.2 JBPM_NODE:流程节点表 2 1.3 JBPM_TRANSITION:流程迁移表 3 1.4 JBPM_ACTION:流程动作表 4 1.5 JBPM_EVENT:流程事件表 5 1.6 ...
jbpm 数据库jbpm 数据库jbpm 数据库jbpm 数据库jbpm 数据库
主要关于如何使用jbpm,使用jbpm里的方法,如定义流程,流程实例如何与公文绑定,如何让公文流转到下一步,查看我手上有多少公文等,以及如何把jbpm集成到其它项目里面。
jbpm创建数据库jbpm创建数据库jbpm创建数据库jbpm创建数据库jbpm创建数据库jbpm创建数据库jbpm创建数据库jbpm创建数据库jbpm创建数据库
JBPM创建数据库,流程定义以及发布学习笔记
1 工作流的概念 5 2 工作流的过程 7 3 Jbpm4.4介绍 7 3.1工作流引擎 8 3.2jpdl 8 3.3数据库 8 3.3.1资源库和运行时表结构 8 3.3.2历史数据库表 9 3.3.3身份认证表 9 3.4jbpm.cfg.xml 9 3.5 jbpm.hibernate.cfg.xml ...
jbpm学习日记,我在学习中的体会有很大帮助
jpdl描述工作流《jBPM学习笔记_框架设计简介》
如何将原有的H2数据库修改为指向mysql或者postgresql数据库。附实例
3个JBPM的经典电子教程: jBPM4.1中文用户手册.pdf jBPM详解_工作流管理系统.doc 深入浅出_jBPM_电子书.doc 以及一个JBPM的HelloWorld的例子
方法:打开JBPM开发套件下的db目录,找到相应的数据库脚本文件, 在目标数据库中执行创建。 2、通过JbpmConfiguration对象提供的createSchema方法进行创建 方法:编写一个带有Main方法的Java类进行下列代码的...
个人学习jbpm的文档,其中包括一些bug的修改。主要以《jbpm流程》一书为参考
jBPM开发:配置EclipseIDE开发环境.pdf
jbpm数据库表介绍,击杀跑了jbpm4.4所使用的数据库表关系 字段 作用
jBPM开发:配置EclipseIDE开发环境参考.pdf
最近通过使用jbpm,学习了一下,自己整理的一份jbpm的学习笔记,,希望对你们有帮助