- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
环境:Tomcat 6、Java 6、Redis 和 spring security-3.1.4
我尝试通过将用户 session 添加到 Redis 缓存来集群 tomcat。我已将 tomcat-redis-session-manager-1.2-tomcat-6.jar 和 jedis-2.0.0.jar 复制到 tomcat 库,并将以下配置添加到 tomcat context.xml。
一切正常。但是当我尝试登录系统时出现以下异常。
似乎有一个包含不可序列化属性的 spring 安全上下文属性。请帮助解决这个问题。
上下文.xml
<Valve className="com.radiadesign.catalina.session.RedisSessionHandlerValve" />
<Manager className="com.radiadesign.catalina.session.RedisSessionManager"
host="127.0.0.1"
port="6379"
database="0"
maxInactiveInterval="60" />
org.apache.catalina.session.StandardSession writeObject
WARNING: Cannot serialize session attribute SPRING_SECURITY_CONTEXT for session DDB4A51B19CF042B227E312B546483EF
java.io.NotSerializableException: java.util.HashMap$KeySet
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1180)
at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1528)
at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1493)
at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1416)
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1174)
at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1528)
at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1493)
at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1416)
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1174)
at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1528)
at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1493)
at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1416)
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1174)
at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1528)
at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1493)
at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1416)
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1174)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:346)
at org.apache.catalina.session.StandardSession.writeObject(StandardSession.java:1561)
at org.apache.catalina.session.StandardSession.writeObjectData(StandardSession.java:1004)
at com.radiadesign.catalina.session.JavaSerializer.serializeFrom(JavaSerializer.java:24)
at com.radiadesign.catalina.session.RedisSessionManager.save(RedisSessionManager.java:411)
at com.radiadesign.catalina.session.RedisSessionHandlerValve.storeOrRemoveSession(RedisSessionHandlerValve.java:39)
at com.radiadesign.catalina.session.RedisSessionHandlerValve.invoke(RedisSessionHandlerValve.java:27)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:554)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Thread.java:636)
最佳答案
CustomUserDetails
类中有一个不可序列化的属性。
关于java - 无法序列化 session 的 session 属性 SPRING_SECURITY_CONTEXT,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25884727/
我正在使用 Spring 3.2 Milestone 1 来实现带有 long polling 的服务.然而,出于某种原因,Spring Security (3.1.2) 在第一个延迟结果过期(已达到
目标:我希望允许用户访问我的网络应用程序上的任何页面,/account 页面除外(除非他们已登录) .我希望这个登录过程非常安全,因此转而结合使用 Spring Security 和 BCryptPa
环境:Tomcat 6、Java 6、Redis 和 spring security-3.1.4 我尝试通过将用户 session 添加到 Redis 缓存来集群 tomcat。我已将 tomcat-
我们有一个带有两个节点(trunk-n1 和 trunk-n2)的集群 tomcat 环境,每个节点都有 apache 和 tomcat 实例,我们在以下场景中遇到问题 负载均衡器 URL 是 htt
我是一名优秀的程序员,十分优秀!