【发布时间】:2012-05-24 17:14:13
【问题描述】:
我的应用程序模型集中有一个用户实体,定义如下:
public class User extends Model {
private String name;
private byte[] sk;
@Column(columnDefinition = "BINARY(272)")
private byte[] pk;
private int port;
@OneToOne
public Profile profile;
@ElementCollection
public List<String> friends;
@ElementCollection
public List<String> mirrors;
...
}
在我的应用程序的不同部分(控制器类)的方法中,我正在检索并尝试修改镜像列表,如下所示:
User u = User.connect(username);
int port = ProfileFinder.getLocation(username, mirror);
u.mirrors.remove(mirror);
u.save();
这是抛出一个错误,指出:
LazyInitializationException occured : failed to lazily initialize a collection of role: models.User.mirrors, no session or session was closed
我怀疑这是因为我误解了@ElementCollection 标签的某些元素,但谁能澄清我该如何纠正这个问题?
谢谢。
【问题讨论】:
标签: java hibernate jpa playframework