baomidou / dynamic-datasource

dynamic datasource for springboot 多数据源 动态数据源 主从分离 读写分离 分布式事务
https://www.kancloud.cn/tracy5546/dynamic-datasource/2264611
Apache License 2.0
4.75k stars 1.19k forks source link

DSTransactional 注解拦截器 bug #542

Closed afish177 closed 1 year ago

afish177 commented 1 year ago

Please fill it out carefully, or it will be closed. 请认真填写,不然会直接关闭。

Enviroment

idea JDK Version(required): 1.8

SpringBoot Version(required): 2.7.13

dynamic-datasource-spring-boot-starter Version(required):4.1.3

druid Version(optional):1.2.18

Describe what happened

调用登录方法时 我有userservice类得getUSerEntity方法(此方法未加DSTr注解) 会进入DynamicLocalTransactionInterceptor 拦截方法 扫描此DSTransactional 注解 会出现null 异常 导出报错 如图 (是否是 我哪里没设置 还是 的确有这个问题)

image image image

image

麻烦大佬看下 谢谢 赶紧 Expected Result:

期待登录成功

Actual Result:

报错 If there is an exception,or aop invalid,please attach the exception trace:

Just paste your stack trace here!

Steps to reproduce

ZPZP1 commented 1 year ago

@DSTransactional 加在接口上了吗,切点查找应该不会有问题,如果是父类或者接口的话可能存在这个问题,这里需要修改一下获取注解属性的逻辑用DataSourceClassResolver的findKey()方法给整合一下。 @huayanYu 指派我把