Skip to content

Commit 59b6fdb

Browse files
committed
enable feign.autoconfiguration.jackson.enabled by default
1 parent 98b2511 commit 59b6fdb

File tree

4 files changed

+9
-5
lines changed

4 files changed

+9
-5
lines changed

docs/src/main/asciidoc/spring-cloud-openfeign.adoc

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -744,13 +744,16 @@ ObjectProvider<TestFeginClient> testFeginClient;
744744

745745
=== Spring Data Support
746746

747-
You may consider enabling Jackson Modules for the support `org.springframework.data.domain.Page` and `org.springframework.data.domain.Sort` decoding.
747+
If Jackson Databind and Spring Data Commons are on the classpath, converters for `org.springframework.data.domain.Page` and `org.springframework.data.domain.Sort` will be added automatically.
748748

749+
To disable this behaviour set
749750
[source,java]
750751
----
751-
feign.autoconfiguration.jackson.enabled=true
752+
feign.autoconfiguration.jackson.enabled=false
752753
----
753754

755+
See `org.springframework.cloud.openfeign.FeignAutoConfiguration.FeignJacksonConfiguration` for details.
756+
754757
=== Spring `@RefreshScope` Support
755758
If Feign client refresh is enabled, each feign client is created with `feign.Request.Options` as a refresh-scoped bean. This means properties such as `connectTimeout` and `readTimeout` can be refreshed against any Feign client instance through `POST /actuator/refresh`.
756759

spring-cloud-openfeign-core/src/main/java/org/springframework/cloud/openfeign/FeignAutoConfiguration.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -122,7 +122,8 @@ public Capability cachingCapability(CacheInterceptor cacheInterceptor) {
122122

123123
@Configuration(proxyBeanMethods = false)
124124
@ConditionalOnClass({ Module.class, Page.class, Sort.class })
125-
@ConditionalOnProperty(value = "feign.autoconfiguration.jackson.enabled", havingValue = "true")
125+
@ConditionalOnProperty(value = "feign.autoconfiguration.jackson.enabled", havingValue = "true",
126+
matchIfMissing = true)
126127
protected static class FeignJacksonConfiguration {
127128

128129
@Bean

spring-cloud-openfeign-core/src/main/resources/META-INF/additional-spring-configuration-metadata.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
"name": "feign.autoconfiguration.jackson.enabled",
77
"type": "java.lang.Boolean",
88
"description": "If true, PageJacksonModule and SortJacksonModule bean will be provided for Jackson page decoding.",
9-
"defaultValue": "false"
9+
"defaultValue": "true"
1010
},
1111
{
1212
"name": "feign.circuitbreaker.enabled",

spring-cloud-openfeign-core/src/test/java/org/springframework/cloud/openfeign/encoding/FeignPageableEncodingTests.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@
5555
* @author Hyeonmin Park
5656
*/
5757
@SpringBootTest(classes = FeignPageableEncodingTests.Application.class, webEnvironment = RANDOM_PORT,
58-
value = { "feign.compression.request.enabled=true", "feign.autoconfiguration.jackson.enabled=true" })
58+
value = { "feign.compression.request.enabled=true" })
5959
class FeignPageableEncodingTests {
6060

6161
@Autowired

0 commit comments

Comments
 (0)