Java琐事
-I am not alone
posts - 54, comments - 30, trackbacks - 0, articles - 1
BlogJava
::
首页
::
新随笔
::
联系
::
聚合
::
管理
手动发布流程定义(jbpm3)
Posted on 2011-04-27 17:19
石子路口
阅读(1754)
评论(0)
编辑
收藏
所属分类:
工作流
上一个文章介绍了在启动tomat服务的时候自动发布流程。这里介绍如何手动的把定义好的processdefinition.xml持久化到数据库中。这里使用的是junit测试代码
1. 建两个包cn.edu.ujn.wsjx.test.process以及cn.edu.ujn.wsjx.test.service
2. 在service包中新建测试基类BaseServiceTest.java
1
package
cn.edu.ujn.wsjx.test.service;
2
3
import
org.springframework.context.ApplicationContext;
4
import
org.springframework.context.support.ClassPathXmlApplicationContext;
5
6
import
junit.framework.TestCase;
7
8
public
class
BaseServiceTest
extends
TestCase
9
{
10
protected
ApplicationContext context;
11
12
public
ApplicationContext getApplicationContext()
13
{
14
return
context;
15
}
16
17
@Override
18
protected
void
setUp()
throws
Exception
19
{
20
//
TODO Auto-generated method stub
21
super
.setUp();
22
23
context
=
new
ClassPathXmlApplicationContext(
new
String[]
24
{
"
spring/applicationContext.xml
"
,
"
spring/applicationContext-jbpm.xml
"
,
25
"
spring/applicationContext-shi.xml
"
,
"
spring/applicationContext-wu.xml
"
,
26
"
spring/applicationContext-zhou.xml
"
,
"
spring/daoContext.xml
"
}
);
27
}
28
}
29
3. 在包process中新建类ProcessDeployTest继承上面的类
package
cn.edu.ujn.wsjx.test.process;
import
java.io.File;
import
java.io.FileInputStream;
import
java.io.FileNotFoundException;
import
java.util.zip.ZipInputStream;
import
org.jbpm.JbpmConfiguration;
import
org.jbpm.JbpmContext;
import
org.jbpm.graph.def.ProcessDefinition;
import
cn.edu.ujn.wsjx.test.service.BaseServiceTest;
public
class
ProcessDeployTest
extends
BaseServiceTest
{
public
void
testAddProcessDefinition()
{
JbpmConfiguration jbpmConfiguration
=
(JbpmConfiguration)context.getBean(
"
jbpmConfiguration
"
);
JbpmContext jbpmContext
=
jbpmConfiguration.createJbpmContext();
try
{
File file
=
new
File(
"
E:/work/work.zip
"
);
FileInputStream fis
=
new
FileInputStream(file);
ZipInputStream zip
=
new
ZipInputStream(fis);
ProcessDefinition processDefinition
=
ProcessDefinition.parseParZipInputStream(zip);
jbpmContext.deployProcessDefinition(processDefinition);
}
catch
(FileNotFoundException e)
{
e.printStackTrace();
}
finally
{
jbpmContext.close();
}
}
public
void
testDestroyProcess()
{
JbpmConfiguration jbpmConfiguration
=
(JbpmConfiguration)context.getBean(
"
jbpmConfiguration
"
);
JbpmContext jbpmContext
=
jbpmConfiguration.createJbpmContext();
jbpmContext.getGraphSession().deleteProcessDefinition(
1
);
jbpmContext.close();
}
}
说明:testAddProcessDefinition()是发布流程定义的zip包到数据库中,testDestroyProcess()是通过数据库中存储的流程id删除相应的流程
新用户注册
刷新评论列表
只有注册用户
登录
后才能发表评论。
网站导航:
博客园
IT新闻
知识库
C++博客
博问
管理
相关文章:
学习大杂烩
手动发布流程定义(jbpm3)
把jbpm3整合进ssh中
把jbpm-jpdl-3.2.3中的实例部署到tomcat中
jbpm3数据库表的创建与解释
初始bpm的现状
Powered by:
BlogJava
Copyright © 石子路口
日历
<
2011年4月
>
日
一
二
三
四
五
六
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
1
2
3
4
5
6
7
常用链接
我的随笔
我的评论
我的参与
最新评论
留言簿
给我留言
查看公开留言
查看私人留言
随笔分类
ajax
flex(1)
hibernate
Java(3)
spring
struts2(2)
工作流(6)
数据库(1)
校外项目(2)
网络教学资源平台(31)
网页制作(5)
记录(5)
设计模式(1)
随笔档案
2011年5月 (3)
2011年4月 (5)
2011年3月 (3)
2010年11月 (9)
2010年10月 (24)
2010年9月 (10)
搜索
最新评论
1. re: flex3的在myeclipse6.5中部署及第一个实例
sdfsdf
--safd
2. re: 学习大杂烩
@黑蝙蝠
楼主自己都没有搞醒豁,TA咋个好意思分享他自己的经验和成果嘛!
--ocaicai
3. re: 学习大杂烩
可以分享学习成果么~~
--黑蝙蝠
4. re: 学习大杂烩
楼主的知识面真够广的...膜拜中。。。
--http://ask.zhongguoren.me
5. re: 4月22日
这个是关于什么的文章
--新能源
阅读排行榜
1. "java.net.BindException: Cannot assign requested address"竟是瑞星防火墙所为(4185)
2. struts2中select标签的用法总结(3843)
3. 关于myeclipse和mysql中文乱码问题(10月11日)(2776)
4. hibernate的单向级联删除问题(2676)
5. FCKeditor支持jsp的配置(myeclipse工具)(2579)
评论排行榜
1. 小心数据库字段与关键字重复问题(4)
2. "java.net.BindException: Cannot assign requested address"竟是瑞星防火墙所为(3)
3. 页面中有几个form(3)
4. 学习大杂烩(3)
5. java处理excel(3)