osworkflow2.8提供了新的方式,将osworkflow集成到Spring环境中,并且使用Hibernate3持久化工作流状态。相关配置片断如下:
<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"> <property name="dataSource"> <ref bean="dataSource"/> </property> <property name="hibernateProperties"> <ref bean="hibernateProperties"/> </property> <property name="mappingResources"> <list> <!-- osworkflow mapping files --> <value>com/opensymphony/workflow/spi/hibernate/HibernateCurrentStep.hbm.xml</value> <value>com/opensymphony/workflow/spi/hibernate/HibernateHistoryStep.hbm.xml</value> <value>com/opensymphony/workflow/spi/hibernate/HibernateWorkflowEntry.hbm.xml</value> </list> </property> </bean> <bean id="propertySetDelegate" class="com.opensymphony.workflow.spi.hibernate.DefaultHibernatePropertySetDelegate"> <property name="sessionFactory"> <ref bean="sessionFactory"/> </property> </bean> <bean id="workflowStore" class="com.opensymphony.workflow.spi.hibernate3.NewSpringHibernateWorkflowStore"> <property name="sessionFactory"> <ref bean="sessionFactory"/> </property> <property name="propertySetDelegate"> <ref bean="propertySetDelegate"/> </property> </bean> <bean id="workflowFactory" class="com.opensymphony.workflow.loader.SpringWorkflowFactory" init-method="init"> <property name="resource"> <value>workflows.xml</value> </property> <property name="reload"> <value>true</value> </property></bean> <bean id="workflowConfiguration" class="com.opensymphony.workflow.config.SpringConfiguration"> <property name="store"> <ref local="workflowStore"/> </property> <property name="factory"> <ref local="workflowFactory"/> </property> </bean> <bean id="workflowTypeResolver" class="com.opensymphony.workflow.util.SpringTypeResolver"> </bean>
在应用代码中初始化工作流示例片断:
Workflow workflow = new BasicWorkflow(String caller); workflow.setConfiguration(workflowConfiguration); workflow.initialize(workflowName, 0, null);
Powered by: 语源科技BlogJava Copyright © snowolf