【已解决】Spring Boot 2.7.x版本下添加shiro权限后错误Expected lookupPath in request attribute
- 工作小总结
- 时间:2023-07-19 13:37
- 2298人已阅读
简介
环境:SpringBoot版本:2.7.11org.springframework.boot spring-boot-starter-parent 2.7.11
🔔🔔🔔好消息!好消息!🔔🔔🔔
🔔🔔🔔好消息!好消息!🔔🔔🔔
有需要的朋友👉:联系凯哥
环境:
Spring Boot 版本:2.7.11
<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.7.11</version> <relativePath/> </parent>
shiro版本:
<!--shiro--> <dependency> <groupId>org.apache.shiro</groupId> <artifactId>shiro-spring-boot-starter</artifactId> <version>1.4.0</version> </dependency> <!-- shiro-redis --> <dependency> <groupId>org.crazycake</groupId> <artifactId>shiro-redis</artifactId> <version>3.1.0</version> <exclusions> <exclusion> <groupId>org.apache.shiro</groupId> <artifactId>shiro-core</artifactId> </exclusion> <exclusion> <artifactId>guava</artifactId> <groupId>com.google.guava</groupId> </exclusion> </exclusions> </dependency> <!--JWT--> <dependency> <groupId>com.auth0</groupId> <artifactId>java-jwt</artifactId> <version>3.19.1</version> </dependency>
配置完成之后,启动项目。访问发现错误提示:
java.lang.IllegalArgumentException: Expected lookupPath in request attribute "org.springframework.web.util.UrlPathHelper.PATH".
at org.springframework.util.Assert.notNull(Assert.java:201) ~[spring-core-5.3.16.jar:5.3.16]
该问题就是源自springboot 2.6.0后的新特性,目前版本的解决方案是在springboot的配置文件中,以下配置,修改默认映射策略:
spring.mvc.pathmatch.matching-strategy=ANT_PATH_MATCHER
在yaml文件中修改:
或者降低版本,如使用2.5.4版本。
保存后,重启项目。就可以正常访问了