国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - SpringCloud整合Activiti過程中的踩坑記錄

SpringCloud整合Activiti過程中的踩坑記錄

2021-12-23 13:18l去留無心 Java教程

由于項目需要,最近開始在項目Spring boot中集成工作流引擎Activiti,由于第一次集成,一路上步步都是坑,所以這篇文章主要給大家介紹了關于SpringCloud整合Activiti過程中所遇到的踩坑記錄,需要的朋友可以參考下

前言

最近需要用到工作流,選擇了Activiti,剛開始配置起來并沒有很順利。記錄一下希望對讀者們有幫助。

先來看我這邊項目的環(huán)境:主要為JDK1.8,SpringbBoot2.3.5,MyBatis-Plus3.3.2,

MySql8.0.21,Shiro1.5.3,idea 2019.3

<java.version>1.8</java.version>
<spring.cloud.version>Hoxton.SR9</spring.cloud.version>
<spring.boot.version>2.3.5.RELEASE</spring.boot.version>
<ali.cloud.version>2.2.1.RELEASE</ali.cloud.version>
<ali.druid.version>1.1.13</ali.druid.version>
<mybatis.plus.version>3.3.2</mybatis.plus.version>
<mysql.version>8.0.21</mysql.version>
<shiro.version>1.5.3</shiro.version>

關于Activiti的配置文件,在nacos中管理yml

數(shù)據(jù)庫參數(shù)配置文件

spring:
datasource:
  type: com.alibaba.druid.pool.DruidDataSource
  druid:
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://locahost:3306/activiti_test?useUnicode=true&characterEncoding=UTF-8
    username: developer
    password: developer
    initial-size: 10
    max-active: 100
    min-idle: 10
    max-wait: 60000
    pool-prepared-statements: true
    max-pool-prepared-statement-per-connection-size: 20
    time-between-eviction-runs-millis: 60000
    min-evictable-idle-time-millis: 300000

activiti配置文件

spring:
activiti:
  #1.flase: 默認值。activiti在啟動時,會對比數(shù)據(jù)庫表中保存的版本,如果沒有表或者版本不匹配,將拋出異常
  #2.true: activiti會對數(shù)據(jù)庫中所有表進行更新操作。如果表不存在,則自動創(chuàng)建
  #3.create_drop: 在activiti啟動時創(chuàng)建表,在關閉時刪除表(必須手動關閉引擎,才能刪除表)
  #4.drop-create: 在activiti啟動時刪除原來的舊表,然后在創(chuàng)建新表(不需要手動關閉引擎)
  database-schema-update: true
  #檢測歷史表是否存在
  db-history-used: true
  #記錄歷史等級 可配置的歷史級別有none, activity, audit, full
  history-level: full
  #校驗流程文件,默認校驗resources下的processes文件夾里的流程文件
  check-process-definitions: false

理想情況下,當啟動項目后,會自動生成25張表。

 

錯誤一:shiro與serurity沖突

引用Activiti7.1.0.M6

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

發(fā)現(xiàn)啟動報錯。報錯信息如下:

Description:

The bean 'securityManager', defined in class path resource [org/activiti/core/common/spring/security/config/ActivitiSpringSecurityAutoConfiguration.class], could not be registered. A bean with that name has already been defined in class path resource [com/lidomtech/erp/admin/modules/security/config/ShiroConfig.class] and overriding is disabled.

Action:

Consider renaming one of the beans or enabling overriding by setting spring.main.allow-bean-definition-overriding=true

Disconnected from the target VM, address: '127.0.0.1:5571', transport: 'socket'

Process finished with exit code 0

很明顯,這里提示ActivitiSpringSecurityAutoConfiguration與ShiroConfig沖突了。小編項目里面運用的是Shiro,而Activiti默認引用了SpringSecurity。

處理:在啟動類屏蔽SpringSecurity

@SpringBootApplication(exclude = {

  org.springframework.boot.actuate.autoconfigure.security.servlet.ManagementWebSecurityAutoConfiguration.class,
      org.springframework.boot.autoconfigure.security.servlet.SecurityAutoConfiguration.class
})

小編心想,可以啟動成功了吧!

再次運行,沒成想,又報了同樣的錯誤!!這回納悶了,是不是版本太高了?經(jīng)查閱,原來Activiti強引用了SpringSecurity里的內(nèi)容,強引用UserDetailsService, 所以我們還需要把版本降到7.1.0.M4及以下。

處理:更換版本7.1.0.M4及以下

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

這回可以了吧?!

再次運行

Description:

An attempt was made to call a method that does not exist. The attempt was made from the following location:

com.baomidou.mybatisplus.core.MybatisMapperAnnotationBuilder.getLanguageDriver(MybatisMapperAnnotationBuilder.java:371)

The following method did not exist:

com.baomidou.mybatisplus.core.MybatisConfiguration.getLanguageDriver(Ljava/lang/Class;)Lorg/apache/ibatis/scripting/LanguageDriver;

啊這,與mybatisplus沖突

 

錯誤二:與mybatis沖突

經(jīng)查官網(wǎng),activiti會有默認的MyBatis連接池設置,需要講其依賴的MyBatis注釋,才不會引項目中的MyBatis沖突

處理:注釋包中的MyBatis

