On 6-Jan-08, at 6:10 PM, Kevin Windham wrote:

I have an app that will take orders. I didn't fully consider the consequences of inserting the orders directly into the DB. Now I've run into the situation where an order gets created and then someone decides to simply close their browser before completing payment. Now I have a "bad" order in the system.

My initial thought for dealing with this was simply to not insert the order and associated lineitems into the db context until after the process is complete. The problem with this is that it violates one of the rules I've read about. That is, that you should insert objects into the context before any manipulation of those objects.

Inserting objects into an EOEditingContext does not save them to the DB. That only happens when you call saveChanges on the EC.

So what is the problem with creating the order and lineItems and only calling saveChanges on the EC when it is complete?

If the user walks away, the EC gets GCd and no order is entered in the DB.

Does anyone have an elegant solution for this, or should I simply create some dummy objects and then clone them into new objects that I insert into the DB immediately on creation?

;david

--
David LeBer
Codeferous Software
'co-def-er-ous' adj. Literally 'code-bearing'
site:   http://codeferous.com
blog: http://davidleber.net
profile: http://www.linkedin.com/in/davidleber
--
Toronto Area Cocoa / WebObjects developers group:
http://tacow.org


_______________________________________________
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]

Reply via email to