From 3402ea8588d97064386ec22405ab806b01a02cea Mon Sep 17 00:00:00 2001 From: Olga Maciaszek-Sharma Date: Thu, 17 Oct 2024 15:44:17 +0200 Subject: [PATCH] Document using configurers and customisers with @LoadBalanced HTTP client builders. Fixes gh-1407. --- .../spring-cloud-commons/common-abstractions.adoc | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/docs/modules/ROOT/pages/spring-cloud-commons/common-abstractions.adoc b/docs/modules/ROOT/pages/spring-cloud-commons/common-abstractions.adoc index 8517db18..6e4112d6 100644 --- a/docs/modules/ROOT/pages/spring-cloud-commons/common-abstractions.adoc +++ b/docs/modules/ROOT/pages/spring-cloud-commons/common-abstractions.adoc @@ -253,6 +253,21 @@ public class MyClass { The URI needs to use a virtual host name (that is, a service name, not a host name). The `BlockingLoadBalancerClient` is used to create a full physical address. +In order to leverage additional capabilities that Spring Boot provides for `RestTemplateBuilder` (for example, observability support) you may want to use the autoconfigured +`RestTemplateBuilderConfigurer` while creating the `@LoadBalanced RestTemplateBuilder` beans: + +[source,java,indent=0] +---- +@Configuration +public class MyConfiguration { + + @LoadBalanced + RestTemplateBuilder loadBalancedRestTemplateBuilder(RestTemplateBuilderConfigurer configurer) { + return configurer.configure(new RestTemplateBuilder()); + } +} +---- + IMPORTANT: To use it, add xref:spring-cloud-commons/loadbalancer.adoc#spring-cloud-loadbalancer-starter[Spring Cloud LoadBalancer starter] to your project. [[multiple-resttemplate-builder-beans]]