Использование f:selectOneRadio var в атрибуте passtrough
selectOneMenu с forEach, как описано здесь ( /questions/18916009/ispolzovanie-fselectitems-var-v-atribute-passtrough/18916022#18916022), выполняет свою работу, но при попытке использовать selectOneRadio в том же случае, сквозной переход игнорируется.
Есть ли быстрый способ исправить это.
<h:selectOneRadio...>
<c:forEach value="#{bean.countries}" var="country">
<f:selectItem
itemValue="#{country}"
itemLabel="#{country.countryName}"
pt:data-icon="flag flag-#{country.isoCode}" />
</c:forEach>
</h:selectOneRadio>
Это не то же самое, что в данной ссылке. SelectOneMenu - генерирует поле со списком. SelectOneRadio - генерирует группу переключателей, поэтому он использует разные рендеры.
1 ответ
Решение довольно простое
XHTML
<f:metadata>
<f:viewParam name="a-radio" value="#{radioButtons.radioButtonJSF22}"/>
</f:metadata>
<label for="fooOption">
<input type="radio" jsf:id="fooOption" pt:name="a-radio" pt:data-something="someValue" value="Wisconsin"/>
<span>Wisconsin</span>
</label>
<label for="barOption">
<input type="radio" jsf:id="barOption" pt:name="a-radio" pt:data-something="someValue"value="Minnesota"/>
<span>Minnesota</span>
</label>
боб
@ManagedBean
public class RadioButtons {
private String radioButtonJSF22;
//...getter and setter for radioButtonJSF22
}
Благодаря этому сайту http://www.leveluplunch.com/java/examples/jsf-radio-buttons/