转载请注明出处 https://www.cnblogs.com/rolayblog/p/10444866.html

某天有同事反映,审批记录中看到该他审批,但是待办里面却没有待办事项,于是看服务器日志,找到了问题所在。业务代码报错,已经抛出了异常,但是流程还是继续往下走了,完全不受@Transactional注解影响,看到这里就知道问题在哪里了,此时我用的正是默认获取流程引擎对象的方式,Activiti大佬和Spring大佬自己做自己的,不行要把它们掰弯,强行在一起。于是翻阅《Activiti 权威指南》找到了解决方法,买了这本书就没有怎么看过,只是遇到问题了才翻一翻。另外,感谢分享牛大佬的提醒。

Tip

了解activiti的道友们应该都知道,流程引擎的配置文件放在resources下,可以直接通过ProcessEngines.getDefaultProcessEngine()方法直接获取流程引擎对象,亦或者通过ProcessEngineConfiguration.createProcessEngineConfigurationFromInputStream()读取其他位置的配置文件,但是呢,咋们既然用了强大的Sring,像事务、流程引擎对象的管理甚至流程引擎内部的API都交给统统交给它吧!进入正题吧。

Maven

我这里排除了spring-context,因为项目里面用的spring是高版本的,但是Activiti 5.22只能引用这个版本的activiti-spring,可根据自己需要删除。

 1 <dependency>
 2             <groupId>org.activiti</groupId>
 3             <artifactId>activiti-spring</artifactId>
 4             <version>5.22.0</version>
 5             <exclusions>
 6                 <exclusion>
 7                     <groupId>org.springframework</groupId>
 8                     <artifactId>spring-context</artifactId>
 9                 </exclusion>
10             </exclusions>
11 </dependency>
View Code

相关文章:

  • 2021-09-21
  • 2021-10-01
  • 2021-08-24
猜你喜欢
  • 2021-10-13
  • 2022-12-23
  • 2022-02-25
  • 2022-02-10
  • 2021-10-03
  • 2022-02-08
相关资源
相似解决方案