spring boot 整合 activiti 遇到過的問題

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。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章