I think I've seen something similiar. Is this the latest Cayenne build?
Could you open a JIRA bug (and possibly provide a JUnit test)?
2009/5/11 Marcin Skladaniec <marcin.skladanie..cu.edu.au>
> 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 : Mon May 11 2009 - 02:41:51 EDT