From 44eebcaff55d1256b12cdc10d0da47f8ddfce364 Mon Sep 17 00:00:00 2001 From: Vedran Pavic Date: Thu, 16 Nov 2017 21:20:19 +0100 Subject: [PATCH] Fix `SessionAutoConfiguration` ordering This commit updates `SessionAutoConfiguration` to ensure it is processed after `MongoDataAutoConfiguration` and `MongoReactiveDataAutoConfiguration`, instead of `MongoAutoConfiguration` and `MongoReactiveAutoConfiguration`. This is required in order for MongoDB Session auto-configuration to work, since `MongoSessionConfiguration` and `MongoReactiveSessionConfiguration` are conditional on `MongoOperations` and `ReactiveMongoOperations` beans, respectively. Closes gh-11054 --- .../autoconfigure/session/SessionAutoConfiguration.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/session/SessionAutoConfiguration.java b/spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/session/SessionAutoConfiguration.java index 79189ddaff5..6b33a096c1a 100644 --- a/spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/session/SessionAutoConfiguration.java +++ b/spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/session/SessionAutoConfiguration.java @@ -31,13 +31,13 @@ import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; import org.springframework.boot.autoconfigure.condition.ConditionalOnWebApplication; import org.springframework.boot.autoconfigure.condition.ConditionalOnWebApplication.Type; +import org.springframework.boot.autoconfigure.data.mongo.MongoDataAutoConfiguration; +import org.springframework.boot.autoconfigure.data.mongo.MongoReactiveDataAutoConfiguration; import org.springframework.boot.autoconfigure.data.redis.RedisAutoConfiguration; import org.springframework.boot.autoconfigure.data.redis.RedisReactiveAutoConfiguration; import org.springframework.boot.autoconfigure.hazelcast.HazelcastAutoConfiguration; import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration; import org.springframework.boot.autoconfigure.jdbc.JdbcTemplateAutoConfiguration; -import org.springframework.boot.autoconfigure.mongo.MongoAutoConfiguration; -import org.springframework.boot.autoconfigure.mongo.MongoReactiveAutoConfiguration; import org.springframework.boot.autoconfigure.web.reactive.HttpHandlerAutoConfiguration; import org.springframework.boot.context.properties.EnableConfigurationProperties; import org.springframework.context.ApplicationContext; @@ -64,8 +64,8 @@ import org.springframework.session.SessionRepository; @ConditionalOnWebApplication @EnableConfigurationProperties(SessionProperties.class) @AutoConfigureAfter({ DataSourceAutoConfiguration.class, HazelcastAutoConfiguration.class, - JdbcTemplateAutoConfiguration.class, MongoAutoConfiguration.class, - MongoReactiveAutoConfiguration.class, RedisAutoConfiguration.class, + JdbcTemplateAutoConfiguration.class, MongoDataAutoConfiguration.class, + MongoReactiveDataAutoConfiguration.class, RedisAutoConfiguration.class, RedisReactiveAutoConfiguration.class }) @AutoConfigureBefore(HttpHandlerAutoConfiguration.class) public class SessionAutoConfiguration {