> Should I put a breakpoint in the data source delegate or what?
Sure. You can also override CayenneDataObject.setPersistenceState(..)
and catch when the state changes to PersistenceState.MODIFIED.
Andrus
On May 5, 2006, at 2:22 PM, Eric Lazarus wrote:
> Andrus
>
> Objects are showing up in 'modifiedObjects' without
> our seeing ANY update in 'writeProperty' so how can we
> srceen for phantoms there. What else can cause objects
> to show up as dirty when writeProperty is not called
> for that object? Should I put a breakpoint in the data
> source delegate or what?
>
> Eric
> --- Andrus Adamchik <andru..bjectstyle.org> wrote:
>
>> 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
>>
>
>
> __________________________________________________
> Do You Yahoo!?
> Tired of spam? Yahoo! Mail has the best spam protection around
> http://mail.yahoo.com
>
This archive was generated by hypermail 2.0.0 : Fri May 05 2006 - 14:50:08 EDT