Application.yaml:Значение аннотаций не может найти значение, если это число
request.delay.ms: 200
Пружинный компонент:
@Value("${request.delay.ms}")
private long requestDelay;
Теперь, как ни странно это звучит, похоже, весной может успешно разрешить свойство, если это значение является строкой, то есть, если я изменю 200
на 200a
. Это вызывает ошибку Caused by: java.lang.NumberFormatException: For input string: "200a"
, но это ожидается.
Если изменить значение обратно 200
я Caused by: org.springframework.beans.TypeMismatchException: Failed to convert value of type 'java.lang.String' to required type 'long'; nested exception is java.lang.NumberFormatException: For input string: "${request.delay.ms}"
И если я бегу в режиме кота отладки и пошагово весеннем код, он отлично работает без ошибок.
Строка @Value (s) разрешена в одном и том же компоненте все время.
Просьба указать минимальный, полный и поддающийся проверке пример. –
Общая догадка: 'request.delay.ms:" 200 "'? –
Это отлично работает для меня. –