• jbpm与spring hibernate struts整合


    applicationContext.xml

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"
        xmlns:tx="http://www.springframework.org/schema/tx"
        xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
                    http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd
                    http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd">
     
     
        <!-- 自动扫描与装配bean -->
        <context:component-scan base-package="cn.itcast.oa"></context:component-scan>
     
     
        <!-- 导入外部的properties配置文件 -->
        <context:property-placeholder location="classpath:jdbc.properties" />
     
     
        <!-- 配置数据库连接池 -->
        <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
            <!-- =========== 数据库连接信息 =========== -->
            <property name="jdbcUrl" value="${jdbcUrl}"></property>
            <property name="driverClass" value="${driverClass}"></property>
            <property name="user" value="${username}"></property>
            <property name="password" value="${password}"></property>
            <!-- =========== 连接池的管理配置 =========== -->
            <!--初始化时获取三个连接,取值应在minPoolSize与maxPoolSize之间。Default: 3 -->
            <property name="initialPoolSize" value="3"></property>
            <!--连接池中保留的最小连接数。Default: 3 -->
            <property name="minPoolSize" value="3"></property>
            <!--连接池中保留的最大连接数。Default: 15 -->
            <property name="maxPoolSize" value="5"></property>
            <!--当连接池中的连接耗尽的时候c3p0一次同时获取的连接数。Default: 3 -->
            <property name="acquireIncrement" value="3"></property>
            <!--
                控制数据源内加载的PreparedStatements数量。如果maxStatements与maxStatementsPerConnection均为0,则缓存被关闭。Default:
                0
            -->
            <property name="maxStatements" value="8"></property>
            <!--
                maxStatementsPerConnection定义了连接池内单个连接所拥有的最大缓存statements数。Default: 0
            -->
            <property name="maxStatementsPerConnection" value="5"></property>
            <!--最大空闲时间,1800秒内未使用则连接被丢弃。若为0则永不丢弃。Default: 0 -->
            <property name="maxIdleTime" value="1800"></property>
        </bean>
     
     
        <!-- 配置SessionFactory -->
        <bean id="sessionFactory"
            class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
            <property name="dataSource" ref="dataSource"></property>
            <property name="configLocation" value="classpath:hibernate.cfg.xml"></property>
        </bean>
     
     
     
        <!-- 配置声明式的事务管理(采用基于注解的方式) -->
        <bean id="txManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
            <property name="sessionFactory" ref="sessionFactory"></property>
        </bean>
        <tx:annotation-driven transaction-manager="txManager" />
     
     
     
        <!-- 配置JBPM的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" />
     
     
     
    </beans>

      hibernate.cfg.xml

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    <!DOCTYPE hibernate-configuration PUBLIC
        "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
        "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
     
    <hibernate-configuration>
    <session-factory>
     
        <!-- 数据连接信息
            <property name="hibernate.connection.url">jdbc:mysql:///itcastoa</property>
            <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
            <property name="hibernate.connection.username">root</property>
            <property name="hibernate.connection.password">1234</property>
        -->
     
        <property name="hibernate.dialect">
            org.hibernate.dialect.MySQL5InnoDBDialect
        </property>
     
        <!-- 其他配置信息 -->
        <property name="show_sql">true</property>
        <property name="hbm2ddl.auto">update</property>
     
     
        <!-- 这些映射文件是JBPM的,不能删除!!! -->
        <mapping resource="jbpm.repository.hbm.xml" />
        <mapping resource="jbpm.execution.hbm.xml" />
        <mapping resource="jbpm.history.hbm.xml" />
        <mapping resource="jbpm.task.hbm.xml" />
        <mapping resource="jbpm.identity.hbm.xml" />
     
     
        <!-- 声明映射文件 -->
        <mapping resource="cn/itcast/oa/domain/User.hbm.xml" />
        <mapping resource="cn/itcast/oa/domain/Role.hbm.xml" />
        <mapping resource="cn/itcast/oa/domain/Department.hbm.xml" />
        <mapping resource="cn/itcast/oa/domain/Privilege.hbm.xml" />
        <mapping resource="cn/itcast/oa/domain/Forum.hbm.xml" />
        <mapping resource="cn/itcast/oa/domain/Reply.hbm.xml" />
        <mapping resource="cn/itcast/oa/domain/Topic.hbm.xml" />
        <mapping resource="cn/itcast/oa/domain/Template.hbm.xml" />
     
     
    </session-factory>
    </hibernate-configuration>

    删除:src/jbpm.hibernate.cfg.xml  

    jbpm.cfg.xml

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    <?xml version="1.0" encoding="UTF-8"?>
     
    <jbpm-configuration>
     
        <import resource="jbpm.default.cfg.xml" />
        <import resource="jbpm.businesscalendar.cfg.xml" />
     
        <!-- 删除此项配置
        <import resource="jbpm.tx.hibernate.cfg.xml" />
        -->
     
        <!-- 导入jbpm.tx.spring.cfg.xml文件 -->
        <import resource="jbpm.tx.spring.cfg.xml" />
     
     
        <import resource="jbpm.jpdl.cfg.xml" />
        <import resource="jbpm.bpmn.cfg.xml" />
        <import resource="jbpm.identity.cfg.xml" />
     
        <!-- Job executor is excluded for running the example test cases. -->
        <!--
            To enable timers and messages in production use, this should be
            included.
        -->
        <!--
      <import resource="jbpm.jobexecutor.cfg.xml" />
      -->
     
    </jbpm-configuration>

      测试:

    1
    2
    3
    4
    5
    @Test
    public void testProcessEngine() throws Exception {
        ProcessEngine processEngine = (ProcessEngine) ac.getBean("processEngine");
        System.out.println(processEngine);
    }

      业务层获取ProcessEngine方式:

    @Resource

    private ProcessEngine processEngine

       

    注意:如果启动程序的时候包错的内容是关于el表达式错误信息

    处理方式:

      里面不包含jbpm的juel-api.jar juel-engine.jar juel-impl.jar这三个jar包 ,因为这三个jar包自带的el表达式需要的jar包 而且版本比tomcat里面自带的lib包的el.jar版本高,所有应该删除jbpm的这三个jar包 拷贝到tomcat的lib包下

  • 相关阅读:
    hdoj 2803 The MAX【简单规律题】
    hdoj 2579 Dating with girls(2)【三重数组标记去重】
    hdoj 1495 非常可乐【bfs隐式图】
    poj 1149 PIGS【最大流经典建图】
    poj 3281 Dining【拆点网络流】
    hdoj 3572 Task Schedule【建立超级源点超级汇点】
    hdoj 1532 Drainage Ditches【最大流模板题】
    poj 1459 Power Network【建立超级源点,超级汇点】
    hdoj 3861 The King’s Problem【强连通缩点建图&&最小路径覆盖】
    hdoj 1012 u Calculate e
  • 原文地址:https://www.cnblogs.com/HHR-SUN/p/7220430.html
Copyright © 2020-2023  润新知