ssh+jbpm整合

来源:互联网 发布:钉钉 阿里云企业邮箱 编辑:程序博客网 时间:2024/05/22 09:38

spring与jbpm的整合

   * 由spring容器产生processEngine

   * jbpm的事务交给spring处理




整合步骤:

   * 导入jbpm的jar包

   * 删除db和hibernate的jar包

   * 在config下创建一个配置文件

         config/jbpm

                 jbpm.cfg.xml

                 jbpm.hibernate.cfg.xml

   * jbpm.cfg.xml文件中

        <importresource="jbpm.tx.hibernate.cfg.xml" />改为

        <importresource="jbpm.tx.spring.cfg.xml" />

       统一由spring处理事务,由下边的配置可以看出是通过创建新的session从而开启事务的

jbpm.tx.spring.cfg.xml

    <command-servicename="newTxRequiredCommandService">

      <retry-interceptor />

      <environment-interceptorpolicy="requiresNew" />

      <spring-transaction-interceptorpolicy="requiresNew" />

    </command-service>


   * jbpm.hibernate.cfg.xml文件中

        * 数据库的连接配置

            <propertyname="current_session_context_class">thread</property>

             这行配置不能写,不能从当前线程中获取session

        * OA项目本身的表的映射文件

        * jbpm的表的映射文件

   * spring的配置文件

       * hibernate配置文件的路径修改

             <beanid="sessionFactory"

                   class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">

                <propertyname="configLocation">

                  <value>classpath:jbpm/jbpm.hibernate.cfg.xml</value>

                </property>

             </bean>

       * 让spring产生processEngine

           <bean id="springHelper"class="org.jbpm.pvm.internal.processengine.SpringHelper">

             <propertyname="jbpmCfg"value="jbpm/jbpm.cfg.xml"></property>

             </bean>

              <beanid="processEngine" factory-bean="springHelper"

                        factory-method="createProcessEngine" />

            注意jbpm.cfg.xml配置文件的路径