我的一套应用软件中有一个用户实体,其定义如下:
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
我怀疑这是因为我误解了 代码E元素集合 标签中的某些元素, 但是谁能澄清我怎样才能纠正这一点?
谢谢