JBPM5

预备:下载ant : http://ant.apache.org/bindownload.cgi

配置ant: 即ant 环境变量配置,将apache-ant-1.8.2\bin配置到环境变量 path中

1.概述
    本人首先到官方网站上下载了jbpm-5.4.0.Final-installer-full.zip,这个比较大,534M,这里面除了eclipse,什么都有,如果不下载这个,在线安装可能就惨了。
    在计算机的环境变量中配置JAVA_HOME和ANT_HOME,注意path中要设置ant\bin路径。

2.安装过程
    将jbpm-5.4.0.Final-installer-full.zip解压缩,本人放到了d:\java\jbpm5目录下,网上大部分人放到了jbpm-installer目录目录下

(1)运行:ant install.demo
  This will:
  ?  Download JBoss AS
  ?  Download Eclipse
  ?  Install Drools Guvnor into JBoss AS
  ?  Install Oryx Designer into JBoss AS
  ?  Install the jBPM gwt-console into JBoss AS
  ?  Install the jBPM Eclipse plugin
  ?  Install the Drools Eclipse plugin
  这里由于Eclispe太大,建议将Eclispe压缩文件下载好放在jbpm解压后文件lib文件夹里面,那样节省安装时时间
  安装成功后有提示:BUILD SUCCESSFUL 

build.properties配置文件
     默认配置的JBoss路径是:jboss.home=./jboss-${jboss.server.version}
     如果本机已经安装了Eclipse的话,就不用再下载了,直接设置eclipse.home=d:/java/eclipse。 

包中没有eclipse,所以必须先在build.properties配置文件中设置eclipse所在目录,再通过第(2)步配置,但是也会出现一些无法运行的问题。

可以采用下面方法来解决:
     大家下载一个 eclipse-jee-juno-win32.zip。 下载毕完后,改名为:eclipse-java-helios-SR2-win32.zip,并且放入 D:\jbpm\jbpm-installer\lib\中
     再运行ant install.demo,这样下面就不会有什么错误了。

(2)配置运行开发环境
    (1).ant install.guvnor.into.jboss 
    (2).ant install.designer.into.jboss 
    (3).ant install.jBPM-gwt-console.into.jboss 
    (4).ant install.jBPM-eclipse.into.eclipse 
    (5).ant install.drools-eclipse.into.eclipse 
     (6).ant install.jBPM.runtime  (该命令没有在install.html安装说明里出现,但如果不运行该安装命令,在下面使用命令:ant  start.human.task的时候会报错:"...runtime does not exist").

ant install.jBPM-eclipse.into.eclipse
ant install.drools-eclipse.into.eclipse
基本上是是bulid failed的,解决这个问题的方法是,
      不用输入这两句,而是输入:ant install.droolsjbpm-eclipse.into.eclipse
      也可以不输入命令:进入到jbpm的lib文件夹,把org.drools.updatesite-5.4.1.Final-assembly.zip包内的plugins和features复制到Eclipse目录下即可

(3)运行:ant start.demo
      当看到eclipse打开后,就说明启动成功了!

在jbpm5目录下,打开ant的配置文件build.xml
    <target name="start.demo" depends="start.h2,start.jboss,start.eclipse" />
    start.demo表示启动h2数据库,jboss和eclipse

如果不想启动eclipse,可以输入以下命令:ant start.demo.noeclipse
    <target name="start.demo.noeclipse" depends="start.h2,start.jboss" />    

可能会出现的错误
     首先查找是不是8080端口被占用了,则可能提醒build failed, jboss didn't start within 5  minutes,如果是电脑配置不足,可以将jbpm-installerbuild.xml里的start Jboss AS部分里的waitfor  maxwait =5 改成 10,这样就给你电脑10分钟时间启动jboss。
     如果8080端口没有被占用还是启动不了,那请到安装后文件夹下的执行下jboss-as-7.1.1.Final\bin \standalone.bat文件,查看具体错误,也可以在jboss-as-7.1.1.Final\standalone\log查看server.log查看日志,对症解决具体的问题

(4)启动human task
      输入命令ant start.human.task

这里会出现错误:java.io.FileNotFoundException: null\roles.properties (The system cannot find the path specified)
解决方法:
      在build.xml中修改如下语句
    <java classname="org.jbpm.DemoTaskService" fork="true">        
       <sysproperty key="jbpm.user.group.mapping" value="file:///<path of your jboss server>/jboss-as-7.1.1.Final/standalone/configuration/roles.properties"/>
       <classpath>
            <pathelement path="${install.home}/task-service/target"/>
            <path refid="classpath.human.task" />
       </classpath>
    </java>
    这里我的path of your jboss server为d:/jbpm5

