Вначале у меня есть следующая спецификация:
@Value("#{props.isFPL}")
private boolean isFPL=false;
Это прекрасно работает, получая значение из файла свойств:
isFPL = true
Однако следующее выражение по умолчанию приводит к ошибке:
@Value("#{props.isFPL:false}")
private boolean isFPL=false;
Не удалось выполнить синтаксический анализ выражений; Вложенное исключение - org.springframework.expression.spel.SpelParseException: EL1041E: (поз. 28): после разбора допустимого выражения в выражении еще больше данных: "двоеточие (:)"
Я также пытался использовать $вместо #.
@Value("${props.isFPL:true}")
private boolean isFPL=false;
Тогда значение по умолчанию в аннотации отлично работает, но я не получил правильное значение из файла свойств: