Ответ 1
A f:selectItem
, который имеет noSelectOption
, установленный в true, представляет собой параметр "без выбора", что-то вроде этого:
-- Select a Colour -- < noSelectOption was intended for this case
Red
Green
Blue
Tomato
Этот пункт отображается в меню, если только hideNoSelectionOption
не установлено в вашем компоненте меню. В этом случае опция выбирается, когда пользователь взаимодействует с меню.
Просто имейте в виду, что если требуется запись и эта опция "нет выбора" выбрана, будет ошибка проверки.
Альтернативой, которая требует немного больше кодирования, является использование f:selectItem
с value=#{null}
, чтобы представить случай, когда пользователь не выбрал значение. Если у вас есть конвертер, вам нужно будет проверить этот случай null
и, если вам кажется, ввести некоторые пользовательские валидаторы.