我正在使用play框架(scala)和hibernate 4(orm)。
我创建了一些模型..这里是我的示例模型:
@Entity
@Table(name="aModel")
class AModel {
@Id
@GeneratedValue
var id:Long = 0
@OneToOne
var contact:Contact = null
}
我的DAO与我的AModel类在同一个文件中:
object AModel extends GenericDao(classOf[AModel]){
def getAllModels():List[AModel] = {
tx.begin
val query = entityManager.createQuery("FROM " + classOf[AModel].getName)
val result = query.getResultList.asInstanceOf[List[AModel]]
tx.commit
return result
}
}
在我的persistence.xml中,我按如下方式映射AModel类:
<persistence-unit name="HibernateService">
<description>
Persistence unit
</description>
<provider>org.hibernate.ejb.HibernatePersistence</provider>
<class>models.AModel</class>
<properties>
<!-- all properties -->
</properties>
</persistence-unit>
仍然可以找到任何合适的映射。我做错了什么?
这里输出:
no persistent classes found for query class: FROM models.AModel$
我希望有人能够帮助我。提前谢谢..
答案 0 :(得分:0)
我发现了这个具体问题的错误。我在查询中使用了对象(DAO)类名。解决方案是切换到AModel类! (不是对象AModel)
不,我有另一个问题..
我收到一个hibernate.QueryException:无法解析属性:type of:models.AModel
有没有人知道这个确切的错误消息?