H:selectManyListbox dúvida

1 resposta
rafaelrodrigues1607

Boa tarde pessoal. Estou fazendo um teste. Acredito que deve ser algo simples, pois devo estar mandando imprimir algo errado. Obtive o seguinte resultado no console quando seleciono um valor no h:selectManyListbox:

Meu xhtml:

<h:selectManyListbox value="#{intimacaoHome.selectedItems}"> <s:selectItems value="#{listaTipoIntimacoes}" var="var" label="#{var.deIntimacao}" itemValue="#{var}"/> </h:selectManyListbox>

E meu bean:

for (String selectedItem : selectedItems) { System.out.println("O valor selecionado é: " + selectedItem); }

Alguma idéia do que posso estar selecionando errado. Para que venha o valor real.

1 Resposta

J

Valor real que você quer dizer é a descrição que aparece na ListBox certo?

Se for é o seguinte:

<s:selectItems value="#{listaTipoIntimacoes}" var=“var” label="#{var.deIntimacao}" itemValue="#{var}"/>

value = lista que popula a combo.
var = nome que você vai atribuir a cada item dessa lista.
label = o que você quer que apareca na combo.
itemValue = valor a ser retornado quando selecionado.

Da forma que está ele vai retornar o objeto inteiro (o “var”), se você quer que retorne a descrição faça como você fez para a label (#{var.deIntimacao}) ao inves de apenas #{var}.

e como não tem como imprimir no console um objeto, essa String que você esta recebendo (“br.com.infosolo.snit.entidades.TipoIntimacao@21”) se não me engano é apenas o endereço de memória dele gerado pelo toString() padrão.

Boa sorte, Never give up!

Criado 16 de fevereiro de 2012
Ultima resposta 20 de fev. de 2012
Respostas 1
Participantes 2