Validation Error com RadioButton [RESOLVIDO]

2 respostas
marco_andre

Pessoal, estou com um probleminha aqui:
Resumindo tudo, a aplicação funciona JSF + ICEFaces. Tenho uma tela de cadastro onde eu tenho um combo box superior (Unidade Pai). Quando eu seleciono algum elemento desse combo, o valor passa para uma lista de rádio buttons logo abaixo. Assim, toda vez que eu seleciono um combo, ele deve ir para a lista de baixo, respeitando uma hierarquia (pai-filho). Meu objetivo é que eu possa selecionar um elemento na lista de rádios e excluí-lo, e ele retorná para a lista de combo (ele e os filhos).

Meu problema: Quando eu seleciono um radio, me aparece essa mensagem:

sourceId=formAbas:icepnltabset:0:idRadioRegistros[severity=(ERROR 2), summary=(formAbas:icepnltabset:0:idRadioRegistros: Validation Error: Value is not valid), detail=(formAbas:icepnltabset:0:idRadioRegistros: Validation Error: Value is not valid)]

Meu combo Pai:

<ice:selectOneMenu binding="#{UnidadeMB.comboUnidadePaiCadastro}" value="#{UnidadeMB.unidade.idUnidade}" 
       partialSubmit="false" id="comboUnidadePai">
       <f:selectItems value="#{UnidadeMB.selectItemUnidadePai}" />
</ice:selectOneMenu>

Lista de rádios Pai:

<ice:selectOneRadio style="border: 0px;cursor:pointer;" binding="#{UnidadeMB.radioUnidadesPai}" 
       layout="spread" partialSubmit="true" id="idRadioRegistros">
       <f:selectItems value="#{UnidadeMB.selectItemRadioUnidadePai}"/>
</ice:selectOneRadio>

Lista de rádios sendo exibida numa coluna:

<ice:column style="padding: 4px;">
   <f:facet name="header">
      <ice:panelGroup>
             <!-- Botão da impressosa -->
              <ice:commandButton actionListener="#{UnidadeMB.doReport}" binding="#{UnidadeMB.botaoImprimir}" />
       </ice:panelGroup>
   </f:facet>
   <ice:radio for="idRadioRegistros" index="#{tableStatus.index}" />
</ice:column>

Alguém aí pode me ajudar??

2 Respostas

ftabah

Pela mensagem de erro, eu entendo que o problema está no tipo de variável que você está passando no cara com id=idRadioRegistros.
Tem como mostrar os métodos do bean relacionados com ele?
Não adianta só passar os caras da página, é importante mostrar o(s) bean(s) por trás.

marco_andre

Cara, acho que consegui resolver aqui, tava faltando uma rotina para criar a estrutura usada pelo rádio button.
A que eu criei ficou assim:

public void gerarRadioGridUnidadePai() {

        selectItemRadioUnidadePai = new SelectItem[listaUnidadesPaiGrid.size()];
        radioUnidadesPai.setValue(Constantes.VAZIO);
        for (int i = 0; i < listaUnidadesPaiGrid.size(); i++) {
            selectItemRadioUnidadePai[i] = new SelectItem(listaUnidadesPaiGrid.get(i).getIdUnidade(), Constantes.VAZIO);            
        }
    }

Se não resolver, eu volta a posta aqui.

Vlw

Criado 24 de maio de 2010
Ultima resposta 24 de mai. de 2010
Respostas 2
Participantes 2