温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

springboot整合activity过程中报错的解决方法

发布时间:2020-05-29 17:19:54 来源:亿速云 阅读:473 作者:鸽子 栏目:编程语言

1.首先是maven添加依赖各种报错。

<!-- https://mvnrepository.com/artifact/org.activiti/activiti-spring-boot-starter-basic -->
 
<dependency>    
 
<groupId>org.activiti</groupId>    
 
<artifactId>activiti-spring-boot-starter-basic</artifactId>    
 
<version>5.22.0</version>
 
</dependency>

 

尝试数次,无效,改天再次尝试,成功。

 

2.后来使用5.17版本,成功

<dependency>
    <groupId>org.activiti</groupId>
    <artifactId>spring-boot-starter-basic</artifactId>
    <version>5.17</version>
</dependency>

其中很多的架包无法直接引入,需要手动导入。详见手动导入maven架包。

 

5.17版本和mybitis3.25兼容,其他的版本都有问题,具体问题是sql会多出一个order by。最后还是使用5.22版本

 

3.环境搭建好之后,部署对应的activiti流程,activiti desingner在前面已经说过了。启动项目,对于.bpmn文件系统会帮你直接把流程自动发布出去。

 

4.spring boot 整合单元测试

@RunWith(SpringJUnit4Cla***unner.class) // SpringJUnit支持,由此引入Spring-Test框架支持! 
@SpringApplicationConfiguration(classes = Application.class) // 指定我们SpringBoot工程的Application启动类
@WebAppConfiguration // 由于是Web项目,Junit需要模拟ServletContext,因此我们需要给我们的测试类加上@WebAppConfiguration。

 

5.后来项目发现,如果同一个实例,springboot无法在其他表空间创建25张表,使用加载activiti.cfg.xml的方式进行创建表。

<beans xmlns="http://www.springframework.org/schema/beans"   
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
       xsi:schemaLocation="http://www.springframework.org/schema/beans   
       http://www.springframework.org/schema/beans/spring-beans.xsd">  
  
	   <!-- Activiti处理引擎的配置,交由Spring管理 -->  
  
  	   <bean id="processEngineConfiguration" class="org.activiti.spring.SpringProcessEngineConfiguration">  
          <!-- 配置数据源,和系统使用同一个数据源 -->  
          <property name="dataSource" ref="dataSource" />  
          <property name="databaseSchemaUpdate" value="true" />  
          <property name="jobExecutorActivate" value="false" />  
          <!-- 统一的事务管理 -->  
          <property name="transactionManager" ref="transactionManager" />  
          <property name="activityFontName"  value="宋体" />  
          <property name="labelFontName"  value="宋体" />  
          <property name="databaseSchema" value="ACT"/>
  	   </bean>  
  
	   <bean id="processEngine" class="org.activiti.spring.ProcessEngineFactoryBean">  
	      <property name="processEngineConfiguration" ref="processEngineConfiguration" />  
	   </bean> 
	   <!-- 
	   <bean id="testService2" class="com.imm.amo.controller.ActivitiTest"></bean> 
	   -->
</beans>  
package com.imm.config;
 
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.ImportResource;
 
 
@Configuration
@ImportResource(locations={"classpath:activiti.cfg.xml"})
public class config {
 
}

启动项目,创建activiti表。

但是因为使用了xml方式加载activiti,所以无法自动发布流程定义。固加载成功之后,去除@ImportResource即可。

springboot 整合activiti6 案例:www.b123.com

6.删除activiti表时,注意要删除SEQUENCE ACT_EVT_LOG_SEQ。


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI