Hi John,
On 2012-09-05, at 9:47 AM, John Pollard wrote: > Update: Although it would be interesting to know the answer to the below, it > doesn't explain the problem I am trying to crack. > I have relationships StockItem.webPages() that are fired, report back as NOT > being faults as expected, but then later have reverted to being faults and I > don't know where or how they became faults. I put a stack trace in > StockItem.turnIntoFault() in case the base object is being turned into a > fault, but it isn't (at least not repeatedly), only the relationship is. Can > I somehow trap the point at which a relationship is being reverted to a fault? Not easily. See clearSnapshotForRelationshipNamed in ERXEOControlUtilities. Is Inheritance involved here? If so, what are the details? Chuck > On 5 Sep 2012, at 17:21, John Pollard wrote: > >> Hi WO list, >> >> The firing of a fault on EOs of one type is causing EOs of another type be >> turned into faults... is that expected? >> >> I have a WebPage eo with a to-many relationship called childWebPages >> (returns an array of WebPage objects) >> >> When I access this array recursively in getDescendantWebPages()...see stack >> trace below, a totally different class of object is turned into a fault >> StockItem, see top line of stack trace. >> >> I don't want EOF to turn my carefully pre-loaded StockItems back into faults! >> >> The two EOs are related via a join table. >> >> This is causing performance headaches. >> >> at mp.eo.StockItem.turnIntoFault(StockItem.java:1714) >> at >> com.webobjects.eocontrol.EOFaultHandler.makeObjectIntoFault(EOFaultHandler.java:161) >> at >> com.webobjects.eoaccess.EODatabaseContext._turnToFaultGidEditingContextIsComplete(EODatabaseContext.java:3363) >> at >> com.webobjects.eoaccess.EODatabaseContext.faultForGlobalID(EODatabaseContext.java:3397) >> at >> com.webobjects.eocontrol.EOObjectStoreCoordinator.faultForGlobalID(EOObjectStoreCoordinator.java:537) >> at >> com.webobjects.eocontrol.EOEditingContext.faultForGlobalID(EOEditingContext.java:3608) >> at >> com.webobjects.eoaccess.EODatabaseContext._objectFaultWithSnapshotRelationshipEditingContext(EODatabaseContext.java:2361) >> at >> com.webobjects.eoaccess.EODatabaseContext._fireDeferredFaultWithSourceObject(EODatabaseContext.java:2401) >> at >> com.webobjects.eoaccess.EOAccessDeferredFaultHandler.createFaultForDeferredFault(EOAccessDeferredFaultHandler.java:49) >> at >> com.webobjects.eocontrol.EOCustomObject.willReadRelationship(EOCustomObject.java:1279) >> at >> com.webobjects.eocontrol._EOMutableKnownKeyDictionary$Initializer$_LazyGenericRecordBinding.valueInObject(_EOMutableKnownKeyDictionary.java:614) >> at >> com.webobjects.eocontrol.EOCustomObject.storedValueForKey(EOCustomObject.java:1634) >> at >> com.webobjects.eoaccess.EODatabaseContext.databaseOperationForObject(EODatabaseContext.java:4810) >> at >> com.webobjects.eoaccess.EODatabaseContext.valuesForKeys(EODatabaseContext.java:6531) >> at >> com.webobjects.eocontrol.EOObjectStoreCoordinator.valuesForKeys(EOObjectStoreCoordinator.java:321) >> at >> com.webobjects.eoaccess.EOQualifierSQLGeneration$_KeyValueQualifierSupport.schemaBasedQualifierWithRootEntity(EOQualifierSQLGeneration.java:439) >> at >> com.webobjects.eoaccess.EOQualifierSQLGeneration$Support._schemaBasedQualifierWithRootEntity(EOQualifierSQLGeneration.java:179) >> at >> com.webobjects.eoaccess.EODatabaseChannel.selectObjectsWithFetchSpecification(EODatabaseChannel.java:227) >> at >> com.webobjects.eoaccess.EODatabaseContext._objectsWithFetchSpecificationEditingContext(EODatabaseContext.java:3055) >> at >> com.webobjects.eoaccess.EODatabaseContext.objectsWithFetchSpecification(EODatabaseContext.java:3195) >> at >> com.webobjects.eocontrol.EOObjectStoreCoordinator.objectsWithFetchSpecification(EOObjectStoreCoordinator.java:483) >> at >> com.webobjects.eocontrol.EOEditingContext.objectsWithFetchSpecification(EOEditingContext.java:4053) >> at >> com.webobjects.eoaccess.EODatabaseContext.objectsForSourceGlobalID(EODatabaseContext.java:4084) >> at >> com.webobjects.eocontrol.EOObjectStoreCoordinator.objectsForSourceGlobalID(EOObjectStoreCoordinator.java:629) >> at >> com.webobjects.eocontrol.EOEditingContext.objectsForSourceGlobalID(EOEditingContext.java:3907) >> at >> com.webobjects.eoaccess.EODatabaseContext._fireArrayFault(EODatabaseContext.java:4245) >> at >> com.webobjects.eoaccess.EOAccessArrayFaultHandler.completeInitializationOfObject(EOAccessArrayFaultHandler.java:77) >> at >> com.webobjects.eocontrol._EOCheapCopyMutableArray.willRead(_EOCheapCopyMutableArray.java:45) >> at >> com.webobjects.eocontrol._EOCheapCopyMutableArray.count(_EOCheapCopyMutableArray.java:103) >> at mp.eo.WebPage.getDescendantWebPages(WebPage.java:1410) >> at mp.eo.WebPage.getDescendantWebPages(WebPage.java:1393) >> at mp.eo.WebPage.getDescendantWebPages(WebPage.java:1414) >> at mp.eo.WebPage.getDescendantWebPages(WebPage.java:1393) >> at mp.eo.WebPage.getDescendantWebPages(WebPage.java:1414) >> at mp.eo.WebPage.getDescendantWebPages(WebPage.java:1393) >> at mp.eo.WebPage.getDescendantWebPages(WebPage.java:1414) >> at mp.eo.WebSite.getAllWebPages(WebSite.java:842) >> at mpMall.DirectAction.getWebPageById(DirectAction.java:1982) >> at mpMall.DirectAction.viewPageAction(DirectAction.java:537) >> >> Many thanks, >> John >> _______________________________________________ >> Do not post admin requests to the list. They will be ignored. >> Webobjects-dev mailing list (Webobjects-dev@lists.apple.com) >> Help/Unsubscribe/Update your Subscription: >> https://lists.apple.com/mailman/options/webobjects-dev/john%40pollardweb.com >> >> This email sent to j...@pollardweb.com > > > _______________________________________________ > Do not post admin requests to the list. They will be ignored. > Webobjects-dev mailing list (Webobjects-dev@lists.apple.com) > Help/Unsubscribe/Update your Subscription: > https://lists.apple.com/mailman/options/webobjects-dev/chill%40global-village.net > > This email sent to ch...@global-village.net -- Chuck Hill Senior Consultant / VP Development Practical WebObjects - for developers who want to increase their overall knowledge of WebObjects or who are trying to solve specific problems. http://www.global-village.net/gvc/practical_webobjects _______________________________________________ Do not post admin requests to the list. They will be ignored. Webobjects-dev mailing list (Webobjects-dev@lists.apple.com) Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com