jbpm4.4 timer的使用
今天学习了jbpm4 的timer使用,一直测试都不成功:配置如下:
<?xml version="1.0" encoding="UTF-8"?>
<process key="TimerTransition" name="TimerTransition" xmlns="http://jbpm.org/4.4/jpdl">
<start g="0,75,80,40">
<transition to="guardedWait"/>
</start>
<state g="202,96,108,40" name="guardedWait">
<transition g="-49,-22" name="timeout" to="escalation">
<timer duedate="5 seconds"/>
</transition>
</state>
<state g="456,118,80,40" name="escalation"/>
</process>
如图,设置为5秒后自动到达escalation节点,部署完任务后调用:
ProcessInstance instance = super.executionService
.startProcessInstanceByKey("TimerTransition");
然后5s后获取当前位置:
ProcessInstance instance = super.executionService
.findProcessInstanceById("TimerTransition.260001");
System.out.println(instance.findActiveActivityNames().toString());
每次获取都是在节点guardedwait节点中,甚是郁闷。
后来想想才明白,我程序部署完后就停止了,不是web环境的,任务执行完了就停止了,job根本无法执行,后来改了如下:
ProcessInstance instance = super.executionService
.startProcessInstanceByKey("TimerTransition");
Job job = managementService.createJobQuery().timers()
.processInstanceId(instance.getId()).uniqueResult();
System.out.println("job到期:" + job.getDuedate());
// ProcessInstance instance = super.executionService
// .findProcessInstanceById("TimerTransition.910001");
try
{
Thread.sleep(5000);
} catch (InterruptedException e)
{
e.printStackTrace();
}
String name = instance.findActiveActivityNames().toString();
System.out.println("当前节点:" + name);
System.out.println("instanceId:" + instance.getId());
ok执行成功,成功自动运行到节点es
jbpm4.4 timer的使用的更多相关文章
- Jbpm4.4+hibernate3.5.4+spring3.0.4+struts2.1.8整合例子(附完整的请假流程例子,jbpm基础,常见问题解决)
Jbpm4.4+hibernate3.5.4+spring3.0.4+struts2.1.8 整合例子(附完整的请假流程例子). 1.jbpm4.4 测试环境搭建 2.Jbpm4.4+hibernat ...
- jbpm4.4+ssh配置(有些使用经验很好)
http://www.cnblogs.com/cmzcheng/archive/2011/11/20/2255806.html ———————————————————————————————————— ...
- JBPM4 常用表结构
JBPM4 常用表结构 第一部分:表结构说明 Jbpm4 共有18张表,如下,其中红色的表为经常使用的表 一:资源库与运行时表结构 1. JBPM4_DEPLOYMENT 流程定义表 2. J ...
- JBPM4 常用表结构及其说明
本文从表结构.操作时表的变化以及jbpm4.4各个包的作用来介绍jbpm的. 第一部分:表结构说明 Jbpm4 共有18张表,如下,其中红色的表为经常使用的表 一:资源库与运行时表结构 1. J ...
- JBPM4中常用概念总结
1. 流程定义(Process Definition) 流程定义是记录在xml文件中的对流程的描述,它包含唯一的流程开始节点和多个流程功能节点,每个节点之间使用transition进行连接. P ...
- jbpm4.3表结构和表字段说明
整体说明: JBPM4_DEPLOYMENT 流程定义表JBPM4_DEPLOYPROP 流程定义属性表 JBPM4_EXECUTION 流程实例表JBPM4_HIST_ACTINST 流程活动 ...
- Jbpm4.4+hibernate3.5.4+spring3.0.4+struts2.1.8 整合例子
转自:http://www.blogjava.net/wangxinsh55/archive/2011/07/24/354925.html Jbpm4.4+hibernate3.5.4+sprin ...
- JBPM4 经常使用表结构及其说明
首先我想说.这不一篇原创博文. 这里设置成原创.主要是为了分享,由于它对于jbpm的刚開始学习的人,真的值得一看.原作者的博文地址并没有查到,我是在还有一位转载此文的博主那儿获得的.地址在这儿. 本文 ...
- JBPM4常用表结构及入门流程
JBPM4 常用表结构 第一部分:表结构说明 Jbpm4 共有18张表,如下,其中红色的表为经常使用的表 一:资源库与运行时表结构 1. JBPM4_DEPLOYMENT 流程定义表 2. J ...
随机推荐
- [GO] mac安装GO 初次尝试
其实试了好多方法,我用的是下面这种方法,简单快捷! 安装homebrew 在终端输入命令 ruby -e "$(curl -fsSL https://raw.githubuserconten ...
- MySQL笔记总结-DQL语言
DQL语言 基础查询 一.语法 select 查询列表 from 表名; 二.特点 1.查询列表可以是字段.常量.表达式.函数,也可以是多个 2.查询结果是一个虚拟表 三.示例 1.查询单个字段 se ...
- mysql 使用记录
修改 mysql 数据库密码 mysqladmin -u username -h host_name password -P <port> "new_password" ...
- C语言如何实现继承及容器
继承的概念 继承是面向对象软件技术当中的一个概念,与多态.封装共为面向对象的三个基本特征.继承可以使得子类具有父类的属性和方法或者重新定义,追加属性和方法. 面向对象中的重要概念就是类,在我们熟知的编 ...
- 干货福利:如何使用Python中Django模板?
前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者: 穆胜亮 篇文章将学习如何使用Django模板.模板是在Django ...
- java之 向上转型与向下转型
向上转型 class father { public void eat(){ System.out.println("father eat()"); } } class son e ...
- 利用requests, beautifulsoup包爬取股票信息网站
这是第一次用requests, beautifulsoup实现爬虫,此次爬取的是一个股票信息网站:http://www.gupiaozhishi.net.cn. 实现非常简单,只是为了demo使用的数 ...
- LNMP环境搭建之php安装
和LAMP安装PHP方法有差别,需要开启php-fpm服务 下载php cd /usr/local/src/ wget http://cn2.php.net/distributions/php-5.6 ...
- Hadoop学习笔记(三) ——HDFS
参考书籍:<Hadoop实战>第二版 第9章:HDFS详解 1. HDFS基本操作 @ 出现的bug信息 @-@ WARN util.NativeCodeLoader: Unable to ...
- CF1328E Tree Queries
CF1328E Tree Queries 应该还是比较妙的 题意 给你一个树,然后多次询问 每次询问给出一堆节点,问你是否能找到一个从根出发的链,是的对于给出的每个节点,都能找出链上的点,是的他们的距 ...