读书人

新Jbpm4.4与spring调整方式

发布时间: 2012-12-19 14:13:14 作者: rapoo

新Jbpm4.4与spring整合方式
public class ProcessEngineFactoryBean extends SpringHelper {protected SessionFactory sessionFactory;public void setSessionFactory(SessionFactory sessionFactory) {this.sessionFactory = sessionFactory;}public ProcessEngine createProcessEngine() {processEngine = new ConfigurationImpl().springInitiated(applicationContext).setResource(jbpmCfg).setHibernateSessionFactory(sessionFactory).buildProcessEngine();return processEngine;}}

??

?二、创建Spring配置文件,用于新—ataSource和SesionFacotory,此处省略了jdbc.properties(即数据库连接信息)。

?

?

<?xml version="1.0" encoding="gb2312"?><!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd"><beans><bean id="dataSource-jbpm" /></property><property name="configLocations"><list><value>/WEB-INF/hibernate/jbpm/jbpm.hibernate.cfg.xml</value></list></property><property name="lobHandler" ref="lobHandler" /></bean><bean id="nativeJdbcExtractor"/><bean id="lobHandler" /></property></bean><bean id="transactionManager-jbpm"/></property></bean><!-- jbpm配置 com.dawn.jbpm4.cfg.pvm.ProcessEngineFactoryBean上面已经定义--><bean id="springHelper" value="com/dawn/jbpm4/cfg/jbpm.cfg.xml"></property><property name="sessionFactory"><ref local="sessionFactory-jbpm" /></property></bean><bean id="processEngine" factory-bean="springHelper" factory-method="createProcessEngine" /><bean id="repositoryService" factory-bean="processEngine" factory-method="getRepositoryService" /><bean id="executionService" factory-bean="processEngine" factory-method="getExecutionService" /><bean id="historyService" factory-bean="processEngine" factory-method="getHistoryService" /><bean id="taskService" factory-bean="processEngine" factory-method="getTaskService" /><bean id="identityService" factory-bean="processEngine" factory-method="getIdentityService" /><bean id="managementService" factory-bean="processEngine" factory-method="getManagementService" /></beans>

?三、创建我们的jbpm.cfg.xml<==>com/dawn/jbpm4/cfg/jbpm.cfg.xml

?

<?xml version="1.0" encoding="UTF-8"?><jbpm-configuration><import resource="jbpm.default.cfg.xml" /><import resource="jbpm.businesscalendar.cfg.xml" /><import resource="jbpm.jpdl.cfg.xml" /><import resource="jbpm.bpmn.cfg.xml" /><import resource="jbpm.identity.cfg.xml" /><import resource="jbpm.console.cfg.xml" /><import resource="com/dawn/jbpm4/cfg/jbpm.tx.spring.cfg.xml" /><!--此处为官方配置  <import resource="jbpm.tx.spring.cfg.xml" /><process-engine-context> <string name="spring.cfg" value="com/dawn/jbpm4/cfg/spring-jbpm.xml" />    </process-engine-context>--><!--  <import resource="jbpm.tx.hibernate.cfg.xml" />--><!-- Job executor is excluded for running the example test cases. --><!--To enable timers and messages in production use, this should beincluded.--><!--  <import resource="jbpm.jobexecutor.cfg.xml" />  --></jbpm-configuration>

?

<?xml version="1.0" encoding="UTF-8"?><jbpm-configuration spring="enabled"> <process-engine-context> <command-service name="newTxRequiredCommandService"> <retry-interceptor /> <environment-interceptor policy="requiresNew" /> <spring-transaction-interceptor policy="requiresNew" /> </command-service> <!-- Default command service has a Spring transaction interceptor--> <command-service name="txRequiredCommandService"> <retry-interceptor /> <environment-interceptor /> <spring-transaction-interceptor transaction-manager="transactionManager-jbpm"/> </command-service> </process-engine-context> <transaction-context> <transaction type="spring" /> <hibernate-session current="true" /> </transaction-context></jbpm-configuration>

?

OK!你可以试试效果了,希望对遇到同样需求的朋友有帮助!各位多多指教!新Jbpm4.4与spring调整方式

1 楼 zhangyuna1987 2011-05-20 对我真的很有用,正是我急需,我试下

读书人网 >编程

热点推荐