Quantcast
Channel: Active questions tagged redis+java - Stack Overflow
Viewing all articles
Browse latest Browse all 2203

required a bean of type 'org.springframework.session.data.redis.RedisIndexedSessionRepository' that could not be found

$
0
0

I have a project which uses spring boot which uses spring-boot-starter-data-redis to manage distributed session, which was running fine.

I tried to migrate to spring boot 3, i was getting the below error.

Consider defining a bean of type 'org.springframework.session.data.redis.RedisIndexedSessionRepository' in your configuration

To fix the above error I have defined a bean as below.

 @Bean public RedisIndexedSessionRepository redisIndexedSessionRepository(RedisTemplate<String, Object> redisTemplate) {        return new RedisIndexedSessionRepository(redisTemplate);    }

After this a new error popped up as below.

 required a single bean, but 2 were found:    - redisIndexedSessionRepository: defined by method 'redisIndexedSessionRepository' in class path resource [com/google/ussm/config/UssmConfig.class]    - sessionRepository: defined by method 'sessionRepository' in class path resource [org/springframework/session/data/redis/config/annotation/web/http/RedisHttpSessionConfiguration.class]

To fix this error the below code came into handy.

 @Primary    @Bean    public RedisIndexedSessionRepository redisIndexedSessionRepository(RedisTemplate<String, Object> redisTemplate) {        return new RedisIndexedSessionRepository(redisTemplate);    }

Now the the application is running fine , but the SessionExpiredEvent and SessionDeletedEvent not being fired in the application.

Also I have noticed that in redis :index:org.springframework.session.FindByIndexNameSessionRepository.PRINCIPAL_NAME_INDEX_NAME is missing , which constitutes the above problem.

Requesting any suggestion to fix this error.

Thanks in advance.


Viewing all articles
Browse latest Browse all 2203

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>