私は最近、JPAエンティティをF-edしました。その機能を取り戻すために必死に努力しています。エンティティにいくつかのデフォルト クエリを追加した後、セッション Bean でそれらを呼び出すことができません...この例外が発生しています
There is no query with the name "" defined for any of the known persistent classes:
上記の名前付きクエリは存在しますが、それは単なる永続クラス (またはエンティティ Bean) への注釈です。それを ORM.xml ファイルに追加する必要がありますか? ORM.xml ファイルに注釈を付けるか、エンティティ Bean に直接注釈を付けることができたことを覚えているようです。ここでステップがありませんか?
ありがとう。
更新: 実際の名前付きクエリ:
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 統合開発者で働いています。何かが正しく更新されていない可能性がありますか?