[SPRING] 3.2와 4.2 사이의 Redis Session Serializer 불일치
SPRING3.2와 4.2 사이의 Redis Session Serializer 불일치
여러 Spring-boot 서버에서 실행되는 Spring Cloud 기반 응용 프로그램이 있습니다. 모든 서버는 @EnableRedisHttpSession을 사용하여 동일한 Spring Session을 공유합니다.
이제 타사 위젯을 내 응용 프로그램에 통합하려고합니다. 제 3 자와 함께 일하면서 초기 구성을 실행할 수 있었지만 제 3자가 Redis Session 데이터에 액세스하려고 할 때 실패합니다. 이것은 Spring 4를 사용하고 제 3자가 Spring 3.2를 사용하기 때문입니다. 타사의 Spring 버전을 업그레이드 할 수 없습니다.
예외는 다음과 같습니다.
org.springframework.data.redis.serializer.SerializationException: Cannot deserialize; nested exception is
org.springframework.core.serializer.support.SerializationFailedException:
Failed to deserialize payload. Is the byte array a result of corresponding serialization for DefaultDeserializer?; nested exception is
java.io.InvalidClassException: org.springframework.security.core.context.SecurityContextImpl; local class incompatible: stream classdesc serialVersionUID = 400, local class serialVersionUID = 320
Caused by: java.io.InvalidClassException:
org.springframework.security.core.context.SecurityContextImpl; local class incompatible: stream classdesc serialVersionUID = 400, local class serialVersionUID = 320
at java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:616) ~[na:1.8.0_66]
at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1623) ~[na:1.8.0_66]
at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1518) ~[na:1.8.0_66]
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1774) ~[na:1.8.0_66]
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1351) ~[na:1.8.0_66]
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:371) ~[na:1.8.0_66]
at org.springframework.core.serializer.DefaultDeserializer.deserialize(DefaultDeserializer.java:41) ~[spring-core-4.0.6.RELEASE.jar:4.0.6.RELEASE]
at org.springframework.core.serializer.support.DeserializingConverter.convert(DeserializingConverter.java:59) ~[spring-core-4.0.6.RELEASE.jar:4.0.6.RELEASE]
... 66 common frames omitted
두 버전간에 쉽게 번역 할 수있는 방법이 있습니까?
해결법
from https://stackoverflow.com/questions/35535765/redis-session-serializer-mismatch-between-3-2-and-4-2 by cc-by-sa and MIT license
'SPRING' 카테고리의 다른 글
[SPRING] Spring 데이터 수신 REST URL에서 작동하지 않는 Spring 인터셉터 (0) | 2019.07.17 |
---|---|
[SPRING] 스프링 4와 함께 webSocket 서버에서 연결 이벤트를 캡처하는 방법은 무엇입니까? (0) | 2019.07.17 |
[SPRING] Spring Boot에서 MappingJackson2HttpMessageConverter를 확장하여 사용자 정의 변환기를 추가하면 기존 변환기를 덮어 쓰는 것처럼 보입니다. (0) | 2019.07.17 |
[SPRING] 스프링 부트 LDAP 사용자 정의 UserDetails (0) | 2019.07.17 |
[SPRING] retrofit에서 byte [] 배열을 보내는 법 (0) | 2019.07.17 |