В Spring Boot 3 я создал запись @ConfigurationProperties с проверкой @NotBlank, чтобы вручную установить базовый URL-адрес в RestClient, который передается в HttpServiceProxyFactory. Например:
Код: Выделить всё
@Validated
@ConfigurationProperties(prefix = "myapp")
public record MyAppProperties(@NotBlank String myRemoteApiBaseUrl){}
Благодаря HTTP-сервисному клиенту Spring Boot 4 больше нет необходимости вручную создавать RestClient и HttpServiceProxyFactory. Рекомендуемый способ — установить базовый URL-адрес с помощью:
Код: Выделить всё
spring:
http:
serviceclient:
my-remote-api:
base-url: 'https://www.my-remote-api'
Однако, если базовый URL-адрес не установлен, приложение не сможет выполнить удаленный вызов, и при фактической попытке вызова выдается исключение IllegalArgumentException. Я хотел бы, чтобы приложение уже завершало работу при запуске, когда базовый URL забыли настроить.
Подробнее здесь:
https://stackoverflow.com/questions/798 ... is-not-set