Activiti踩坑记录(一),mybatis报错No typehandler found for property XXX问题

项目场景:

之前自己写的系统订单流程功能不够用,于是打算用用Activiti7,结果引入后就报错


问题描述:

环境:springboot@2.3.1 + shiro@1.7 + mybatis-plus@3.3.2

本次新增引入activiti-spring-boot-starter@7.1.0.M4 + activiti-bpmn-layout

(听说M6版本有强引入Spring Security,M5有其他BUG,这里为了避免麻烦就用的M4,但估计后续还有更多坑要填)

pom.xml新增如下:

		<properties>
	        <activiti.version>7.1.0.M4</activiti.version>
	    </properties>
	    
	    .....
	    
        <dependency>
            <groupId>org.activiti</groupId>
            <artifactId>activiti-spring-boot-starter</artifactId>
            <version>${activiti.version}</version>
        </dependency>
        <!--自动化生成流程 -->
        <!-- https://mvnrepository.com/artifact/org.activiti/activiti-bpmn-layout -->
        <dependency>
            <groupId>org.activiti</groupId>
            <artifactId>activiti-bpmn-layout</artifactId>
            <version>${activiti.version}</version>
        </dependency>

结果还没加Activiti相关的运行代码,DEBUG一次就开始报错了,mybatis扫描Mapper出错:No typehandler found for property logTime
在这里插入图片描述


原因分析:

一开始先排查了一下相关类的映射类型/字段/包名引入,没发现问题但是依旧报错,报错相关的属性logTime是LocalDateTime类型,但TIMESTAMP是可以正常映射的,其他类也同样是使用LocalDateTime没遇到过问题
在这里插入图片描述
后面听交流群的老哥说把LocalDateTime改成Date试一下,发现报错信息变了:
在这里插入图片描述
这里看报错信息内有mybatis的不同版本存在,推测是和mybatis-plus的引入冲突,后面注释掉之前引入的Activiti-spring-boot-starter可以正常运行,原本代码是没有问题,那只能是这个原因了


解决方案:

既然是Mybatis的重复引入冲突,那就去掉一个就好了,因为Mybatis-Plus有旧代码的依赖在,为保证稳定性,就排除掉新引入的Activiti-spring-boot-starter中的Mybatis。将pom.xml相关的代码改成以下就完成了


		<properties>
	        <activiti.version>7.1.0.M4</activiti.version>
	    </properties>
	    
	    .....
	    
        <dependency>
            <groupId>org.activiti</groupId>
            <artifactId>activiti-spring-boot-starter</artifactId>
            <version>${activiti.version}</version>
<!--            mybatis-plus引用冲突,需要排除-->
            <exclusions>
                <exclusion>
                    <artifactId>mybatis</artifactId>
                    <groupId>org.mybatis</groupId>
                </exclusion>
            </exclusions>
        </dependency>
        <!--自动化生成流程 -->
        <!-- https://mvnrepository.com/artifact/org.activiti/activiti-bpmn-layout -->
        <dependency>
            <groupId>org.activiti</groupId>
            <artifactId>activiti-bpmn-layout</artifactId>
            <version>${activiti.version}</version>
        </dependency>
        
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值