У меня есть это поле, которое монтируется во время выполнения, подобно объединению других полей. Посмотрите:Использование поля переходных процессов в HQL
public String getNumeroCip() {
if (this.getId() == null) {
return "BR0000000000000";
}
String idFormated = String.format("%011d", this.getId());
return "BR" + idFormated + this.produto.getProduto().getSufixo();
}
Это мое поле, смонтированное во время выполнения. Я могу назвать это: bean.numeroCip.
Но если я пытаюсь использовать это в HQL, как это:
@NamedQuery(name = "Ar.findByNumeroArOrCip", query = "SELECT c FROM AR c "
+ "JOIN FETCH c.produto "
+ "JOIN FETCH c.situacao "
+ "WHERE c.numeroAr = :numeroAr OR c.numeroCip = :numeroCip")
я получил следующее сообщение об ошибке при попытке запуска сервера Tomcat:
Caused by: org.hibernate.HibernateException: Errors in named queries: Ar.findByNumeroArOrCip
Итак, уникальное решение создает мое поле в базе данных. Так грустно. – Shelly