3

我有 3 个具有这些关系的域:

A hasMany [bs: B] B 属于 [c: C] C

在 webflow 中,我这样做(简化版):

flow.a = new A(stuff:stuff)
flow.a.addToBs(new B(c:C.get(1)))
flow.a.addToBs(new B(c:C.get(2)))
flow.a.addToBs(new B(c:C.get(3)))

然后我尝试在 gsp 页面上显示所有这些信息:

<g:each in="${a.bs}" var="b">
    ${b.c.someProperty}
</g:each>

这就是我得到的地方LazyInitializationException。我想我理解为什么(webflow 序列化flow范围)但是当我尝试它们的attach()所有实例C都没有附加时:

flow.a.bs.each {
    it.c.isAttached() // returns false
    it.c.attach()
    it.c.isAttached() // returns false
}

为什么是这样?我看不到任何错误消息......有没有更好的方法来做到这一点(我正在考虑lazy:false为这些关系设置)?

4

0 回答 0