Я создал проект GWT Spring ROO со следующими объектами: Facture и ItemFacture.
ItemFacture содержит ссылку на Фактуру.
@RooJavaBean
@RooToString
public class ItemFacture {
@ManyToOne
private Facture facture;
...
Это код для фактуры:
@RooJavaBean
@RooToString
@RooEntity
public class Facture {
private String nom;
private String type;
}
и все шло хорошо, пока я не захотел создать собственный искатель, который выбирает все ItemFactures, которые содержат определенный фактор:
@SuppressWarnings("unchecked")
public static List<ItemFacture> findByFacture(Facture facture) {
Query q = entityManager().createQuery("SELECT o FROM ItemFacture AS o WHERE o.facture = :facture");
q.setParameter("facture", facture);
return q.getResultList();
}
Когда я пытаюсь запустить этот искатель, он выдает мне эту ошибку:
Ошибка сервера: поле "facture" не существует в com.test.ItemFacture или не является постоянным; Вложенное исключение - javax.persistence.PersistenceException: поле «фактура» не существует в com.test.ItemFacture или не является постоянным
Я создал несколько пользовательских видоискателей, и каждый из них работал отлично, кроме этого.
Я пытался добавить @Persistent в поле и @PersistenceCapable (identityType = IdentityType.APPLICATION) в Facture, но он все еще не работает.
Кто-нибудь знает в чем проблема?