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 org.springframework.core.NestedIOException:
Failed to deserialize object type;
nested exception is java.lang.ClassNotFoundException: com.foo.user.model.CurrentUser
J'ai deux applications typiques Spring Boot qui partagent une instance Redis pour l'état de session. L'erreur ci-dessus se produit immédiatement lors de la tentative de connexion à mon application.Redis Session Redis ne parvient pas à désérialiser avec ClassNotFoundException
Je ne suis pas très sûr de ce qui se passe ici - les deux applications utilisent les mêmes bibliothèques et versions pour les modèles utilisateur applicables et les dépendances Spring. Pour ce que ça vaut CurrentUser
s'étend org.springframework.security.core.userdetails.User
, qui est lui-même Serializable
.
J'ai redémarré mon instance de Redis en pensant que quelque chose devenait funky, mais ce n'était pas le cas. Je montrerais ce que j'ai déjà essayé, mais je m'assure surtout que mes artefacts ont été construits correctement et que j'ai redémarré l'application et les serveurs Redis, avec un peu de jeu autour de Serializable
. Pourquoi est-ce que je vois cela?
Tous les membres de CurrentUser sont-ils également sérialisables? – Snickers3192
Quelques questions: La configuration de Redis (plus spécifiquement la partie sérialisation) est-elle la même dans les deux applications? Si j'ai bien compris 'CurrentUser' est situé dans la bibliothèque externe partagée entre les deux applications? Utilisez-vous Boot DevTools? Exemple qui reproduit le problème ou à tout le moins les parties pertinentes de la configuration pour les deux applications serait utile d'avoir. –
Snickers - ouais. Vedran - les informations qui vous seraient utiles? – bvulaj