Я создал проект GWT Spring ROO со следующими объектами: Facture и ItemFacture.
ItemFacture содержит ссылку на счет-фактуру.
@RooJavaBean
@RooToString
public class ItemFacture {
@ManyToOne
private Facture facture;
...
Это код для Facture :
@RooJavaBean
@RooToString
@RooEntity
public class Facture {
private String nom;
private String type;
}
и все шло нормально, пока я не захотел создать пользовательский поисковик, который выбирает все ItemFactures, содержащие определенную Facture:
@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: поле «facture» не существует в com.test.ItemFacture или не является постоянным
Я создал несколько пользовательских поисковиков, и каждый из них работал нормально, кроме этого.
Я попытался добавить @Persistent в поле и @PersistenceCapable(identityType = IdentityType.APPLICATION) в Facture, но это все равно не работает.
Кто-нибудь знает, в чем проблема?