Gente, eu tive dificuldade para trabalhar com radiobunttons dentro de uma tabela. Problema solucionado, vou postar aqui.
Segue abaixo o código da tabela no facelet:
<rich:dataTable id="table" var="item" rowKeyVar="index">
<f:facet name="header">
<h:outputText value="Tabela" />
</f:facet>
<rich:column>
<f:facet name="header">
<h:outputText value="RadioButons"/>
</f:facet>
<h:selectOneRadio value="#{item.radioButton}" onchange="atualiza#{index}();">
<f:selectItem itemValue="1" itemLabel="" />
</h:selectOneRadio>
//<!-- bean.Marcar: seta numa variavel o valor da lista.get(index) -->
<a4j:jsFunction name="atualiza#{index}" action="#{bean.Marcar}" reRender="table">
<f:setPropertyActionListener value="#{index}"
target="#{bean.index}" />
</a4j:jsFunction>
</rich:column>
</rich:dataTable>
agora, abaixo, a função Marcar do bean:
public void Marcar() {
// primeiro desmarca todos os radiobuttons
for (Item temp : listItens)
temp.setCorreta(0);
// marcar o radio certo
listItens.get(index).setRadioButton(1);
}
peguei meu código e refiz aki, pra dar uma enxutada. Qualquer dúvida manda menssagem ai.
Flw