JBPM4.4与SSH2的整合
2011-08-25 22:08
447 查看
刚来上班不久,老总就让我去研究jBPM这个框架,因为从来没有接触过这个框架,所以在结合网上的一些资料整理了一下jBPM与SSH2的整合;
想要让JBPM4.4与SSH2进行整合,首先肯定是要先让SSH2整合好,那是必须的。其实也就是与Spring之间的整合了,因为有去研究过jBPM的人都知道,jBPM本来就是使用了Hibernate来实现存储流程的,而Struts的压根就与jBPM撤不上什么关系.
整合前,很有必要先对JBPM有个认识。JBPM在管理流程时,是需要数据库表的支持的,因为底层的逻辑有那么复杂。默认下载下来的配置,使用的是内存数据库。实际应用中,我们就需要连接到我们的数据库里来。所以要事先建好相关的表,相应的sql文件在\jbpm-4.4\install\src\db下;
JBPM在操作流程时,一切都是基于ProcessEngine对象,所以整合的思路很简单,只要我们能让Spring创建出ProcessEngine,整合就算是迈出一大步,我们先在spring配置文件(applicationContext.xml ,也就是相当于spring注册bean)里加入如下代码
Java代码
1. <!--jbpm4.4工作流 -->
2. <bean id="springHelper" class="org.jbpm.pvm.internal.processengine.SpringHelper">
3. <property name="jbpmCfg" value="spring-jbpm4.cfg.xml" />
4. </bean>
5. <bean id="processEngine" factory-bean="springHelper" factory-method="createProcessEngine" />
在这里创建processEngine 对象,在这里用到jbpm.cfg.xml,它的内容如下:
Java代码
1. <?xml version="1.0" encoding="UTF-8"?>
2. <jbpm-configuration>
3. <process-engine-context>
4. <string name="spring.cfg" value="spring-jbpm4.xml" />
5. </process-engine-context>
6. <import resource="jbpm.default.cfg.xml" />
7. <import resource="jbpm.tx.spring.cfg.xml" />
8. <import resource="jbpm.jpdl.cfg.xml" />
9. <import resource="jbpm.bpmn.cfg.xml" />
10. <import resource="jbpm.identity.cfg.xml" />
11. <import resource="jbpm.businesscalendar.cfg.xml" />
12. <import resource="jbpm.console.cfg.xml" />
13. <!--
14. <import resource="jbpm.jobexecutor.cfg.xml" />
15. -->
16. </jbpm-configuration>
jbpm.cfg.xml里又引用了那么多的文件,这些文件在哪里?这些文件,他们都在jbpm.jar文件里,这不是我们管的事。
到这里,还没有完!前面说过,JBPM要数据库表的支持才能工作,JBPM又是使用Hibernate操作数据库,就不免要配置Hibernate的表与实体的映射文件,如下:
Java代码
1. <property name="mappingLocations">
2. <list>
3. <value>classpath:jbpm.execution.hbm.xml</value>
4. <value>classpath:jbpm.history.hbm.xml</value>
5. <value>classpath:jbpm.identity.hbm.xml</value>
6. <value>classpath:jbpm.repository.hbm.xml</value>
7. <value>classpath:jbpm.task.hbm.xml</value>
8. </list>
9. </property>
我这里直接使用的spring管理,没使用hibernate.cfg.xml; 有兴趣可以自己试试;上面的这些
*.hbm.xml文件又是在jbpm.jar里的,我们只管加载就行。 到此,整合所需要做的配置,就是这些了,
关键一步走完了;
下面一步,就是jar包的添加,如果你已经整合了SSH2,那么你只需要再添加jbpm.jar,juel-api.jar,
juel-engine.jar,juel-impl.jar,mail.jar即可;
所需包
1. jbpm.jar
2. mail.jar
下面三个放到tomcat的lib目录下,因为这三个包会和tomcat的el-api.jar
想要让JBPM4.4与SSH2进行整合,首先肯定是要先让SSH2整合好,那是必须的。其实也就是与Spring之间的整合了,因为有去研究过jBPM的人都知道,jBPM本来就是使用了Hibernate来实现存储流程的,而Struts的压根就与jBPM撤不上什么关系.
整合前,很有必要先对JBPM有个认识。JBPM在管理流程时,是需要数据库表的支持的,因为底层的逻辑有那么复杂。默认下载下来的配置,使用的是内存数据库。实际应用中,我们就需要连接到我们的数据库里来。所以要事先建好相关的表,相应的sql文件在\jbpm-4.4\install\src\db下;
JBPM在操作流程时,一切都是基于ProcessEngine对象,所以整合的思路很简单,只要我们能让Spring创建出ProcessEngine,整合就算是迈出一大步,我们先在spring配置文件(applicationContext.xml ,也就是相当于spring注册bean)里加入如下代码
Java代码
1. <!--jbpm4.4工作流 -->
2. <bean id="springHelper" class="org.jbpm.pvm.internal.processengine.SpringHelper">
3. <property name="jbpmCfg" value="spring-jbpm4.cfg.xml" />
4. </bean>
5. <bean id="processEngine" factory-bean="springHelper" factory-method="createProcessEngine" />
在这里创建processEngine 对象,在这里用到jbpm.cfg.xml,它的内容如下:
Java代码
1. <?xml version="1.0" encoding="UTF-8"?>
2. <jbpm-configuration>
3. <process-engine-context>
4. <string name="spring.cfg" value="spring-jbpm4.xml" />
5. </process-engine-context>
6. <import resource="jbpm.default.cfg.xml" />
7. <import resource="jbpm.tx.spring.cfg.xml" />
8. <import resource="jbpm.jpdl.cfg.xml" />
9. <import resource="jbpm.bpmn.cfg.xml" />
10. <import resource="jbpm.identity.cfg.xml" />
11. <import resource="jbpm.businesscalendar.cfg.xml" />
12. <import resource="jbpm.console.cfg.xml" />
13. <!--
14. <import resource="jbpm.jobexecutor.cfg.xml" />
15. -->
16. </jbpm-configuration>
jbpm.cfg.xml里又引用了那么多的文件,这些文件在哪里?这些文件,他们都在jbpm.jar文件里,这不是我们管的事。
到这里,还没有完!前面说过,JBPM要数据库表的支持才能工作,JBPM又是使用Hibernate操作数据库,就不免要配置Hibernate的表与实体的映射文件,如下:
Java代码
1. <property name="mappingLocations">
2. <list>
3. <value>classpath:jbpm.execution.hbm.xml</value>
4. <value>classpath:jbpm.history.hbm.xml</value>
5. <value>classpath:jbpm.identity.hbm.xml</value>
6. <value>classpath:jbpm.repository.hbm.xml</value>
7. <value>classpath:jbpm.task.hbm.xml</value>
8. </list>
9. </property>
我这里直接使用的spring管理,没使用hibernate.cfg.xml; 有兴趣可以自己试试;上面的这些
*.hbm.xml文件又是在jbpm.jar里的,我们只管加载就行。 到此,整合所需要做的配置,就是这些了,
关键一步走完了;
下面一步,就是jar包的添加,如果你已经整合了SSH2,那么你只需要再添加jbpm.jar,juel-api.jar,
juel-engine.jar,juel-impl.jar,mail.jar即可;
所需包
1. jbpm.jar
2. mail.jar
下面三个放到tomcat的lib目录下,因为这三个包会和tomcat的el-api.jar
相关文章推荐
- jbpm4.4与ssh2整合
- JBPM4.4整合SSH2项目
- SSH2+JBPM4.4 整合常见错误
- Jbpm4.4+hibernate3.5.4+spring3.0.4+struts2.1.8 整合例子
- 【整合篇】JBPM4.4业务与流程的整合
- JBPM4.4 + Struts2 + Spring3 + Hibernate3之整合
- JBPM4.4与DB2整合
- jbpm4.4 hibernate4 的兼容整合
- JBPM4.4:Spring和JBPM整合
- jBPM4实战系列(二)jBPM4.4+ssh 整合配置及完整实例
- 利用JBPM4.4的AssignmentHandler实现用户角色整合另一种构思
- Jbpm4.4+hibernate3.5.4+spring3.0.4+struts2.1.8整合例子(附完整的请假流程例子,jbpm基础,常见问题解决)
- jbpm4.4 +Spring mvc 整合架构
- 利用JBPM4.4的AssignmentHandler实现用户角色整合另一种构思
- 利用JBPM4.4的AssignmentHandler实现用户角色整合另一种构思
- spring3 mvc 整合jbpm4.4 步骤
- 关于ssh整合jbpm4.4 无法获取processEngine的问题
- ssh2 整合jbpm
- jbpm4.4整合spring过程中问题汇总(追加)
- Jbpm4.4+hibernate3.5.4+spring3.0.4+struts2.1.8整合例子(附完整的请假流程例子,jbpm基础,常见问题解决)