JDK17之后 javax 的依赖名称全部改为 jakarta
zhaoyue123ABC opened this issue · 1 comments
zhaoyue123ABC commented
使用版本:
最新版 1.38.0
报错信息:
无法访问javax.servlet.Filter
希望结果:
修改依赖包:
jakarta.servlet
jakarta.servlet-api
将 javax 名称全部更改 jakarta
复现步骤:
使用spingboot项目添加saToken注入过滤器即可复现
<spring-boot.version>3.2.5</spring-boot.version>
<spring-cloud.version>2023.0.1</spring-cloud.version>
<spring-cloud-alibaba.version>2023.0.1.0</spring-cloud-alibaba.version>
<satoken.version>1.38.0</satoken.version>
<satoken.redis.version>1.38.0</satoken.redis.version>
代码:
/**
- 校验是否从网关转发
*/
@bean
public SaServletFilter getSaServletFilter() {
return new SaServletFilter()
// 报错 无法访问javax.servlet.Filter
.addInclude("/")
.addExclude("/favicon.ico", "/actuator/")
.setAuth(obj -> {
if (SaManager.getConfig().getCheckSameToken()) {
SaSameUtil.checkCurrentRequestToken();
}
})
.setError(e -> SaResult.error("认证失败,无法访问系统资源").setCode(401));
}
< 备注:如果复现步骤比较复杂,请将 demo 上传到 gitee 并留下地址 >
gtn1024 commented
Spring Boot 3 请使用 sa-token-spring-boot3-starter