У меня есть запрос DetachedCriteria с проекцией и преобразователем, как показано ниже
criteria = DetachedCriteria.forClass(Report.class, "r");
criteria
.createAlias("template", "t")
.createAlias("constituents", "c")
.setProjection(
Projections.projectionList()
.add(Projections.property("r.reportId").as("reportId"))
.add(Projections.property("r.reportNm").as("reportNm"))
.add(Projections.property("t.templateNm").as("templateNm"))
.add(Projections.property("t.templateTyp").as("templateTyp"))
).setResultTransformer(Transformers.aliasToBean(ReportSummary.class));
Затем я получаю Citeria из сеанса и теперь, когда я пытаюсь добавить предложение orderBy динамически, то есть
Session session = entityManager.unwrap(Session.class);
Criteria c = criteria.getExecutableCriteria(session);
Order order = sortDirection.equals("ASC")?
Order.asc(orderByColumnName):Order.desc(orderByColumnName);
c.addOrder(order);
сгенерированный запрос содержит дополнительное предложение orderBy, т.е.
order by reportId ASC(NOT REQUIRED ADDED AUTOMATICALLY), order by reportNm ASC
Может кто-нибудь подсказать мне решение