Сомнения при использовании группы переключателей (JSF 2.0)

#java #jsf #jakarta-ee #jsf-2

#java #jsf #джакарта-ee #jsf-2

Вопрос:

В моем вспомогательном компоненте есть переменная типа int:

 private int myVariable;

//Get and set methods
  

Я хочу присвоить переменной выше другое значение в зависимости от выбранного переключателя.

 <h:selectOneRadio
            id="myComponent" value="#{myBackingBean.myVariable}">
                    <f:selectItem itemValue="7" itemLabel="Text 1" />
                    <f:selectItem itemValue="12" itemLabel="Text 2" />
                    <f:selectItem itemValue="8" itemLabel="Text 3" />                       
</h:selectOneRadio>
  

Как myVariable может иметь значение 7, если выбран первый элемент, 12, если второй, и 8, если третий?

Могу ли я сделать это, изменив свой метод настройки?

Как?

Какой самый простой способ?

Комментарии:

1. Как myVariable может иметь значение 7, если выбран первый элемент, 12, если второй, и 8, если третий? Вы хотите, чтобы вы просто выбирали, и ваша переменная должна иметь значение, в этом вопрос?

2. Я хочу присвоить переменной другое значение int в зависимости от выбранного переключателя.

Ответ №1:

У нас есть конвертер именно для этой цели. Здесь это продемонстрировано

Комментарии:

1. Также смотрите Конвертер стилей jsf2.0

Ответ №2:

Код в порядке. Вам не нужно больше ничего делать. В JSF / EL уже встроены преобразователи (принуждения) для стандартных типов значений boolean, integer, long, float и double. Если у вас с этим проблема, она определенно кроется где-то в другом месте.