jbpm3的timer开发问题
来源:互联网 发布:python 线程池 编辑:程序博客网 时间:2024/05/16 04:41
在高杰所著的 深入浅出JBMP 书做练习时遇到一个问题纠缠了很久,
所要练习的内容: jbpm 任务执行器,timer定时器,希望在任务实例产生30秒后,每隔20秒能在控制台循环输出 "触发test job timer”
流程图如上,定义如下
<start-state name="start-state1">
<transition to="task-node1"></transition>
</start-state>
<task-node name="task-node1">
<task name="test-task">
<assignment actor-id="ziliang871118"></assignment>
</task>
<timer name="test job timer" duedate="30 seconds" repeat="20 seconds">
<script>
System.out.println("触发test job timer");
</script>
</timer>
<transition to="end-state1"></transition>
</task-node>
<end-state name="end-state1"></end-state>
按照上述代码我写了一个测试类,
public static void main(String[] args) {
JbpmConfiguration.getInstance().getJobExecutor().start();
System.out.println("流程测试开始.......");
JbpmContext jbpmContext = JbpmConfiguration.getInstance()
.createJbpmContext();
try {
ProcessDefinition processDefinition = jbpmContext.getGraphSession()
.findLatestProcessDefinition("asynctest");
ProcessInstance pi = processDefinition.createProcessInstance();
Token token = pi.getRootToken();
token.signal();
System.out.println("当前流程的节点名:" + token.getNode().getName());
} finally {
jbpmContext.close();
}
}
运行上述代码,输出结果如下:
当前流程的节点名:task-node1
并没有预想的 循环字符串输出, 纠结了很久,最后发现我的任务执行器和测试类写在了一个线程上,所以看不到想要的输出。
把上述的main方法 红色部分提出来单独开启一个任务执行器的线程,问题得到解决。
- jbpm3的timer开发问题
- jbpm3.2和myeclipse7.5开发环境的集成
- 工作流jbpm3.1.2 bug 导致数据库连接池满的问题
- C# timer的问题
- Timer的cancel问题
- jbpm3.1的不足之处
- JBPM3的对象介绍
- JBPM3的对象介绍
- jbpm3
- 奇怪的Timer Service问题。
- C# timer控件的问题
- 关于Timer的注意问题
- 使用Timer出现的问题
- timer的一个使用方法,解决timer无效的问题
- 使用jbpm3.2.3时,通过流程名查询流程的奇怪问题
- Jbpm3.2 开发一个Hello World程序
- 【JBPM3.2.3】之一:配置eclipse开发环境
- Android开发Timer计时器的操作实例
- 编写职业水准的程序
- 数据挖掘(学习笔记)-初识数据挖掘
- 国内高校图书馆大全
- CentOs安装gcc
- CentOs安装g++
- jbpm3的timer开发问题
- Android真机调试方法
- 关于AndroidManifest.xml笔记整理
- 写在CFA二级备考之时
- [C]my hanoi tower(递归练习)
- linux 文件操作指令
- 整理LINUX环境下常用的字符串相关C函数
- pylucene安装手记
- Linux学习汇总