I have a EOEnterpriseObject, called a Task record and it has a relationship, called AssignedTo, that connects to another EOEnterprise record called Identity. In my WO Application, when I assign an Identity to the Task record thus creating the AssignedTo relationship, it works the first time, but if I do it again immediately after, it then gives me the error:
updateValuesInRowDescribedByQualifier -- com.webobjects.jdbcadaptor.JDBCChannel method failed to update row in database
com.webobjects.eoaccess.EOGeneralAdaptorException: updateValuesInRowDescribedByQualifier -- com.webobjects.jdbcadaptor.JDBCChannel method failed to update row in database
at com.webobjects.eoaccess.EODatabaseContext._exceptionWithDatabaseContextInformationAdded(EODatabaseContext.java:4685)
at com.webobjects.eoaccess.EODatabaseContext.performChanges(EODatabaseContext.java:6393)
at com.webobjects.eocontrol.EOObjectStoreCoordinator.saveChangesInEditingContext(EOObjectStoreCoordinator.java:415)
Just recently getting a basic understanding on how WebObjects works and deals with snapshots, thanks to Chuck Hill’s book “Practical WebObjects”, I figured that the snapshot of the Task record, or actually the relationship AssignedTo, must not be updated after the first assignment is set. After putting in the line EditingContext.invalidateAllObjects(), the problem went away. I know this isn’t the best way to do this. But I thought that to-one relationships were suppose to be ok and the to-many needed to be babysat. I’ve also tried setRefreshesRefetchedObjects(True) but this didn’t work, I assume because I’m not actually going to the db after my save for a refetch. I’ve also tried setDefaultTimestampLag(2) but that didn’t work either.
Could someone please help me understand what is going on here? Suggested readings would also be greatly appreciated.
Thanks,
Calven
_______________________________________________ Do not post admin requests to the list. They will be ignored. Webobjects-dev mailing list ([email protected]) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com
This email sent to [email protected]
