On Monday, February 13, 2012 3:34:37 PM UTC+1, Eric Andresen wrote: > > I guess "tricky" is a relative term. My primary editor references > SubObjectC using a LeafValueEditor<SubObjectCProxy>, and in this scenario > my LeafValueEditor is changing to a different SubObjectC instance that > wasn't included in the original object.
So basically the equivalent of: ctx.edit(primaryObject); // now, the "original" SubObjectC is edit()ed primaryObject.setSubobjectc(newSubObjectC); // where newSubObjectC has *not* been edit()ed in this RequestContext ctx.save(primaryObject).fire(); Nothing "tricky" indeed. What I see in the server trace is that in the top-level object, it loads > the original instance of subObjectC. Later in the setProperty methods it > loads the newly-selected subObjectC. > > My best guess is that since the new SubObjectC was not "edited" in the > original context (it was added in later), that is why it isn't included in > that list. It is understandable if the RF servlet doesn't scan through all > the operations to find other objects when doing the initial object load. > > If this is the expected behavior in this scenario I can accept that, since > Jesse's suggested server-side change removed the negative side-effect I was > seeing. I was really just looking for clarification. > If I'm right in the above "simplification", could you file an issue? I think the newSubObjectC should be edit()ed when the setter is called. Or alternatively allow un-edited proxies (could reduce the request payload in some circumstances) but then make sure they're loaded before setters are called on the server-side. -- You received this message because you are subscribed to the Google Groups "Google Web Toolkit" group. To view this discussion on the web visit https://groups.google.com/d/msg/google-web-toolkit/-/7Je7AGQBqh0J. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
