Hello
I have noticed a problem in ROP cayenne. It seems like the reverse
relationship is not set until the actual relation is faulted.
Simple example:
this works correctly:
logger.warn(artist.getPaintings().size()); -> prints 0
painting.setArtist(artist);
logger.warn(artist.getPaintings().size()); -> prints 1
this does not work correctly:
//logger.warn(artist.getPaintings().size()); -> commented out, no output
painting.setArtist(artist);
logger.warn(artist.getPaintings().size()); -> prints 0
Regardless of which of the examples are the objects are committed to
db in both cases, and all seems well after a new select query.
additionally for this setup I found another issue which might be
related. when calling artist.addToPaintings(painting) on client I get
following exception on server:
[java] Caused by: java.lang.Exception: [v.3.0-SNAPSHOT $
{project.build.date} ${project.build.time}] Can't build a query for
relationship 'artist' for temporary id: <ObjectId:Painting, TEMP:
0000023B1C5C0005>
is that related?
does anyone have any clues on what might be wrong?
I'm baffled with this one...
Best regards
Marcin
This archive was generated by hypermail 2.0.0 : Sun May 10 2009 - 21:30:16 EDT