Hi all, I did similar development with Gilead adapter for GAE (available on Gilead site : http://gilead.sourceforge.net), so I guess it would be a good idea to share our knwoledge about it. I modified nearly the same files, but I more generic concepts (ISerializationFilter and ISerializationTransformer) to allow third parties serialization tuning (as for Hibernate for example).
I detailed it on the following post : http://groups.google.com/group/Google-Web-Toolkit-Contributors/browse_thread/thread/f6bc9f5558684c1 Regards Bruno On 27 juin, 05:57, Daniel Rice (דניאל רייס) <[email protected]> wrote: > 1) According to Bob, the extra field shouldn't cost anything unless it's > used. > 2) The code sets the 'modified' bits when the data is deserialized on the > server, i.e., it marks all the fields as dirty so the object will be fully > updated when the user calls makePersistent on it. > I think this is sufficent, because: > > a) It's not practical to track changes on the client (for example, JSNI > methods could easily bypass any mechanism we put in place), and > b) AppEngine doesn't do partial updates > anyway, so there's no performance advantage in that environment for trying > to do more. > > By the way, the design is largely based on one of the emails you sent to the > gwt mailing list, so thanks for helping me get some clarity on what needs to > happen, > > Dan > > On Fri, Jun 26, 2009 at 4:53 PM, <[email protected]> wrote: > > On 2009/06/26 19:57:28, Dan Rice wrote: > > > Two general comments: > > 1) What are the implications of stashing an extra field on > > java.lang.Object, is there any impact on output size? > > > 2) I've noticed that the JDO enhanced classes seem to track field > > mutations and update the jdoDetachedState. This patch just seems to > > preserve the original jdoDetachedState on the client by tunneling it on > > an expando. What happens if an object sent from the server to the > > client, has modifications performed (mutations), and then is sent back > > to the server for a PersistenceManager.makePersistent() or > > EntityManager.merge()? Will the PMF/EMF just decide that nothing has > > changed and treat it as a no-op? > > >http://gwt-code-reviews.appspot.com/47807 --~--~---------~--~----~------------~-------~--~----~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~----------~----~----~----~------~----~------~--~---
