Implementei sim..... estou mandando o código pra você dar uma olhada!!!
publicclassEmpresaConverterimplementsConverter{@OverridepublicObjectgetAsObject(FacesContextfacesContext,UIComponentuIComponent,StringvalorTela){// TODO Auto-generated method stubif(valorTela==null){returnnull;}EmpresaDAOempresaDAO=newEmpresaDAO();Longid=newLong(valorTela);returnempresaDAO.getEmpresa(id);}@OverridepublicStringgetAsString(FacesContextfacesContext,UIComponentuIComponent,ObjectobjetoTela){// TODO Auto-generated method stubif(objetoTela==null){returnnull;}if(objetoTelainstanceofEmpresaBean){EmpresaBeanempresaBean=(EmpresaBean)objetoTela;returnempresaBean.getId().toString();}else{thrownewIllegalArgumentException("object:"+objetoTela+"of type:"+objetoTela.getClass().getName());}}}
k1tsune
Fala dahenz.
Seu converter parece estar ok. Colocou ele no xml, né? Creio que sim, senão daria erro por não ter encontrado.
Pode postar o código do seu listshuttle? Esse componente é problemático. Aqui tive muitos problemas com ele, por exemplo os dados não aparecerem, mesmo que no bean esteja tudo correto. Tentei muitas coisas pra consertar, nem dando reRender no componente. Depois descobri que existe esse problema mas ainda não foi corrigido.
Pode postar o código do listShuttle, por gentileza? Esses bugs que acontecem com ele são cabulosos, mas tentarei achar algo, ahahaa!
Abraço
dahenz
Mudei a conversão de objeto para String desta forma:
publicObjectgetAsObject(FacesContextfacesContext,UIComponentuIComponent,StringvalorTela){// TODO Auto-generated method stubif(valorTela==null){returnnull;}[color=red]EmpresaDAOempresaDAO=newEmpresaDAO();Longid=newLong(valorTela);EmpresaBeanempresaBean=empresaDAO.getEmpresa(id);returnempresaBean.getId().toString();[/color]}@OverridepublicStringgetAsString(FacesContextfacesContext,UIComponentuIComponent,ObjectobjetoTela){// TODO Auto-generated method stubif(objetoTela==null){returnnull;}if(objetoTelainstanceofEmpresaBean){EmpresaBeanempresaBean=(EmpresaBean)objetoTela;returnempresaBean.getId().toString();}else{thrownewIllegalArgumentException("object:"+objetoTela+"of type:"+objetoTela.getClass().getName());}}
Agora me apresenta esse erro:
"Component frmMetaVigencia:lsEmpresas has invalid value expression 0"
Afinal, o listShuttle deve ser definido para valores do tipo String?? Apenas??? Se for, por que continua esse erro.....
Obrigado a todos pela ajuda....
k1tsune
Olá
Creio que seu primeiro converter está correto.
Coloque o código jsp por gentileza. Não consegui perceber nada ainda, as vezes o jsp ajuda.
Uma para o id, e outra para a descrição da empresa…
Valew K1tsune
k1tsune
dahenz,
Olhando o código não consegui encontrar nada de errado. O que eu sugiro é debugar o momento de construção da lista e os métodos do converter, ao menos pra tentar isolar o problema. Tente também tirar a coluna com a ID, ver o que rola. Como eu disse, não é sua solução, mas pra tentar isolar o problema
Abraço
dahenz
Pois é… eu tenho feito isso… mas acho que é bug mesmo…
Vou tentar achar outras formas… Acho que vou fazer um modelo agrupamento utilizando dois scrollableDataTable mesmo…
Obrigado pela ajuda K1tsune…
[]s
W
willianmarcel
Pessoal, estou desenvolvendo um sisteminha aqui na empresa utilizando jboss Seam, e preciso fazer o seguinte:
1 - Existe uma classe chamada Fluxo que possui relacionamento com outra classe chamada ItemFluxo, preciso desenvolver uma tela
onde o usuário selecione um fluxo no dropdownlist e abaixo monte um rich:listShuttle com os itens associados e não associados deste fluxo,
estes itens associados ficam em uma terceira tabela tb_Fluxo_Item_Fluxo que foi gerada automaticamente pelo Hibernate atraves de relacionamento @ManyToMany. Estou com dificuldades em desenvolver esta funcionalidade uma vez que nunca trabalhei com seam e o uso de rich faces é um pouco
recente para mim.
Caso alguém possa me dar um help, pode me mandar email [email removido].