首页 > 其他 > 详细

OA第七天---转向简单一个的jbpm项目

时间:2014-05-07 16:08:08      阅读:350      评论:0      收藏:0      [点我收藏+]

为了解决上一章提出的问题,现在去编写一个简单类似的jbpm代码!!

这个项目没有使用到spring,碰到第一个问题是sessionfactory应该怎么持久化呢??

在jbpm的配置文件jbpm.cfg.xml文件中:如下,可以看到其实就是简单的导入一些配置文件,这些配置文件都是jbpm自己的东西(当然除了下面标注的),

jbpm-configuration>

  import resource="jbpm.default.cfg.xml" /> 

import resource="jbpm.businesscalendar.cfg.xml" />
  import resource="jbpm.tx.hibernate.cfg.xml" />  //这个文件是自己写的
import resource="jbpm.jpdl.cfg.xml" />
  import resource="jbpm.bpmn.cfg.xml" />
  import resource="jbpm.identity.cfg.xml" />

 /jbpm-configuration>

如果需要整合spring的话,需要加上:很好记的东西

<import resource="jbpm.tx.spring.cfg.xml" />

整合spring的一个很重要的类springHelper,放到spring中去管理吧,

springHelper实现了ApplicationContextAware接口,springHelper可以从spring容器中获得ApplicationContext,

     然后springHelper可以利用ApplicationContext和jbpm.cfg.xml(jbpm的配置文件)一起生成伟大的processEngine。

<!-- 配置ProcessEngine -->
 <bean id="springHelper" class="org.jbpm.pvm.internal.processengine.SpringHelper">
  <property name="jbpmCfg" value="jbpm.cfg.xml"></property>
 </bean>
 <bean id="processEngine" factory-bean="springHelper" factory-method="createProcessEngine" />
上面标红的地方直接写的jbpm的配置文件,因为jbpm默认的就认为配置文件放在classpath下(也就是eclipse目录的src下),如果你要在src下建立一个文件夹话,那么就请加上这个文件的路径吧 !!看到网友的总结好像最好不要放在WEB-INF下(可以参考官方的开发指南,默认提供的SpringHelper只支持从classpath下读取配置。http://www.family168.com/tutorial/jbpm4devguide/html/springIntegration.html如果你想放在WEB-INF下,需要自己创建Configuration,然后设置jbpm.cfg.xml的位置,参考http://www.family168.com/tutorial/jbpm4.0/html/services.html,创建Configuration可以指定xml的位置,参考jbpm-api的javadoc)

如果整合了spring的话,发现jbpm的配置文件变为了这样,其实没有什么别的区别,只是herbinate的那个导入没有了,但是也咩有发现有jbpm.tx.spring.cfg.xml这个文件,难道又是jbpm自己有的(我觉得这两个文件都是jbpm自己所含的,你需要进行覆盖,因为要使用hibernate的话必须要写配置数据库的代码,当仅仅整合hibernate的话,那么就拿出这个文件来写一下,如果还整合了spring的话那么数据库的信息就在spring中进行编写了,也是就datasource)也就是:将jbpm.cfg.xml文件中<import resource="jbpm.tx.hibernate.cfg.xml" />一行,修改为 <import resource="jbpm.tx.spring.cfg.xml" />

在spring的配置文件中:appl;icationContext.xml,注意:   此处千万不要忘记了 ,这5个映射关系会在spring容器初始化的时候persistent到数据库中,如果没有,肯定会报exception,如果单独配置hibernate的话就写在jbpm.tx.hibernate.cfg.xm中

  1. <property name="mappingResources">  
  2.             <list>  
  3.                 <value>jbpm.repository.hbm.xml</value>  
  4.                 <value>jbpm.execution.hbm.xml</value>  
  5.                 <value>jbpm.history.hbm.xml</value>  
  6.                 <value>jbpm.task.hbm.xml</value>  
  7.                 <value>jbpm.identity.hbm.xml</value>  
  8.             </list>  
  9.         </property>  

OA第七天---转向简单一个的jbpm项目,布布扣,bubuko.com

OA第七天---转向简单一个的jbpm项目

原文:http://blog.csdn.net/huangleijay/article/details/25194291

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!