jBPM4工作流开发实战 之 第五部分 其他知识

jBPM的异步执行介绍
jBPM对于所有的流程执行操作默认都是同步的。也就是说,默认是一个活动执行完成后,再执行另一个活动。
如,Task1->Java1->Java2->Task2,在同步的状态下执行,即使Java1活动要耗时一个小时,Java2也会等。但如果在异步的状态下执行,两个任务处于不同的线程中运行,Java2活动不会等待Java1活动结束就直接运行了。
可以通过设置活动的continue属性为async,来表示为异步执行;设置为exclusive表示独占异步执行。
 
jBPM的异步执行通常用在耗时的自动活动上,会自动生成Job
n手工执行Job的api如下
ManagementService ms = engine.getManagementService();
ms.executeJob(job.getId());
 
jBPM默认使用的是JobExecutor组件来实现Job的执行
要开启这个功能非常简单,只需要在jbpm.cfg.xml中导入jbpm.jobexecutor.cfg.xml文件即可,如下:
<import resource="jbpm.jobexecutor.cfg.xml" />
n准备好lib包(ssh+jBPM)
目前用的lib包中各个部分的版本是:struts2.2.1 + spring3.1 + hibernate3.3.1GA(就是jBPM4.4带的那个)+jBPM4.4
 
jBPM和Spring3集成的步骤
1:参考jbpm-4.4/install/src/cfg/hibernate/jdbc/oracle.hibernate.cfg.xml来修改jbpm.hibernate.cfg.xml
2:参考jbpm-4.4/install/src/cfg/spring/applicationContext.xml来修改应用的applicationContext.xml
3:参考jbpm-4.4/install/src/cfg/jbpm/spring.jbpm.cfg.xml来修改jbpm.cfg.xml。
 
Struts2+Spring3+Hibernate3的集成仍然跟以前一样,只是cfg部分放到jbpm.hibernate.cfg.xml中了
关于drools
前面的lib包中已经包含的drools运行相关的包,但是在使用的时候,和Spring集成与不集成,方式会有些变化。
集成过后,在Eclipse中运行带有drools的流程前,需要添加下面这句话:
System. setProperty("drools.dialect.java.compiler","JANINO");
否则会报如下错误:
The Eclipse JDT Core jar is not in the classpath
 
注意:Web下运行,不需要添加上面这句话。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不讲理的胖子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值