diff --git a/auto-configurations/common/spring-ai-autoconfigure-retry/src/main/java/org/springframework/ai/retry/autoconfigure/SpringAiRetryAutoConfiguration.java b/auto-configurations/common/spring-ai-autoconfigure-retry/src/main/java/org/springframework/ai/retry/autoconfigure/SpringAiRetryAutoConfiguration.java index 1d7eed38da9..81f848917f1 100644 --- a/auto-configurations/common/spring-ai-autoconfigure-retry/src/main/java/org/springframework/ai/retry/autoconfigure/SpringAiRetryAutoConfiguration.java +++ b/auto-configurations/common/spring-ai-autoconfigure-retry/src/main/java/org/springframework/ai/retry/autoconfigure/SpringAiRetryAutoConfiguration.java @@ -17,6 +17,7 @@ package org.springframework.ai.retry.autoconfigure; import java.io.IOException; +import java.net.URI; import java.nio.charset.StandardCharsets; import org.slf4j.Logger; @@ -30,6 +31,7 @@ import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; import org.springframework.boot.context.properties.EnableConfigurationProperties; import org.springframework.context.annotation.Bean; +import org.springframework.http.HttpMethod; import org.springframework.http.client.ClientHttpResponse; import org.springframework.lang.NonNull; import org.springframework.retry.RetryCallback; @@ -47,6 +49,7 @@ * * @author Christian Tzolov * @author SriVarshan P + * @author Issam El-atif */ @AutoConfiguration @ConditionalOnClass(RetryUtils.class) @@ -87,13 +90,19 @@ public boolean hasError(@NonNull ClientHttpResponse response) throws IOException } @Override + public void handleError(URI url, HttpMethod method, @NonNull ClientHttpResponse response) + throws IOException { + handleError(response); + } + + @SuppressWarnings("removal") public void handleError(@NonNull ClientHttpResponse response) throws IOException { if (!response.getStatusCode().isError()) { return; } String error = StreamUtils.copyToString(response.getBody(), StandardCharsets.UTF_8); - if (error == null || error.isEmpty()) { + if (error.isEmpty()) { error = "No response body available"; }