Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java JPA@ManyToOne引用了未知类型。_Java_Hibernate_Jpa_Playframework - Fatal编程技术网

Java JPA@ManyToOne引用了未知类型。

Java JPA@ManyToOne引用了未知类型。,java,hibernate,jpa,playframework,Java,Hibernate,Jpa,Playframework,在Play1.2.4框架中,我使用hibernate/persistence将两个类映射到两个单独的表 用户类本身有一组用户角色 @OneToMany(mappedBy="userId") @Embedded public Collection<UserRole> roles; 在我的mySQL数据库中,用户角色数据库有一个来自用户数据库的外键。然而,我不断地得到这样的错误 @ManyToOne on models.UserRole.userId references an unk

在Play1.2.4框架中,我使用hibernate/persistence将两个类映射到两个单独的表

用户类本身有一组用户角色

@OneToMany(mappedBy="userId")
@Embedded
public Collection<UserRole> roles;
在我的mySQL数据库中,用户角色数据库有一个来自用户数据库的外键。然而,我不断地得到这样的错误

@ManyToOne on models.UserRole.userId references an unknown entity: long

类UserRole应该如下所示

 @ManyToOne(fetch=FetchType.LAZY)
 @JoinColumn(name="userId")
 public User user;

您需要映射实体而不是属性本身。

如果您使用的是
@ManyToOne
,则它所附加到的字段的数据类型应该是关系另一端的JPA实体:例如,
用户
,而不是
。如果您使用的是OneToMany,则不能同时嵌入。
 @ManyToOne(fetch=FetchType.LAZY)
 @JoinColumn(name="userId")
 public User user;