如果正常启动,将显示以下信息
     [javac] D:\Java\jbpm5\build.xml:865: warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds
      [java] Task service registered usergroup callback ...
     [java] Task service started correctly!
     [java] Task service running ...

      打开eclipse,导入jbpm5目录下的sample工程。这时eclipse会报错,因为没有导入相应的jar包,在sample项目中建立lib目录,复制jbpm5\runtime\lib下的所有jar到lib目录下,然后加到classpath下,这样工程的错误就消失了。
      以Application方式运行ProcessTest.java,程序有可能还是出错,错误信息如下

      ERROR service.hornetq.HornetQTaskClientConnector.connect  - Unable to connect to server using configuration org-hornetq-core-remoting-impl-netty-NettyConnectorFactory?port=5153&host=127-0-0-1
     org.jbpm.workflow.instance.WorkflowRuntimeException: [com.sample.evaluation:1 - Self Evaluation:2] -- Could not connect task client: on ip: 127.0.0.1 - port: 5153

我的解决方法是将d:/jbpm5/conf/default.jbpm.console.properties中的
     jbpm.console.task.service.host=127.0.0.1
修改为
    jbpm.console.task.service.host=localhost
再将程序中的127.0.0.1修改为localhost

程序正常运行,console显示
    Process started ...
如果还是出现 Could not connect task client: on ip: localhost - port: 5153,可以试一试JBPM后台管理
在网页上输入http://localhost:8080/jbpm-console
    如果这个也打不开,说明jbpm没有在jboss中启动起来

(5)Demo导入
      Demo安装之后,就会在jboss目录下自动安装几个war包,分别是:jbpm-gwt-console.war、 jbpm-gwt-console-server.war、drools-guvnor.war、designer.war
其中
      droos-guvnor.war 是一个文件管理系统,主要用来管理流程定义文件。
      jbpm-gwt-console-server.war 这个war包相当于我们的应用程序,即jbpm5的client端,数据源信息可以在这个war包中配置和修改。其他2个可能是设计器相关的,暂不研究。

      现在可以使用eclipse导入jbpm自带的一个流程。方法为依次点击File -> Import ,在General category下选择“Existing Projects into Workspace”,找到位于jbpm安装根目录/sample/evaluation文件夹,将该项目导入。
      演示视频地址为:http://people.redhat.com/kverlaen/install-eclipse-jbpm.swf

(6)使用web管理控制台
jboss启动后,可通过以下地址访问jbpm自带的web控制台:
http://localhost:8080/jbpm-console
登录的用户名、密码均为krisv 
在web控制台中可启动一个新流程、查看正在执行流程的当前状态、查看当前登录人待办任务以及并可以以报表形式查看、跟踪流程状态。
演示视频地址为:http://people.redhat.com/kverlaen/install-gwt-console-jbpm.swf

(7)使用Guvnor知识库
现在Guvnor知识库以及集成到jbpm中,并且在下一个releases版本中有所改进,现在的版本虽然已可以试用,但有下面一些局限:
(1)如果你要在Guvnor中创建一个BPMN2流程,通过“Create New -> New File ”并需要指定该文件的扩展名为.bpmn。
(2)流程设计器现在仅能在Google的Chrome浏览器中运行。
(3)现在还不能用一个基于Guvnor的package作为JBPM5的知识库。
(4)如果设计器不能保存或加载BPMN2的流程,请联系jBPM社区,并告诉我们问题如何出现,以便我们进行重现并加以改进。

Drools Guvnor的访问地址为:
      http://localhost:8080/drools-guvnor
使用非空的用户名密码登陆即可(为了进行demo,身份验证暂时失效)。
具体的使用细节,可参照Drools Guvnor提供的文档,下载地址为:
      http://download.jboss.org/drools/release/5.1.1.34858.FINAL/drools-5.1.1-docs.zip

如果需要将数据库移植到mysql,参见《https://community.jboss.org/wiki/SetUpJBPM54FinalInstallerToUseMySQL-OrHowToRunSection37OfTheUserGuide#Set_up_MySQL

