<h:selectBooleanCheckbox />

1 resposta
R

Estou com serios problemas com esta tag, eu crio uma lista de objetos e em uma lista ficam os checkbox e o nome do usuario, seguindo uma regra de negocio alguns aparecem marcados outros não, e o usuario pode marcar e desmarcar qualquer um dos checkbox, o problema é que ao clicar no botão salvar não consigo recuperar os valores atualizados, como faço para recuperar estes valores?
aqui vai o codigo:

JSF

<rich:column>
        <f:facet name="header"><h:selectBooleanCheckbox /></f:facet>
	<h:selectBooleanCheckbox value="#{usuario.bloqueioAudio}" />
</rich:column>

No MB um listDataModel é responsavel por popular a tabela, tem uma lista chamada usuarios que é inserida no ListDataModel e na hora de chamar uso a lista usuarios.
A minha maior duvida é a seguinte: eu incluo a lista dentro de um ListDataModel, na hora de salvar utilizo a lista usuarios ou o ListDataMdel?

1 Resposta

Guilherme_Gomes

Eu consegui fazer isso utilizando um mapa.

Eu carrego no mapa as informações, mais ou menos assim:

Map<Usuario, Boolean> map = new HashMap<...>();
for(Usuario user: listaDeUsuarios){
  map.put(user, user.getBloqueioAudio());
}

e na pagina:

<rich:column>  
    <f:facet name="header"><h:selectBooleanCheckbox /></f:facet>  
    <h:selectBooleanCheckbox value="#{mb.map[usuario]}" />  
</rich:column>

No próximo request, o mapa terá sido alterado pelo JSF para as propriedades que o usuário escolheu.

Outra coisa, a minha solução foi assim por causa de outras coisas a mais que eu precisava, talvez você consiga fazer apenas com uma lista, nunca testei.

Criado 15 de maio de 2009
Ultima resposta 15 de mai. de 2009
Respostas 1
Participantes 2