Je hebt het waarschijnlijk ondertussen opgelost, maar voor verdere antwoordzoekers.
Volgens lentegegevens redis-referentie:
RedisCache en RedisTemplate zijn standaard geconfigureerd om Java-native serialisatie te gebruiken.
Uit stacktrace kan ik zien dat je Redis daadwerkelijk gebruikt voor caching, dus je moet RedisCache
configureren en niet RedisTemplate
. RedisCache
neemt je @Bean
niet op omdat het RedisTemplate
niet gebruikt intern.
Voorbeeld hoe u het in Java kunt doen:
@EnableCaching
@Configuration
public class CacheConfig {
@Bean
@Primary
public RedisCacheConfiguration defaultCacheConfig(ObjectMapper objectMapper) {
return RedisCacheConfiguration.defaultCacheConfig()
.serializeKeysWith(SerializationPair.fromSerializer(new StringRedisSerializer()))
.serializeValuesWith(SerializationPair.fromSerializer(new GenericJackson2JsonRedisSerializer(objectMapper)));
}
}