Spring Boot не удалось привязать свойства под .. к IntJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Spring Boot не удалось привязать свойства под .. к Int

Сообщение Anonymous »

Я пытаюсь сгенерировать случайное значение для порта в моем файле .yml, используя порт: ${random.int(1024, 65535)} при запуске, я получаю эту ошибку:

Код: Выделить всё

 Could not bind properties to 'SftpConfiguration' : prefix=recon.data.load.sftp.*, ignoreInvalidFields=false, ignoreUnknownFields=true; nested exception is org.springframework.boot.context.properties.bind.BindException: Failed to bind properties under 'recon.data.load.sftp.port' to int
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:6
Мои классы конфигурации следующие:

Код: Выделить всё

@Configuration
public class SftpSpringConfiguration {
@Bean
@ConfigurationProperties(prefix = "recon.data.load.sftp.*")
public SftpConfiguration sftpFileRetrievalConfiguration() {
return new SftpConfiguration();
}

@Bean
public SftpFileRetrieval fileRetrieval() {
return new SftpFileRetrieval(sftpFileRetrievalConfiguration()::createSession);
}
}

Код: Выделить всё

@NoArgsConstructor
@Getter
@Setter
public class SftpConfiguration {
private String server;
private String username;
private Resource privateKey;
private int port;
ПРИМЕЧАНИЕ: Create Session — это просто стандартный шаблон для настройки клиента JSch.
Как вы можете видеть, я использую конфигурацию Spring для привязки значений к SftpConfiguration. Проблема в некоторых классах, в которых я @Autowired мой SftpClient пытается заполнить поля значениями из моих свойств. Если я добавлю что-то другое, кроме $random.int[1024, 65535], оно будет работать так, как ожидалось, т. е. если я жестко закодирую 1024 в свойстве порта, оно будет работать нормально. Цель состоит в том, чтобы заставить его работать со случайным значением порта.
Есть мысли по этому поводу?

Подробнее здесь: https://stackoverflow.com/questions/742 ... der-to-int
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»