You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cayenne.apache.org by "Andrus Adamchik (JIRA)" <ji...@apache.org> on 2012/10/28 16:51:12 UTC
[jira] [Updated] (CAY-1714) ROP: Cayenne tries to build a query for
non committed object when using more than 2 nested contexts
[ https://issues.apache.org/jira/browse/CAY-1714?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Andrus Adamchik updated CAY-1714:
---------------------------------
Fix Version/s: 3.1B2
> ROP: Cayenne tries to build a query for non committed object when using more than 2 nested contexts
> ---------------------------------------------------------------------------------------------------
>
> Key: CAY-1714
> URL: https://issues.apache.org/jira/browse/CAY-1714
> Project: Cayenne
> Issue Type: Bug
> Components: ROP
> Affects Versions: 3.1M3
> Reporter: Dzmitry Kazimirchyk
> Fix For: 3.1B2
>
> Attachments: cay1714-unit-test.patch
>
>
> Code describing the problem:
> CayenneContext context = cayenneService.getContext();
> Artist a = context.newObject(Artist.class);
> a.setArtistName("a");
> ObjectContext child = context.createChildContext();
> Painting p = child.newObject(Painting.class);
> p.setPaintingTitle("p");
> p.setToArtist(child.localObject(a));
>
> child.commitChangesToParent();
>
> p.getToGallery(); // this will throw an exception
> On the last line following exception will be thrown:
> org.apache.cayenne.CayenneRuntimeException: [v.3.1M4-SNAPSHOT Jun 15 2012 06:55:01] Can't build a query for relationship 'gallery' for temporary id: <ObjectId:Painting, TEMP:000001CA37BA0001>
> at org.apache.cayenne.query.RelationshipQuery.createReplacementQuery(RelationshipQuery.java:113)
> at org.apache.cayenne.query.IndirectQuery.getReplacementQuery(IndirectQuery.java:103)
> at org.apache.cayenne.query.IndirectQuery.route(IndirectQuery.java:86)
> at org.apache.cayenne.access.DataDomainQueryAction.runQuery(DataDomainQueryAction.java:424)
> ....................
> Persistence state of artist and painting objects by that moment will be COMMITTED.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira