estou usando Disjunction pois estou lendo uma lista de campos que vem da tela JSP
e quando o campo é um relacionamento do objeto User crio seu alias através do createCriteria
mas da erro org.hibernate.QueryException: duplicate alias: documents
O que será ???
Criteria c = session.createCriteria(User.class,"user");
// tamanho da lista
tamanhoLista = cc.getCriterios().size();
Disjunction ou = Restrictions.disjunction();
for (CriterioConsultaDetail detail : cc.getCriterios()) {
if (detail.getOperador().equals("or")) {
if (detail.getNomeTabela().equals(classeCriteria)){
ou.add(Restrictions.eq(detail.getCampo(), detail.getValor()));
}else{
c.createCriteria(detail.getNomeTabela(),detail.getNomeTabela());
ou.add(Restrictions.eq("documents.value", detail.getValor()));
}
}
}
c.add(ou);