E aew galera, será que alguém pode me ajudar ?
Meu problema é o seguinte:
Tenho um bean chamado UsuarioMarcadorController, preciso num a4j:repeat pegar uma lista de uma Inner Class chamada InstituicaoMarcadores, que esta neste Bea
Criei um método que retorna o DataModel com a lista de InstituicaoMarcadores, tudo certo…
O Problema esta no a4j:repeat, quando eu passo o DataModel como value… parece que ele não reconhece a estrutura da Inner Class, os atributos etc…
Alguem já passou por um problema parecido ?
Como deve ser estrutura da inner class?
UsuarioMarcadorController está mapeado no faces-config…
Os atributos da sua Inner Class estão como private?
Tem os gets e sets como public?
Teria como postar o codigo da jsp e do Bean?
sandro.csimas
Lá vai o código…
[UsuarioMarcadorController]
publicclassUsuarioMarcadorControllerextendsGenericControler{privateDataModelmarcadoresInstituicao;........// Método que cria o datamodel com a lista da inner class (InstituicaoMarcadores)publicDataModelgetMarcadoresInstituicao(){if(marcadoresInstituicao==null){try{Stringhql="from EscritorioUsuario eu where eu.usuario.id = "+UtilController.getIdUsuarioLogado();BaseFacadefacade=newBaseFacade();List<BaseValueObject>lista=facade.executeSelectQuery(hql,null);if(lista.size()>0){List<InstituicaoMarcadores>result=newArrayList<InstituicaoMarcadores>();for(BaseValueObjectobj:lista){EscritorioUsuarioesc=(EscritorioUsuario)obj;InstituicaoMarcadoresinstMarcs=newInstituicaoMarcadores();instMarcs.setEscritorio(esc.getEscritorio());Stringhql2="from UsuarioMarcador um where um.usuario.id = "+esc.getEscritorio().getId();List<BaseValueObject>lista2=facade.executeSelectQuery(hql2,null);for(BaseValueObjectobj2:lista2){instMarcs.getMarcadores().add((UsuarioMarcador)obj2);}result.add(instMarcs);}marcadoresInstituicao=newListDataModel(result);}else{marcadoresInstituicao=newListDataModel(newArrayList<InstituicaoMarcadores>());}}catch(Exceptione){e.printStackTrace();}}returnmarcadoresInstituicao;}// Inner ClassclassInstituicaoMarcadores{privateList<UsuarioMarcador>marcadores=newArrayList<UsuarioMarcador>();privateEscritorioescritorio;publicvoidsetMarcadores(List<UsuarioMarcador>marcadores){this.marcadores=marcadores;}publicList<UsuarioMarcador>getMarcadores(){returnmarcadores;}publicEscritoriogetEscritorio(){returnescritorio;}publicvoidsetEscritorio(Escritorioescritorio){this.escritorio=escritorio;}}}