я использую Struts2 и спящий режим JPA для моего приложения и у меня есть ошибки при traying с помощью запроса на обновление с Hibernate вот мой код:HQL: Hibernate запрос на обновление
в моем классе дао
@Override
public void UpdateNoteEvaluation() {
try {
String hql="update Evaluation e " +
"SET e.Eval_NoteGlobal =: (SELECT SUM(sv.SousEval_Note) AS sum FROM sousevaluation sv)" +
"ORDER BY EVAL_ID DESC LIMIT 1 ";
Query q= session.createQuery(hql);
q.executeUpdate();
} catch (Exception e) {
transaction.rollback();
e.printStackTrace();
}
}
в моем классе действий:
public String saveOrUpdate(){
sousevaldao.UpdateNoteEvaluation();
System.out.println("update note ok ok");
return SUCCESS;
}
так вот я не могу сделать обновление я получаю эту ошибку:
java.lang.IllegalArgumentException: node to traverse cannot be null!
at org.hibernate.hql.ast.util.NodeTraverser.traverseDepthFirst(NodeTraverser.java:55)
at org.hibernate.hql.ast.QueryTranslatorImpl.parse(QueryTranslatorImpl.java:277)
зная меня есть проверить PHPMyAdmin-им запроса обновления, это прекрасно работать
+1 это 'Запрос д = session.createSQLQuery (SQL);' работы точно, но я хочу, если вы можете отрегулировать с синтаксисом HQL – stoner