Problemas com rich:listShuttle

1 resposta
P

Estou tendo problema com o componente rich:listShuttle. Minha lista exibe as informações corretamente e consigo adicionar os itens na caixa ao lado. No entato, na hora que tento submeter os dados do formulário, ocorre um erro com a seguinte mensagem:
"Component j_id29:formTeste:sourceList has invalid value expression br.com.teste.Usuario@103479e"
Já procurei um solução para isso em diversos lugares e constatei que muitas pessoa estão com o mesmo problema.
Não consigo ter a menor ideia do que aconteceu. Criei inclusive uma classe converter para tentar resolver isso mas nada até agora. Nem sei ao certo se é necessário criar uma classe converte para isso.
A minha necessidade é de apenas recuperar a lista de itens associado no meu bean.
Alguém poderia me ajudar com isso ?
Att,

1 Resposta

A
cara eu usei o componente e nao lembro se tive esse erro nao, mas tente com este conversor....
public class ConversorClientes implements Converter {

	private List<SelectItem> listaClientes;
	
	public Conversor(List<SelectItem> listaClientes){
		this.listaClientes = listaClientes;
	}
	
	public Object getAsObject(FacesContext context, UIComponent component, String value) throws ConverterException {
		try {
			if (value == null || value.equals("")) {
				return null;
			}
			else {
				Cliente cliente = new Cliente();
				
				cliente.setId(new Long(value));
				
				if (this.listaClientes != null) {
					for (SelectItem item : this.listaClientes) {
						if (cliente.equals(item.getValue())) {
							cliente = item.getValue();
							break;
						}
					}
				}
				
				return cliente;
			}
		}
		catch (Exception e) {
			return null;
		}
	}

	public String getAsString(FacesContext context, UIComponent component, Object value) throws ConverterException {
		try {
			Cliente cliente = (Cliente) value;

			if (value == null || cliente.getId() == null) {
				return null;
			}
			else {
				return cliente.getId().toString();
			}
		} 
		catch (Exception e) {
			return null;
		}
	}
}
No contrutor vc deve passar tanto o source quanto o target juntos
Criado 30 de abril de 2010
Ultima resposta 3 de mai. de 2010
Respostas 1
Participantes 2