2019独角兽企业重金招聘Python工程师标准>>>

刚来上班不久,老总就让我去研究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

转载于:https://my.oschina.net/wuchongchang/blog/11276

JBPM4.4与SSH2的整合相关推荐

  1. SSH2完美整合流程

    SSH2完美整合流程 2012-01-13 12:52来源:站长之家 教程流程是重点,应熟练掌握.本教程做简单的账号注册演示,所用工具:Myeclipse-6.5.Struts-2.2.3.Hiber ...

  2. java web ppt_javawebppt演讲

    大气精美-javaweb答辩ppt.论文答辩PPT模板,毕业答辩PPT模板,学术报告PPT,开题报告PPT,课题研究PPT,学术 论文PPT,精美PPT,原创PPT. ... 第1讲JavaWeb应用 ...

  3. webmagic采集CSDN的Java_WebDevelop页面

    项目中使用到了webmagic,采集论坛一类的页面时需要一些特殊的配置.在此记录一下 先来看看我要采集的页面 点击第2页可以看到它的url是http://bbs.csdn.net/forums/Jav ...

  4. Struts2学习之------Struts2的详细的复习讲解

    Struts2的复习 开发struts2所需要的包 Struts2的启动配置 Struts2的配置文件是放在src的目录下,但是struts1的配置文件是放在WEB-INF的目录下 Struts2的s ...

  5. JBPM4.4整合SSH2项目

    一:导入相应的jar包: *注意事项: (1).与项目中的jar包不能出现冲突 (2).版本应一致 jbpm-bpmn.jar jbpm-console-form-plugin.jar jbpm-co ...

  6. SSH2整合完整案例(四十三)

    注解配置:Struts2+Spring2.5+Hibernate3.3+Oracle11g 本文介绍 1.Struts2+Spring2.5+Hibernate3.3的整合 2.采用单元测试 3.加入 ...

  7. SSH2整合完整案例

    注解配置:Struts2+Spring2.5+Hibernate3.3+Oracle11g 本文介绍 1.Struts2+Spring2.5+Hibernate3.3的整合 2.采用单元测试 3.加入 ...

  8. 利用JBPM4.4的AssignmentHandler实现用户角色整合另一种构思

    Jbpm4提供的IdentitySession接口并不是一种很好的处理方式,鉴于我们每个业务系统都有一套自己的用户及权限认证管理机制,需要与jbpm4.4集成的话,就比较周折了,我们经常需要查询的就是 ...

  9. java spring orm jbpm_spring整合jbpm4

    整合步骤: *  导入jbpm的jar包 * 删除db和hibernate的jar包 *  在config下创建一个配置文件 config/jbpm jbpm.cfg.xml jbpm.hiberna ...

最新文章

  1. 2018年中国人工智能100强研究报告
  2. Python中读取、显示和保存图片的方法
  3. mongodb安装失败与解决方法(附安装教程)
  4. 使用SharedPreferences进行数据存储
  5. win8桌面壁纸路径
  6. 在python IDLE里执行py文件
  7. -bash: /tyrone/jdk/jdk1.8.0_91/bin/java: cannot execute binary file
  8. Java集合框架:Collections工具类
  9. android+rom+bootloader+flash,Android ROM开发(4) bootloader 三种启动模式
  10. 【3】SCN-Hystrix熔断器
  11. 计算机专业未来希望,中国人才最紧缺的6个大学专业,希望你不要错过。
  12. 如何解决iOS界面操作导致导致NSTimer暂停计时的问题?
  13. 华为管理学案例分析_案例分析 华为——基于价值、围绕结果展开的绩效考核...
  14. 2019-07-10
  15. BZOJ-1507 文本编辑器(Editor)
  16. 这是用过的最差树形插件
  17. Android编码规范
  18. android+ios打印机,Android/iOS手机安装HP打印机的详细方法和操作步骤
  19. 名人漏网之语 --联合早报2007-01-28
  20. c++builder读取系统时间Now函数

热门文章

  1. Java 必须掌握的 12 种 Spring 常用注解!
  2. 如何为 Python 添加远程调试能力而不修改系统代码
  3. Hadoop SequenceFile BLOCK压缩类型写入数据机制
  4. 【栈】日志分析(BSOJ2981)
  5. 错误代码为0xC000218,0x00000051的蓝屏错误,或是提示 System32/config missing之类的注册表错误...
  6. turtlebot3安装遇到的问题总结
  7. 如何定义研发KPI:以团队速度为标准
  8. percona-5.5安装笔记
  9. POJ -1573 Robot Motion
  10. WPF拖放功能实现zz