diff --git a/redis-om-spring/src/main/java/com/redis/om/spring/RedisModulesConfiguration.java b/redis-om-spring/src/main/java/com/redis/om/spring/RedisModulesConfiguration.java index 32e4e04b1..843fe0aea 100644 --- a/redis-om-spring/src/main/java/com/redis/om/spring/RedisModulesConfiguration.java +++ b/redis-om-spring/src/main/java/com/redis/om/spring/RedisModulesConfiguration.java @@ -22,7 +22,10 @@ import org.springframework.context.annotation.*; import org.springframework.context.event.ContextRefreshedEvent; import org.springframework.context.event.EventListener; +import org.springframework.core.env.Environment; import org.springframework.data.geo.Point; +import org.springframework.data.redis.connection.RedisStandaloneConfiguration; +import org.springframework.data.redis.connection.jedis.JedisClientConfiguration; import org.springframework.data.redis.connection.jedis.JedisConnectionFactory; import org.springframework.data.redis.core.RedisHash; import org.springframework.data.redis.core.RedisOperations; @@ -132,6 +135,66 @@ public RedisEnhancedMappingContext redisMappingContext() { return new RedisEnhancedMappingContext(); } + /** + * Creates a Jedis connection factory for Redis connectivity. + *
+ * This bean is required by Redis OM Spring for Redis Stack modules support. + * It will be created if no JedisConnectionFactory bean exists, ensuring + * Jedis is used instead of Lettuce (which is Spring Boot 4.0's default). + *
+ * Connection settings are read from standard Spring Data Redis properties: + *
+ * This bean is required by Redis OM Spring and will be created if Spring Boot's + * Redis autoconfiguration hasn't already created one. It uses the JedisConnectionFactory + * for connectivity. + * + * @param connectionFactory the Jedis connection factory + * @return the configured StringRedisTemplate + */ + @Bean + @ConditionalOnMissingBean( + StringRedisTemplate.class + ) + public StringRedisTemplate stringRedisTemplate(JedisConnectionFactory connectionFactory) { + return new StringRedisTemplate(connectionFactory); + } + /** * Creates a configured Gson builder for JSON serialization and deserialization. *
diff --git a/redis-om-spring/src/main/java/com/redis/om/spring/RedisRepositoriesExcludeFilter.java b/redis-om-spring/src/main/java/com/redis/om/spring/RedisRepositoriesExcludeFilter.java
index 65cdc94b6..a7dc97c75 100644
--- a/redis-om-spring/src/main/java/com/redis/om/spring/RedisRepositoriesExcludeFilter.java
+++ b/redis-om-spring/src/main/java/com/redis/om/spring/RedisRepositoriesExcludeFilter.java
@@ -33,7 +33,10 @@ public RedisRepositoriesExcludeFilter() {
}
private static final Set