本文介绍了编程方式部署jBPM工作流定义的方法。并向您提供了源代码。只要您正确配置了Jbpm的数据库和Hibernate,使用本文提供的这个工具类,就可以非常方便的部署您创建的jbpm工作流定义。
部署jBPM工作流
要使用jBPM的工作流,必须首先部署工作流定义。就是把工作流定义文件载入到jBPM的数据库中。
jBPM的工作流有多种部署方式。包括:Ant文件部署,Eclipse图形设计器通过JBoss(JBoss上必需运行jbpm.war)部署,以及本文我要介绍的编程部署的方式。
一、Ant文件发布方式
编写Ant文件非常复杂。因为jBPM工作流的部署,需要使用Jbpm数据库。这就必须要进行繁琐的配置。
二、Eclipse图形设计器直接部署
这种方式非常简单。但是,这种部署方式,必须要同时运行JBoss服务器。并且需要在JBoss上运行配置正确的jbpm.war。它会把业务程序定义发布到jbpm.war使用的数据库上。
而jbpm.war的部署和配置非常麻烦。非凡是你要更改使用的数据库时。JBoss的一大特点,就是配置方式不标准,与通用的配置方式相差甚多。
因此,我不喜欢配置JBoss下的jbpm.war。我已经创建了新的,可以部署到Tomcat等所有服务器上的jbpm.war文件(我会在有空时推出一篇文章介绍如何制作可以运行在所有JavaEE服务器上的jbpm.war文件,并提供直接下载)。
但是,部署在Tomcat上的jbpm.war,不能支持Eclipse图形设计器部署业务程序定义。
而且,今天我重装Eclipse之后,安装的图形设计器没有了发布功能!汗!可能是需要安装Eclipse的某些插件吧!今天,我无法访问外国网站,所以找不到原因和解决办法。(又是中国特色)
三、编程方式部署Jbpm业务程序(就是常说的“工作流”)定义
因为今天我无法使用Eclipse图形设计器直接部署,所以就写了一个类,通过编程的方式直接部署。
这种方式也是非常简单而直接的。不需要再安装Eclipse图形设计器,也不需要配置和运行支持jBPM的JBoss。
只要你的应用程序中集成并正确配置了jBPM,(可以参考我的Blog上的文章《向应用程序中加入jBPM组件》http://blog.csdn.net/shendl/archive/2006/10/23/1346877.ASPx )然后把下面的类加入你的项目,运行JUnit测试或者执行main方法,就可以轻松的部署你的业务程序定义了!
编程方式部署Jbpm工作流定义
一、基本知识
1,JUnit测试和执行main方法,实际上是classpath目标目录下的.class文件的运行。查找资源文件,也是从classpath开始的。