参考文献
1.jbpm-console和jboss-guvnor的使用 .http://blog.sina.com.cn/s/blog_6cd73dfb0101321n.html
2.Jbpm5.4配置与安装. http://blog.sina.com.cn/s/blog_c0e9652501017a4u.html
3.jbpm5 概述 .http://blog.chinaunix.net/uid-7374279-id-3486040.html

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
第一章 概述 1 1.1 什么是jBPM? 1 1.2 概览 2 1.3 核心引擎 3 1.4 Eclipse编辑器 4 1.5 基于Web的设计器 5 1.6 jBPM控制台 5 1.7 文档结构 6 第二章 获得开始 7 2.1 下载 7 2.2 获得开始 7 2.3 社区 8 2.4 资源 8 2.41许可证 8 2.42 源代码 9 2.4.3 从源文件构建 9 第三章 安装 9 3.1 必备的 9 3.2 下载 installer 9 3.3 演示安装 10 3.4 10分钟指南: 使用Eclipse工具 10 3.5 10分钟向导:使用jBPM控制台 12 3.6 10分钟指南:使用Guvnor知识库和设计器 13 3.7 如果遇到问题或有问题应该怎么去做 14 3.7 经常被问的问题 14 第四章:核心引擎的API 15 4.1 jBPM API 16 4.11 Knowledge Base 17 4.12 会话 17 4.13 事件 19 4.2. Knowledge-based API 21 第五章 核心引擎:基础 21 5.1 创建一个流程 21 5.1.1 Eclipse BPMN2.0图形编辑器插件 22 5.1.2 使用XML定义流程 22 5.1.3使用流程API定义流程 24 5.2 不同流程构造的细节概述 25 5.3 流程属性的细节 26 5.4 事件细节 26 5.4.1 开始事件 26 5.4.2 结束事件 27 5.4.3 中间事件 28 5.5 动作细节 29 5.5.1 脚本任务 29 5.5.3 服务任务 30 5.5.3 用户任务 31 5.5.4 重用的子流程 32 5.5.5 业务规则任务 32 5.5.6 嵌入子流程 33 5.5.7 多个实例子流程 33 5.6 Gateways 细节 34 5.6.2 合并网关 35 5.7 在你的应用中使用流程 35 5.8 其他特性 36 5.8.1 数据 36 5.8.2 约束 37 5.8.3 动作脚本 38 5.8.4 事件 39 5.8.5 计时器 40 5.8.6 更新流程 41 第六章 BPMN 2.0 核心引擎 43 6.1 Business Process Model and Notation(BPMN)2.0 Specification业务流程建模和符号2.0规范 43 6.2 例子 47 6.3 支持的元素/属性 48 第七章 核心引擎:持久化和事务 54 7.1 运行时状态 54 7.1.1 二进制持久化 54 7.1.2 Safe Pionts 54 7.1.3 配置持久化 55 7.1.4 事务 58 7.2 流程定义 58 7.3 历史日志 59 7.3.1 将流程事件存储到数据库 59 第八章 核心引擎:示例 60 8.1 jBPM示例 60 8.2 示例 61 8.3 单元测试 61 第九章 Eclipse BPMN 2.0 Plugin 62 9.1 安装 62 9.2 创建你的BPMN 2.0 流程 62 9.3 元素和属性的顾虑 65 第十章 设计器 66 10.1 安装 67 第十一章 控制台 68 11.1 安装 68 11.2 运行流程管理控制台 68 11.2.1 管理流程实例 69 11.2.2 人工任务列表 71 11.2.3 报告 72 11.3 添加新的流程/任务表 73 11.4 REST interface 74 第十二章 Human Tasks 75 12.1 流程内的Human tasks 75 12.1.1 Swimlanes 78 12.2 Human task 管理组件 78 12.2.1 任务生命周期 78 12.2.2 将任务组件链接到jBPM引擎 79 12.2.3 启动任务管理组件 81 12.2.4 和任务管理组件的交互 83 12.3 人工任务管理接口 84 12.3.1 Eclipse integration 84 12.3.2 基于Web的任务视图 84 第十三章 特定领域的流程 84 13.1 介绍 84 13.2 示例:通告 85 13.2.1 创建工作定义 86 13.2.2 注册你的工作定义 86 13.2.3 在你的流程中使用你最新的工作条目 87 13.2.4 执行服务节点 89 第十四章 测试和调试 91 14.1 单元测试 91 14.1.1 使用Helper方法创建你的session 92 14.1.2 断言 92 14.1.3测试与外部服务的结合 93 14.1.4 配置持久化 94 14.2 调试 94 14.2.1 流程实例视图 95 14.2.2 人工任务视图 96 14.2.3 核查视图 96 第十五章 流程知识库 97
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值