Recuperar dados do rich picklist....alguem já conseguiu?

7 respostas
S

Pessoal deixa eu melhorar minha dúvida, pois já tentei de tudo e não consigo resolver o problema por favor é possível alguem me ajudar ?

O problema é o seguinte rodo uma query e seto um List, com o resultado da minha query e esse list exibo ele no no Pick list até aqui perfeito, segue o codigo do meu JSP.

<rich:pickList id="pickListUsuario">
							<f:selectItem itemLabel="Selecione"/>
							<t:selectItems value="#{resultBean.listUsuario}"
								var="usuario" itemLabel="#{usuario.nome}"
								itemValue="#{usuario.id}" />
						</rich:pickList>

Onde:
listUsuario é a lista com o retorno da minha query.
usuario é o objeto que compõe a lista (ou seja minha listUsuario é composta de varios objetos usuario).

Seleciono determinados usuarios e jogo eles para o componente da direita do pick List e tento recuperar meus usuarios selecionados da seguinte forma:

public List<SelectItem> getListaUsuariosSelecionados() {   
	       
	    List<SelectItem> itens = new ArrayList<SelectItem>();   
	       
	    try {   
	        Collection<Usuario> usuario = getListUsuario();    //Aqui passo a mesma lista que chamo ela no meu pick list.
	        for (Usuario u : usuario) {   
	            SelectItem item = new SelectItem(u.getId(), u.getDescription());   
	            itens.add(item);   
	        }   
	    } catch (Exception e) {   
	        System.out.println(e.getMessage());   
	    }   
	       
	    return itens;   
	}

Só que esse metodo retorna todos os usuários… e preciso apenas daqueles selecionados, ou seja os usuários que joguei para o componente da direita do Pick List.
Já pesquisei um monte no forum e tals e naum encontrei a solução, por favor alguem pode me ajudar ?
Desde já agaradeço.

7 Respostas

S

up

S

Ninguem pode me ajudar … :cry:… to precisando mesmo e não sei como fazer…

jayro

Cara, to com a/o mesma/o necessidade/problema. Só que descobri que a lista de selecionados tem que ser uma List caso não, dá erro de conversão. Os SelectItem são para o <f:selectItems value="" /> … Na minha situação não tá dando erre, mais não exibe os listados no Lado Direito, pra onde passo uma List. Você conseguiu resolver isso ?

b0nn1e

Então pessoal não sei se vocês ja olharam nesse linkhttp://livedemo.exadel.com/richfaces-demo/richfaces/pickList.jsf que é do demo do richfaces da exadel dentre os exemplos que têm nesse site sobre pick list tem um em que os itens selecionados são cerragados em painel a parte do pickList se não me engano o autor coloca como value do pickList outro atributo no bean essa value representa os itens selecionado, se houver alguma duvida dêem uma olhadinha no link acima.

ralphsilver
value="#{<seu bean>.<list que vai receber>}"

seta o value… por padrão o picklist retorna os valores em um array de String … vai no seu bean e cria uma

List<String> alValorReceber = null;

que quando vc der o submit vai pra ela…

jayro

Ele tá recebendo direitinho… mais quando eu modifico a List com alguns dados que resgato do banco, a lista do lado direito não exibe.

Vou tentar descrever melhor… Quando eu entro na tela, é exibido toda a lista que eu passo com uma List, pego essa lista, modifico e crio uma List para passar para o value do picklist, más não é exibido.

jayro

b0nn1e,

Vou seguir tua dica e usar em conjunto com o outro componente… Já perdi muito tempo com isso. Acridito que os valores estejam se perdendo pelo ciclo de vida do JSF com o RichFaces… n sei… Valeu companheiro.

:slight_smile:

Criado 19 de novembro de 2009
Ultima resposta 4 de mar. de 2010
Respostas 7
Participantes 4