Eric,
I don't have time to go through all your code, but let me comment on
possible pitfalls.
Sometimes frontend frameworks cause "phantom" updates, when
populating objects from the form values. By phantom I mean the
equivalent of this: object.setX(object.getX()). They are cleared on
commit and should not generate events for the peer context, however
when you inspect an uncommitted DataContext, they will show up in
"modifiedObjects" collection.
We discussed various options to handle that, but decided to put off
any solution till future releases [1]. Right now you can check for
"phantoms" and discard them inside "writeProperty", but this has its
own limitations as discussed in the Jira issue that I mentioned.
Also there is a bug in the latest Beta, reported by Bryan [2]. This
may or may not be related.
Andrus
[1] http://issues.apache.org/cayenne/browse/CAY-512
[2] http://objectstyle.org/cayenne/lists/cayenne-user/2006/04/0276.html
This archive was generated by hypermail 2.0.0 : Fri May 05 2006 - 12:06:07 EDT