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,
Problemas com rich:listShuttle
P
1 Resposta
A
cara eu usei o componente e nao lembro se tive esse erro nao, mas tente com este conversor....
No contrutor vc deve passar tanto o source quanto o target juntos
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;
}
}
}
Criado 30 de abril de 2010
Ultima resposta 3 de mai. de 2010
Respostas 1
Participantes 2