web应用中集成spring和jbpm4.4

超低价手机,仅售58元

1.使用maven新建web应用,如jbpmweb

2.在pom.xml中增加repository,因部分依赖jar在默认库(repo1.maven.org/maven2)中不存在

<repositories>
   <repository>
      <id>spring</id>
      <url>http://repo.springframework.org/release</url>
   </repository>
   <repository>
 <id>jboss</id>
 <url>https://repository.jboss.org/nexus/content/groups/public</url>
   </repository>
   <repository>
 <id>maven</id>
 <url>http://repo1.maven.org/maven2/</url>
   </repository>
</repositories>

2.在pom.xml中增加依赖

    <properties>
   <spring.version>3.1.0.RELEASE</spring.version>
   </properties>
   <!--jbpm开发包-->
   <groupId>org.jbpm.jbpm4</groupId>
   <artifactId>jbpm</artifactId>
   <version>4.4</version>
   </dependency>
   
   <!--spring依赖包-->
   <dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-core</artifactId>
    <version>${spring.version}</version>
   </dependency>
   <dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-expression</artifactId>
    <version>${spring.version}</version>
   </dependency>
   <dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-beans</artifactId>
    <version>${spring.version}</version>
   </dependency>
   <dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-aop</artifactId>
    <version>${spring.version}</version>
   </dependency>
   <dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-context</artifactId>
    <version>${spring.version}</version>
   </dependency>
   <dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-context-support</artifactId>
    <version>${spring.version}</version>
   </dependency>
   <dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-tx</artifactId>
    <version>${spring.version}</version>
   </dependency>
   <dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-jdbc</artifactId>
    <version>${spring.version}</version>
   </dependency>
   <dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-jms</artifactId>
    <version>${spring.version}</version>
   </dependency>
   <dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-web</artifactId>
    <version>${spring.version}</version>
   </dependency>
   <dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-webmvc</artifactId>
    <version>${spring.version}</version>
   </dependency>
   
   <dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-orm</artifactId>
    <version>${spring.version}</version>
   </dependency>
   <!--oracle驱动包-->
   <dependency>
    <groupId>com.oracle</groupId>
    <artifactId>ojdbc14</artifactId>
    <version>10.2.0.1.0</version>
   </dependency>


3.更改spring的bean配置文件,假设bean配置文件为jbpmweb/WEB-INF/spring/appservice.xml
把jbpm-4.4/install/src/cfg/spring/applicationContext.xml中的所有bean定义粘贴到appservice.xml

 <bean id="springHelper" class="org.jbpm.pvm.internal.processengine.SpringHelper" />
 <bean id="processEngine" factory-bean="springHelper" factory-method="createProcessEngine" />
 <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
    <property name="configLocation" value="classpath:jbpm.hibernate.cfg.xml" />
    <property name="dataSource" ref="dataSource" />
  </bean>

 <bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
    <property name="sessionFactory" ref="sessionFactory" />
    <property name="dataSource" ref="dataSource" />
 </bean>

  <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
    <property name="driverClassName" value="@jdbc.driver@" />
    <property name="url" value="@jdbc.url@" />
    <property name="username" value="@jdbc.username@" />
    <property name="password" value="@jdbc.password@" />
  </bean>

4.修改appservice.xml中的springHelper的配置为
  <bean id="springHelper" class="org.jbpm.pvm.internal.processengine.SpringHelper" >
      <property name="jbpmCfg" value="jbpm.cfg.xml" />
  </bean>

5.修改appservice.xml中的dataSource为实际值
    <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
    <property name="driverClassName" value="oracle.jdbc.driver.OracleDriver" />
    <property name="url" value="jdbc:oracle:thin:@localhost:1521:orcl" />
    <property name="username" value="user" />
    <property name="password" value="pwd" />
    </bean>

6.复制文件jbpm-4.4/install/src/cfg/jbpm/spring.jbpm.cfg.xml到
jbpmweb/WEB-INF/classes,改名为jbpm.cfg.xml

7.复制文件jbpm-4.4/install/src/cfg/hibernate/spring/oracle.hibernate.cfg.xml到
jbpmweb/WEB-INF/classes,改名为jbpm.hibernate.cfg.xml

8.至此,可以在eclipse中开发jbpm程序.如果要布署到tomcat中,还需要追加jar包到应用的lib目录下

追加的jar包如下:

 spring-hibernate3-2.0.8.jar
 activation.jar
 antlr.jar
 antlr-runtime.jar
 bsh.jar
  commons-collections.jar
        commons-logging.jar
        dom4j.jar
        drools-api.jar
        drools-core.jar
        drools-compiler.jar
        freemarker.jar
        groovy-all.jar
        hibernate-core.jar
        hibernate-cglib-repack.jar
        janino.jar
        javassist.jar
        jbpm-spi.jar
        jbpm-tomcat6.jar
        joda-time.jar
        jta.jar
 juel-api.jar
 juel-engine.jar
 juel-impl.jar
        livetribe-jsr223.jar
        log4j.jar
        mail.jar
        mvel2.jar
        slf4j-api.jar
        slf4j-jdk14.jar

9.可以参考jbpm-4.4/instal/build.xml中的自动布署任务install.jbpm.into.tomcat来写自已的jar追加任务
 <target name="install.jbpm" description="Deploy jBPM to jbpmweb">
 <copy todir="${tomcat.home}/webapps/jbpmweb/WEB-INF/lib" overwrite="true">
      <fileset dir="${jbpm.home}">
        <include name="jbpm.jar" />
      </fileset>
      <fileset dir="${jbpm.home}/hibernatelib">
 <include name="spring-hibernate3-2.0.8.jar" />
      </fileset>
      <fileset dir="${jbpm.home}/lib">
        <include name="activation.jar" />
        <include name="antlr.jar" />
        <include name="antlr-runtime.jar" />
        <include name="bsh.jar" />
        <include name="commons-collections.jar" />
        <include name="commons-logging.jar" />
        <include name="dom4j.jar" />
        <include name="drools-api.jar" />
        <include name="drools-core.jar" />
        <include name="drools-compiler.jar" />
        <include name="freemarker.jar" />
        <include name="groovy-all.jar" />
        <include name="hibernate-core.jar" />
        <include name="hibernate-cglib-repack.jar" />
        <include name="janino.jar" />
        <include name="javassist.jar" />
        <include name="jbpm-spi.jar" />
        <include name="jbpm-tomcat6.jar" />
        <include name="joda-time.jar" />
        <include name="jta.jar" />
        <include name="juel*.jar" />
        <include name="livetribe-jsr223.jar" />
        <include name="log4j.jar" />
        <include name="mail.jar" />
        <include name="mvel2.jar" />
        <include name="slf4j-api.jar" />
        <include name="slf4j-jdk14.jar" />
   </fileset>
  </copy>
  </target>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值