Do you have association tags (i.e. one-to-many) defined for the collectionb and collectionc properties? If you do not have an explicit association tag defined, DMS uses the "hierarchical values" mode where it still detect changes but treats that entire property more like a "blob" which gets sent to/from the server in its entirety on each operation. It will not ensure that there is only one instance for each identity so you can easily get aliasing problems. In order to ensure one instance for each identity, we need to know the identity property for the instances in collectionb and c so that we can do the mapping properly.
Jeff ________________________________ From: flexcoders@yahoogroups.com [mailto:[EMAIL PROTECTED] On Behalf Of Joshua Garnett Sent: Thursday, October 18, 2007 6:54 AM To: flexcoders@yahoogroups.com Subject: [flexcoders] LCDS/Hibernate DataServices Issue Hello, We've recently encountered a problem on a project I'm working on. We are using the Data Management Services to managed all of our persisted objects. It connects to our database via a customized Hibernate assembler. The issue we are seeing is that we have a series of collections that point to each other and the references aren't being maintained properly throughout the system. Example: Each item in collectiona, has two properties collectionb and collectionc. The items in collectionc have a reference to an item in collectionb. var itemB:Object = collectionb.getItemAt(0); var refItemB:object = collectionc.getItemAt(0).referenceToB; itemB.id == refItemB.id If at this point I make a change to itemB the corresponding object refItemB is not changed. They are identical objects on the server and should always be the same on the client. I can refresh my client and the differences in the objects are still present. It is not until I close the session and re-login that refItemB is updated properly. Any thoughts on what we might be doing wrong or need to adjust? Thanks, --Josh