在网上看过好多人写的关于jbpm流程的发 布,都大概一样,或者是抄袭,或者是转载,或者是没有甩到点子上,经我我多次尝试发现,网上那些所说的流程发布是不全面的,不能说对也不能说错,说对出不 来结果,说错呢只是少了一些语句,经本人多次尝试发现流程发布是必须是zip格式的文件,而不能直接读流程文件,废话不说了,直接进入主题,看完下面这段 代码你就明白流程发布起始很简单,随没什么技术含量,但是献给同行内的jbpm初学者,使大家少走弯路,其他的东东本人有时间了会再次写出来。
public void deployProcessDefinition(){
JbpmContext jbpmContext = JbpmConfiguration.getInstance().createJbpmContext();
try {
File file = new File("D:/workspace/myJbpm/src/main/jpdl/helloWorld/helloWorld.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();
}
解 释一下,我的流程发布文件在D:/workspace/myJbpm/src/main/jpdl/helloWorld目录下,文件名叫 helloWorld文件格式为zip,网上都是把processDefinition.xml文件直接放到 deployProcessDefinition中,这样我尝试过很多次,都不行,只要执行这个方法流程文件就会发到数据库中,如有不了解的给我留言。