Jbpm与SSH融合总结

本文介绍如何通过JBPM3、Hibernate3、Struts2和Spring2搭建工作流平台,详细展示了配置过程,包括Session Factory、JBPM Configuration等关键步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

概述:本例使用jbpm3 + hibernate3+struts2+Spring2   


配置设置:

   1   hibernate3+struts2+Spring2    的配置不在赘述;

    2 修改jbpm.cfg.xml。注释掉获取hibernate.cfg.xml的配置

<!-- 取出本句话 
  <string name="resource.hibernate.cfg.xml" value="hibernate.cfg.xml" />-->

    3  将Jbpm3融合配置: 

  (1) 下载 spring-modules-jbpm31.jar

(2) 配置sessionFactory

<bean id="sessionFactory"
		class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">
		<property name="dataSource" ref="dataSource" />
		<property name="mappingResources">
			<list>
			</list>
		</property>
		<property name="mappingLocations">
			<list>
				<value>classpath*:/org/jbpm/**/*.hbm.xml</value> 
			</list>
		</property>

		<!-- 大对象处理器 -->
		<property name="lobHandler" ref="lobHandler" />

		<!--  可以同时支持annotatedClasses和hbm-->
		<property name="packagesToScan">
			<list>
				<value>ins.platform.**.model</value>
				<value>com.sinosoft.bgt.**.model</value>
			</list>
		</property>
		
		<property name="hibernateProperties">
			<props>
				<prop key="hibernate.dialect"> ${hibernate.dialect} </prop>
				<prop key="hibernate.show_sql">true</prop>
				<prop key="hibernate.format_sql">trur</prop>
				<prop key="hibernate.cache.provider_class">org.hibernate.cache.HashtableCacheProvider</prop>
				<prop key="hibernate.cache.use_query_cache">true</prop>
				<prop key="hibernate.hbm2ddl.auto">none</prop>
			</props>
		</property>
</bean>
(3) 配置jbpmConfiguration

<bean id="jbpmConfiguration"
		class="org.springmodules.workflow.jbpm31.LocalJbpmConfigurationFactoryBean">
		<property name="sessionFactory" ref="sessionFactory" />
		<property name="configuration" value="classpath:/jbpm.cfg.xml" />

		<property name="processDefinitions">
			<list>
				<!--此处配置流程 -->
					<ref bean="workWorkflow" />
			</list>
		</property>
		<!-- createSchema设置 false ,防止每次启动实例化 -->
		<property name="createSchema" value="false" />
</bean>
(4) 配置 jbpmTemplate

<bean id="jbpmTemplate" class="org.springmodules.workflow.jbpm31.JbpmTemplate">
    <constructor-arg index="0" ref="jbpmConfiguration"/>
	<!-- -->
    <!-- <constructor-arg index="1" ref="workWorkflow"/> -->
</bean>
配置完以上四点后就已经可以实现基本的流程,实例流程,查询的方法了

*(5)配置实例化的工作流(不是必要)

<bean id="workWorkflow" class="org.springmodules.workflow.jbpm31.definition.ProcessDefinitionFactoryBean">
        <property name="definitionLocation" value="classpath:/process/budget_branch_verify/budget_branch_verify.zip"/>
</bean>

以上是我的配置:

注意点:

1 测试配置不要再main方法中测试,会报得不到数据源的问题。(小弟被此问题搞了一天以为配置有问题,转换到JUnitTest后没有问题了,泪崩)。

还存在的问题:本人配置的可以显示流程的实例,流程的查询都是没问题的。但是没有实现流程的部署,本人的流程不熟还是和经典的借款审批工作流一样走main方法,数据源从hibernate.cfg.xml获得。

如有问题,请指正。谢谢






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值