Sa-Token icon indicating copy to clipboard operation
Sa-Token copied to clipboard

tomcat10将javax包改为jakarta,找不到HttpServletRequest类

Open xiaobai1226 opened this issue 3 years ago • 0 comments

使用版本:

sa-token-spring-boot-starter:1.31.0 springboot:3.0.0-M4

报错信息:

问题1: Caused by: java.lang.NoSuchMethodError: 'javax.servlet.http.HttpServletRequest org.springframework.web.context.request.ServletRequestAttributes.getRequest()'

问题二: 路由拦截鉴权不起作用

希望结果:

兼容springboot3.0(tomcat10)(兼容jakarta包)

复现步骤:

问题1:在tomcat10版本下,使用StpUtil.login()等使用javax包下的功能都会受到影响,通过重写SaTokenContextForSpring及相关使用javax包下的类,重新注入SaTokenContext,可正常使用。 问题2:使用路由鉴权功能不起作用,查看源码也使用了javax.servlet.http.HttpServletRequest,自定义SaInterceptor,功能恢复正常

由于tomcat10将javax包改为了jakarta,所以使用tomcat10就会报这个错误

目前通过重写使用javax包下的方式可以正常使用,不过还是希望尽快适配新版

xiaobai1226 avatar Sep 18 '22 15:09 xiaobai1226