<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd"> <beans> <!-- spring负责创建流程引擎的配置文件 --> <bean id="processEngineConfiguration" class="org.activiti.spring.SpringProcessEngineConfiguration"> <!-- 数据源 --> <property name="dataSource" ref="dataSource-activiti" /> <!-- 配置事务管理器,统一事务 --> <property name="transactionManager" ref="transactionManager-activiti" /> <!-- 设置建表策略,如果没有表,自动创建表 --> <property name="databaseSchemaUpdate" value="true" /> <!-- 设置字体,防止流程图生成时候产生乱码 --> <property name="activityFontName" value="宋体"></property> <property name="labelFontName" value="宋体"></property> <!-- 设置字体,防止xml生成时候产生乱码 --> <property name="xmlEncoding" value="GBK"></property> </bean> <!-- 创建流程引擎对象 --> <bean id="processEngine" class="org.activiti.spring.ProcessEngineFactoryBean"> <property name="processEngineConfiguration" ref="processEngineConfiguration" /> </bean> <!-- 相当于下面的代码 RepositoryServicie repositoryService = processEngine.getRepositoryService(); RuntimeServicie repositoryService = processEngine.getRuntimeServicie(); TaskServicie taskServicie = processEngine.getTaskServicie(); HistoryServicie historyServicie = processEngine.getHistoryServicie(); --> <!-- 由流程引擎对象,提供的方法,创建项目中使用的Activiti工作流的Service --> <bean id="repositoryService" factory-bean="processEngine" factory-method="getRepositoryService" /> <bean id="runtimeService" factory-bean="processEngine" factory-method="getRuntimeService" /> <bean id="taskService" factory-bean="processEngine" factory-method="getTaskService" /> <bean id="historyService" factory-bean="processEngine" factory-method="getHistoryService" /> <bean id="formService" factory-bean="processEngine" factory-method="getFormService" /> <bean id="managementService" factory-bean="processEngine" factory-method="getManagementService" /> </beans>