Hi, I encountered com.webobjects.eoaccess.EOGeneralAdaptorException when saveChanges() after inserting an enterprise object into editing context.
It only happens when I set a relationship of the inserted object. Without setting the relationship, my app run smoothly. The inserted entity called Sale. And the problematic relationship called referenceSale, which joins to sale. (If a sale has a referenceSale, it will retrieve the value of property from referenceSale instead of itself.) Sale: Column | Type | Modifiers ------------------+-----------------------------+------------------------------------------------ saleid | bigint | not null default nextval('sale_seq'::regclass) clientid | bigint | not null storeid | bigint | referencesaleid | bigint | ... other property Foreign-key constraints: "sale_client_fk" FOREIGN KEY (clientid) REFERENCES client(clientid) DEFERRABLE INITIALLY DEFERRED "sale_store_fk" FOREIGN KEY (storeid) REFERENCES store(storeid) DEFERRABLE INITIALLY DEFERRED "sale_referencesale_fk" FOREIGN KEY (referencesaleid) REFERENCES sale(saleid) DEFERRABLE INITIALLY DEFERRED I have no idea why this relationship will cause the problem. Searching on list, I turned on the SQL logging and see there is a NullPointerException. No SQL generated. What can I do to investigate this problem further? 2008-04-27 02:50:00,491 DEBUG -[-:50212 1] NSLog (ERXNSLogLog4jBridge.java:44) - === Begin Internal Transaction 2008-04-27 02:50:00,492 DEBUG -[-:50212 1] NSLog (ERXNSLogLog4jBridge.java:44) - evaluateExpression: <com.webobjects.jdbcadaptor.PostgresqlExpression: "SELECT NEXTVAL('Sale_seq') AS KEY0" withBindings: > # select the next id to insert 2008-04-27 02:50:00,494 DEBUG -[-:50212 1] NSLog (ERXNSLogLog4jBridge.java:44) - 1 row(s) processed 2008-04-27 02:50:00,499 DEBUG -[-:50212 1] NSLog (ERXNSLogLog4jBridge.java:44) - === Commit Internal Transaction 2008-04-27 02:50:00,505 DEBUG -[-:50212 1] NSLog (ERXNSLogLog4jBridge.java:44) - === Begin Internal Transaction 2008-04-27 02:50:00,506 INFO -[-:50212 1] Exceptions (ERXDatabaseContextDelegate.java:152) - Database Exception occured: java.lang.NullPointerException # what happened? it even didn't print a PostgresqlExpression SQL! 2008-04-27 02:50:00,507 DEBUG -[-:50212 1] NSLog (ERXNSLogLog4jBridge.java:44) - === Rollback Internal Transaction 2008-04-27 02:50:00,508 WARN -[-:50212 1] NSLog (ERXNSLogLog4jBridge.java:41) - <com.webobjects.appserver._private.WOComponentRequestHandler>: Exception occurred while handling request: com.webobjects.eoaccess.EOGeneralAdaptorException 2008-04-27 02:50:00,512 ERROR -[-:50212 1] ERXApplication (ERXApplication.java:1217) - Exception caught: null Extra info: { <SNIPPED> } com.webobjects.eoaccess.EOGeneralAdaptorException at com.webobjects.eoaccess.EODatabaseContext._exceptionWithDatabaseContextInformationAdded(EODatabaseContext.java:4500) at com.webobjects.eoaccess.EODatabaseContext.performChanges(EODatabaseContext.java:6212) at com.webobjects.eocontrol.EOObjectStoreCoordinator.saveChangesInEditingContext(EOObjectStoreCoordinator.java:376) at com.webobjects.eocontrol.EOEditingContext.saveChanges(EOEditingContext.java:3176) at er.extensions.ERXEC._saveChanges(ERXEC.java:937) at er.extensions.ERXEC.saveChanges(ERXEC.java:860) at woserver.bookshelf.Reorder.atmPurchase(Reorder.java:641) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at com.webobjects.foundation.NSKeyValueCoding$ValueAccessor$1.methodValue(NSKeyValueCoding.java:636) at com.webobjects.foundation.NSKeyValueCoding$_MethodBinding.valueInObject(NSKeyValueCoding.java:1134) at com.webobjects.foundation.NSKeyValueCoding$DefaultImplementation.valueForKey(NSKeyValueCoding.java:1293) at com.webobjects.appserver.WOComponent.valueForKey(WOComponent.java:1686) at com.webobjects.foundation.NSKeyValueCoding$Utility.valueForKey(NSKeyValueCoding.java:447) at com.webobjects.foundation.NSKeyValueCodingAdditions$DefaultImplementation.valueForKeyPath(NSKeyValueCodingAdditions.java:212) at com.webobjects.appserver.WOComponent.valueForKeyPath(WOComponent.java:1754) at com.webobjects.appserver._private.WOKeyValueAssociation.valueInComponent(WOKeyValueAssociation.java:50) at com.webobjects.appserver._private.WOHyperlink.invokeAction(WOHyperlink.java:98) at er.extensions.ERXHyperlink.invokeAction(ERXHyperlink.java:62) at com.webobjects.appserver._private.WODynamicGroup.invokeChildrenAction(WODynamicGroup.java:105) at com.webobjects.appserver._private.WODynamicGroup.invokeAction(WODynamicGroup.java:115) at com.webobjects.appserver._private.WOConditional.invokeAction(WOConditional.java:86) at com.webobjects.appserver._private.WODynamicGroup.invokeChildrenAction(WODynamicGroup.java:105) at com.webobjects.appserver._private.WODynamicGroup.invokeAction(WODynamicGroup.java:115) at com.webobjects.appserver._private.WOConditional.invokeAction(WOConditional.java:86) at com.webobjects.appserver._private.WODynamicGroup.invokeChildrenAction(WODynamicGroup.java:105) at com.webobjects.appserver._private.WODynamicGroup.invokeAction(WODynamicGroup.java:115) at er.ajax.AjaxDynamicElement.invokeAction(AjaxDynamicElement.java:83) at er.ajax.AjaxUpdateContainer.invokeAction(AjaxUpdateContainer.java:62) at com.webobjects.appserver._private.WODynamicGroup.invokeChildrenAction(WODynamicGroup.java:105) at com.webobjects.appserver._private.WODynamicGroup.invokeAction(WODynamicGroup.java:115) at com.webobjects.appserver._private.WOComponentContent.invokeAction(WOComponentContent.java:38) at com.webobjects.appserver._private.WODynamicGroup.invokeChildrenAction(WODynamicGroup.java:105) at com.webobjects.appserver._private.WODynamicGroup.invokeAction(WODynamicGroup.java:115) at com.webobjects.appserver.WOComponent.invokeAction(WOComponent.java:1078) at woserver.HYPOComponent.invokeAction(HYPOComponent.java:56) at com.webobjects.appserver._private.WOComponentReference.invokeAction(WOComponentReference.java:127) at com.webobjects.appserver._private.WODynamicGroup.invokeChildrenAction(WODynamicGroup.java:105) at com.webobjects.appserver._private.WODynamicGroup.invokeAction(WODynamicGroup.java:115) at com.webobjects.appserver.WOComponent.invokeAction(WOComponent.java:1078) at woserver.HYPOComponent.invokeAction(HYPOComponent.java:56) at com.webobjects.appserver.WOSession.invokeAction(WOSession.java:1357) at com.webobjects.appserver.WOApplication.invokeAction(WOApplication.java:1736) at er.extensions.ERXAjaxApplication.invokeAction(ERXAjaxApplication.java:46) at er.extensions.ERXApplication.invokeAction(ERXApplication.java:1388) at com.webobjects.appserver._private.WOComponentRequestHandler._dispatchWithPreparedPage(WOComponentRequestHandler.java:206) at com.webobjects.appserver._private.WOComponentRequestHandler._dispatchWithPreparedSession(WOComponentRequestHandler.java:298) at com.webobjects.appserver._private.WOComponentRequestHandler._dispatchWithPreparedApplication(WOComponentRequestHandler.java:332) at com.webobjects.appserver._private.WOComponentRequestHandler._handleRequest(WOComponentRequestHandler.java:369) at com.webobjects.appserver._private.WOComponentRequestHandler.handleRequest(WOComponentRequestHandler.java:442) at com.webobjects.appserver.WOApplication.dispatchRequest(WOApplication.java:1678) at er.extensions.ERXApplication.dispatchRequestImmediately(ERXApplication.java:1505) at er.extensions.ERXApplication.dispatchRequest(ERXApplication.java:1469) at com.webobjects.appserver._private.WOWorkerThread.runOnce(WOWorkerThread.java:144) at com.webobjects.appserver._private.WOWorkerThread.run(WOWorkerThread.java:226) at java.lang.Thread.run(Thread.java:613) Regards, yllan _______________________________________________ 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: http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com This email sent to [EMAIL PROTECTED]