Commit ec876d54a4ea85fce87cd1d5b7472e9129df2b17

Authored by YunaiV
1 parent fcd44d8b

修复 activiti 事务的一致性

yudao-framework/yudao-spring-boot-starter-activiti/pom.xml
... ... @@ -43,12 +43,10 @@
43 43 <artifactId>yudao-spring-boot-starter-security</artifactId>
44 44 </dependency>
45 45  
46   -
47   -
  46 + <!-- DB 相关 -->
48 47 <dependency>
49   - <groupId>org.mybatis</groupId>
50   - <artifactId>mybatis</artifactId>
51   - <optional>true</optional>
  48 + <groupId>cn.iocoder.boot</groupId>
  49 + <artifactId>yudao-spring-boot-starter-mybatis</artifactId>
52 50 </dependency>
53 51  
54 52 <!--使用mybatis plus需排除掉mybatis-->
... ...
yudao-framework/yudao-spring-boot-starter-activiti/src/main/java/cn/iocoder/yudao/framework/activiti/config/YudaoActivitiConfiguration.java
... ... @@ -4,9 +4,15 @@ import cn.iocoder.yudao.framework.activiti.core.web.ActivitiWebFilter;
4 4 import cn.iocoder.yudao.framework.common.enums.WebFilterOrderEnum;
5 5 import org.activiti.image.ProcessDiagramGenerator;
6 6 import org.activiti.image.impl.DefaultProcessDiagramGenerator;
  7 +import org.activiti.spring.SpringProcessEngineConfiguration;
  8 +import org.activiti.spring.boot.ProcessEngineConfigurationConfigurer;
  9 +import org.apache.ibatis.session.SqlSessionFactory;
  10 +import org.apache.ibatis.transaction.TransactionFactory;
  11 +import org.mybatis.spring.transaction.SpringManagedTransactionFactory;
7 12 import org.springframework.boot.web.servlet.FilterRegistrationBean;
8 13 import org.springframework.context.annotation.Bean;
9 14 import org.springframework.context.annotation.Configuration;
  15 +import org.springframework.transaction.PlatformTransactionManager;
10 16  
11 17 @Configuration
12 18 public class YudaoActivitiConfiguration {
... ... @@ -27,4 +33,13 @@ public class YudaoActivitiConfiguration {
27 33 return registrationBean;
28 34 }
29 35  
  36 + /**
  37 + * ProcessEngineConfigurationConfigurer 实现类,设置事务管理器,保证 ACT_ 表和自己的表的事务一致性
  38 + */
  39 + @Bean
  40 + public ProcessEngineConfigurationConfigurer processEngineConfigurationConfigurer(
  41 + PlatformTransactionManager platformTransactionManager) {
  42 + return processEngineConfiguration -> processEngineConfiguration.setTransactionManager(platformTransactionManager);
  43 + }
  44 +
30 45 }
... ...