alexxiyang / shiro-redis

shiro only provide the support of ehcache and concurrentHashMap. Here is an implement of redis cache can be used by shiro. Hope it will help you!
MIT License
1.17k stars 446 forks source link

spring-boot-devtools+shiro-redis集成的一个错误。 #82

Closed sunnode closed 5 years ago

sunnode commented 5 years ago

项目采用spring-boot-devtools 热部署,项目中配置了RedisSessionDAO,使用redis缓存,当认证成功,将查询出来的对象存到session中,再从session取出对象是object,将object进行转换,报java.lang.ClassCastException 不是同一个对象。 这个问题的原因是由于类加载器不同导致的,shiro-redis默认使用的是AppClassLoader,其他使用的是RestartClassLoader,网上有解决办法说是配置/META-INF/spring-devtools.properties,但是不知道如何配置。 restart.exclude.companycommonlibs=/mycorp-common-[\w-]+.jar restart.include.projectcommon=/mycorp-myproj-[\w-]+.jar 这是一个通用的配置。 如果想用springboot热部署,又想使用shiro-redis管理session,怎么解决这个问题。

hipilee commented 5 years ago

请教个问题,当使用Spring boot starter时,Configuration Properties属性如何配置。在applicaiton.iml配置是无效。

alexxiyang commented 5 years ago

请新建 resources/META-INF/spring-devtools.properties,并在其中添加这行:

restart.include.shiro-redis=/shiro-[\\w-\\.]+jar

即可解决问题