<dependency>
			<groupId>org.activiti</groupId>
			<artifactId>activiti-spring-boot-starter</artifactId>
			<exclusions>
				<exclusion>
					<groupId>org.mybatis</groupId>
					<artifactId>mybatis</artifactId>
				</exclusion>
			</exclusions>
			<version>7.1.0.M2</version>
		</dependency>

接著,再次啟動,啟動成功!

順利生成25張表

SpringCloud整合Activiti過程中的踩坑記錄

 

關于idea插件

idea里面的直接搜索,對2020.3版本不兼容(建議使用2019版本),可以在https://plugins.jetbrains.com/下載再引進idea

SpringCloud整合Activiti過程中的踩坑記錄

SpringCloud整合Activiti過程中的踩坑記錄

下載好后,在idea的File---->Settings---->Plugins---->

SpringCloud整合Activiti過程中的踩坑記錄

重啟后,新增能看到這個說明安裝成功

SpringCloud整合Activiti過程中的踩坑記錄

 

總結

到此這篇關于SpringCloud整合Activiti踩坑的文章就介紹到這了,更多相關SpringCloud整合Activiti踩坑內(nèi)容請搜索服務器之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持服務器之家!

原文鏈接:https://blog.csdn.net/qq_41937388/article/details/120153665

延伸 · 閱讀

精彩推薦
  • Java教程Java使用SAX解析xml的示例

    Java使用SAX解析xml的示例

    這篇文章主要介紹了Java使用SAX解析xml的示例,幫助大家更好的理解和學習使用Java,感興趣的朋友可以了解下...

    大行者10067412021-08-30
  • Java教程Java8中Stream使用的一個注意事項

    Java8中Stream使用的一個注意事項

    最近在工作中發(fā)現(xiàn)了對于集合操作轉(zhuǎn)換的神器,java8新特性 stream,但在使用中遇到了一個非常重要的注意點,所以這篇文章主要給大家介紹了關于Java8中S...

    阿杜7482021-02-04
  • Java教程Java BufferWriter寫文件寫不進去或缺失數(shù)據(jù)的解決

    Java BufferWriter寫文件寫不進去或缺失數(shù)據(jù)的解決

    這篇文章主要介紹了Java BufferWriter寫文件寫不進去或缺失數(shù)據(jù)的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望...

    spcoder14552021-10-18
  • Java教程升級IDEA后Lombok不能使用的解決方法

    升級IDEA后Lombok不能使用的解決方法

    最近看到提示IDEA提示升級,尋思已經(jīng)有好久沒有升過級了。升級完畢重啟之后,突然發(fā)現(xiàn)好多錯誤,本文就來介紹一下如何解決,感興趣的可以了解一下...

    程序猿DD9332021-10-08
  • Java教程xml與Java對象的轉(zhuǎn)換詳解

    xml與Java對象的轉(zhuǎn)換詳解

    這篇文章主要介紹了xml與Java對象的轉(zhuǎn)換詳解的相關資料,需要的朋友可以參考下...

    Java教程網(wǎng)2942020-09-17
  • Java教程Java實現(xiàn)搶紅包功能

    Java實現(xiàn)搶紅包功能

    這篇文章主要為大家詳細介紹了Java實現(xiàn)搶紅包功能,采用多線程模擬多人同時搶紅包,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙...

    littleschemer13532021-05-16
  • Java教程小米推送Java代碼

    小米推送Java代碼

    今天小編就為大家分享一篇關于小米推送Java代碼,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧...

    富貴穩(wěn)中求8032021-07-12
  • Java教程20個非常實用的Java程序代碼片段

    20個非常實用的Java程序代碼片段

    這篇文章主要為大家分享了20個非常實用的Java程序片段,對java開發(fā)項目有所幫助,感興趣的小伙伴們可以參考一下 ...

    lijiao5352020-04-06
主站蜘蛛池模板: 波多野结衣先锋影音 | 久久久一级 | 免费观看黄色大片 | 99精品视频在线 | 成人精品国产免费网站 | 精品久久久久久久人人人人传媒 | 99在线精品视频 | 亚洲深深色噜噜狠狠网站 | 四虎免费看黄 | 精品欧美乱码久久久久久 | 亚洲精品在线观看网站 | 久久精品亚洲精品国产欧美kt∨ | 91av国产精品| 毛片免费的 | 一区二区三区视频 | 成人影院在线观看 | 日韩成人在线播放 | 中文字幕国产 | 中文字幕免费 | 美日韩一区 | 精品国产仑片一区二区三区 | 亚洲欧美另类久久久精品2019 | 久久久久久黄 | 国产精品久久久久久久久久免费 | 午夜在线 | 成人h漫在线观看 | 亚洲精品一区二区三区四区高清 | 久草视频在线播放 | 精品国产免费人成在线观看 | www.成人在线视频 | 91精品国产91久久久久久最新 | 免费一区二区 | 国产一区二区三区在线视频 | 亚洲第一av网站 | 久久99视频这里只有精品 | 成人免费视频008 | 精品国产不卡一区二区三区 | 国产成人在线一区二区 | 国产精品爱久久久久久久 | 欧美精品一区二区三区在线播放 | 中文字幕亚洲国产 |