Boa tarde galera tenho uma classe generica!
public class SysDaoGenericOperators<T> extends SysDaoGeneric<T>{
.
.
.
public List<SysDaoGenericOperators<?>> listGeneric(String sqlNameConsult, SysDaoGenericOperators<?> dao){
/*
Este metodo retona qualquer tipo de Bean
*/
EntityManager emUsers=dao.getEntityManager();
List listaGeneric=(ArrayList<SysDaoGenericOperators<?>>)emUsers.createNamedQuery(sqlNameConsult).setFirstResult(1).setMaxResults(10).getResultList();
return listaGeneric;
}
}
public class teste
{
.
.
.
public List<SysUsers> findByDescriptionObj()
{
SysDaoGenericOperators<SysUsers> daoUser= new SysDaoGenericOperators<SysUsers>(SysUsers.class);
Collection <SysDaoGenericOperators<?>>colGeneric=daoUser.listGeneric("SysUsers.findAll", daoUser);
Iterator<SysDaoGenericOperators<?>> itUser= colGeneric.iterator();
List <SysUsers> listUser= new ArrayList<SysUsers>();
while (itUser.hasNext())
{
itUser.next();
}
return listUser;
}
}
Se eu tento colocar o objeto do Iterator na lista listUser ele não aceita!
Se faço o Debug o Objeto que tenho é do Tipo SysUsers;
Mas ele entende que o tipo é SysDaoGenericOperators, e simplesmente da erro e não consigo nem pegar e fazer o cast!
Alguma dica?
Duvidas podem questionar, não coloquei toda a classe por que o projeto é complicado!