0
我最近對我的JPA實體進行了F編輯,並且我正在拼命地將該功能恢復。加入一些默認查詢到我的我的實體,我不能叫他們在我的會話bean後...雖然說命名查詢它存在只是一個註解的持久性我得到這個例外我是否需要在ORM.xml文件中放入命名查詢
There is no query with the name "" defined for any of the known persistent classes:
類(或實體bean)。我需要將其添加到ORM.xml文件嗎?我似乎記得您可以對ORM.xml文件進行註釋,或者您可以直接註釋實體bean。我錯過了一步嗎?
感謝。
UPDATE: 實際命名查詢:
import javax.persistence.Table;
import javax.persistence.NamedQuery;
import javax.persistence.NamedQueries;
@Entity
@Table(name="EMAIL_DOMAIN_TRUST")
@NamedQueries({
@NamedQuery(name="getEmailDomainTrust", query = "SELECT e FROM EmailDomainTrust e"),
...
})
這裏就是我稱之爲我的無狀態會話bean
public List<EmailDomainTrust> getEmailDomains() {
List listOfEmailDomains = null;
//try
//{
System.out.println("Testing 1..2...3...!");
listOfEmailDomains = emf.createNamedQuery("getEmailDomainTrust").getResultList();
System.out.println(listOfEmailDomains.size());
//}
//catch(Exception e)
//{
//System.out.println("Sugar Cookies! This thing doesn't work");
//}
// while(it)
return listOfEmailDomains;
}
不知道爲什麼它似乎無法找到它?我在Websphere集成開發人員btw工作。也許有些東西沒有正確更新?
請更新這篇文章更多有意義的信息。即:實際的異常文本,相關的實體/ orm片段。 – Rick 2012-04-09 14:00:27
嘿,那裏。我剛剛更新。 – SoftwareSavant 2012-04-09 14:51:55
你是否在persistence.xml文件中列出了持久化類型?你的帖子中有錯字嗎? EntityManagerFactory(emf)沒有createNamedQuery(...)方法(或者我可能會跳到結論)。 – Rick 2012-04-09 16:22:05