Hibernate 在播放2.0.3时加载JPA中的模型属性时出错
我有一个名为“学者”的非常简单的模型,带有相应的getter/setter方法。我还有一个方法findByFullName(字符串名称、字符串姓氏)根据输入的名称或姓氏检索列表。Hibernate 在播放2.0.3时加载JPA中的模型属性时出错,hibernate,playframework,jpa-2.0,Hibernate,Playframework,Jpa 2.0,我有一个名为“学者”的非常简单的模型,带有相应的getter/setter方法。我还有一个方法findByFullName(字符串名称、字符串姓氏)根据输入的名称或姓氏检索列表。 @实体 @Table(name=“scholar”) 公共类学者扩展模型{ @Id @列(name=“学生号”) 私人长学号; @列(name=“姓氏”) 私有字符串姓氏; @Column(name=“name”) 私有字符串名称; 我的findByFullName有如下方法: 公共静态列表findByFullName
@实体
@Table(name=“scholar”)
公共类学者扩展模型{
@Id
@列(name=“学生号”)
私人长学号;
@列(name=“姓氏”)
私有字符串姓氏;
@Column(name=“name”)
私有字符串名称;
我的findByFullName有如下方法:公共静态列表findByFullName(字符串名称,字符串姓氏){
List returned=JPA.em().createQuery(“来自学者s,其中s.姓氏=?”)
.setParameter(1,姓氏).getResultList();
结果学者列表中的学者对象只有studentNumber。即使学者表中的两列都有数据,名称和姓氏也会返回null。例如
returned.get(0).getStudentNumber returns a value
returned.get(0).getName() returns null
returned.get(0).getSurname() returns null
异常跟踪:内部服务器错误,请求[POST/search]->
play.core.ActionInvoker$$anonfun$receive$1$$anon$1: Execution exception [[NullPo
interException: null]]
at play.core.ActionInvoker$$anonfun$receive$1.apply(Invoker.scala:134) [
play_2.9.1.jar:2.0.3]
at play.core.ActionInvoker$$anonfun$receive$1.apply(Invoker.scala:115) [
play_2.9.1.jar:2.0.3]
at akka.actor.Actor$class.apply(Actor.scala:318) [akka-actor.jar:2.0.2]
at play.core.ActionInvoker.apply(Invoker.scala:113) [play_2.9.1.jar:2.0.3]
at akka.actor.ActorCell.invoke(ActorCell.scala:626) [akka-actor.jar:2.0.2]
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:197) [akka-actor.jar:2.0.2]
Caused by: java.lang.NullPointerException: null
at models.Scholar._ebean_get_surname(Scholar.java:4) ~[classes/:na]
at models.Scholar.getSurname(Scholar.java:89) ~[classes/:na]
at models.Scholar.findbyIdOrNames(Scholar.java:55) ~[classes/:na]
at controllers.Search.findScholar(Search.java:30) ~[classes/:2.0.3]
at Routes$$anonfun$routes$1$$anonfun$apply$11$$anonfun$apply$12.apply(ro
utes_routing.scala:92) ~[classes/:na]
at Routes$$anonfun$routes$1$$anonfun$apply$11$$anonfun$apply$12.apply(ro
utes_routing.scala:92) ~[classes/:na]
My persistence.xml看起来像:
<persistence xmlns="http://java.sun.com/xml/ns/persistence"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com /xml/ns/persistence/persistence_2_0.xsd"
version="2.0">
<persistence-unit name="defaultPersistenceUnit" transaction-type="RESOURCE_LOCAL">
<provider>org.hibernate.ejb.HibernatePersistence</provider>
<non-jta-data-source>DefaultDS</non-jta-data-source>
<properties>
<property name="hibernate.dialect" value="org.hibernate.dialect.MySQLDialect"/>
<property name="hibernate.hbm2ddl.auto" value="update"/>
</properties>
</persistence-unit>
</persistence>
db.default.driver=com.mysql.jdbc.Driver
db.default.url="jdbc:mysql://localhost/DBName"
db.default.user=user
db.default.password=password
jpa.default=defaultPersistenceUnit
db.default.jndiName=DefaultD`
我想检索所有学者的财产;学生编号、姓名和姓氏请协助,字面上是无法前进的