我正在将一个 ejb 2 应用程序迁移到 ejb 3.1。这两种技术将不得不共存一段时间。我的一个实体 bean 如下所示:
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
import javax.persistence.Table;
@Entity
@Table(name = "migracao_jsf")
@NamedQueries({
@NamedQuery(name = "migracao_query", query = "select p from MigracaoJsf p")
})
public class MigracaoJsf implements Serializable {
/**
*
*/
private static final long serialVersionUID = 1L;
@Column(name = "name")
@Id
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
在 jboss 6.1 的部署日志中,我可以看到实体已部署。
[AnnotationBinder] Binding entity from annotated class: myclass.MigracaoJsf
但是我找不到查询解析的日志。当我尝试调用它时,我得到一个查询未找到异常。为什么实体部署正确而查询未解析?
谢谢
凯利