Hi!

 I can't figure out how to make the refreshing query work with inserting or
deleting rows in database. For instance:


 Artist a = ...

assert a.getPaintingsArray().size() == 0;


 //here is direct insert into database a painting of artist a (artistid=a.id
)


 RefreshQuery refresher = new RefreshQuery();

context.performGenericQuery(refresher);


 assert a.getPaintingsArray().size() == 1; //that's false



 Everything works perfect when I sql-update in database. When i sql-delete,
i do also get an exception like this:

org.apache.cayenne.FaultFailureException: [v.3.0M4 May 18 2008 16:32:02]
Error resolving fault, no matching row exists in the database for ObjectId:
<ObjectId:Apkforecast, apkforecastid=3>

at org.apache.cayenne.BaseContext.prepareForAccess(BaseContext.java:100)

at com.nic.rainbow.data.auto._Apkforecast.getDate(_Apkforecast.java:29)

...and so on

when i try to iterate through related array


 I'm using ROP if that helps. By the way, when i restart client, the data
becomes correct, so i assume everything has changed correctly on a server.

If that's not supported, can you give me some advice to manually refresh the
desired relationships?


 Thanks,

Andrey

Reply via email to