次のように定義されたモデルのアプリケーション セットに User エンティティがあります。
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
、これを修正する方法を誰かが明確にすることはできますか?
ありがとう。