zoukankan      html  css  js  c++  java
  • shiro使用redis作为缓存,出现要清除缓存时报错 java.lang.Exception: Failed to deserialize at org.crazycake.shiro.SerializeUtils.deserialize(SerializeUtils.java:41) ~[shiroredis2.4.2.1RELEASE.jar:na]

    shiro使用redis作为缓存,出现要清除缓存时报错

    java.lang.Exception: Failed to deserialize
    at org.crazycake.shiro.SerializeUtils.deserialize(SerializeUtils.java:41) ~[shiro-redis-2.4.2.1-RELEASE.jar:na]
    at org.crazycake.shiro.RedisSessionDAO.getActiveSessions(RedisSessionDAO.java:66) [shiro-redis-2.4.2.1-RELEASE.jar:na]

    因为使用的是

    <groupId>org.crazycake</groupId>
    <artifactId>shiro-redis</artifactId>
    <version>2.4.2.1-RELEASE</version>
    所以在获取所有的session中的key来反序列化时出现不能反序列化。

    看了了下源码

     然后各种问题搜索,定义问题的出错在哪,最后发现是使用的

    <groupId>org.crazycake</groupId>
    <artifactId>shiro-redis</artifactId>
    <version>2.4.2.1-RELEASE</version>

    版本有的漏洞,但是在2.4.6版本的已经修复了这个bug

    2.4.6 解决了序列化的问题,请升级至2.4.6。而且被序列化的对象必须实现 java.io.Serializable 接口

  • 相关阅读:
    Dubbo支持的协议的详解
    db2 SQL6036N解决办法
    9-5 HTTP注解演示及注意事项讲解
    9-4 Feign之HTTP注解介绍
    9-3 Feign演示及Feign注解解析
    9-2 Feign环境准备
    9-1 Feign自我介绍
    8-30 Hystrix章节总结
    8-29 实战技巧:如何设置线程池
    8-28 Hystrix监控讲解与演示
  • 原文地址:https://www.cnblogs.com/KmilyLee/p/10062825.html
Copyright © 2011-2022 走看看