On 10 May 2006, at 17:20, Milan M wrote:

Hello all,

WO application I am working on was pretty simple up to this point: one apache webserver and one databaseserver serving data to it. The things turned more complicated now: In addition to the first database, we now want to add access to another database. Both of these databases have identical schema, and the tables in question are identical. Think of the second database as a backup.

At one point in the applicaiton, I want to take an enterprise object generated in defaultEditingContext and to save it to the other database.

I've dealt with this problem in EOF2.1 to EOF4.5 . EOEntity names had to be unique across an eomodel group. I haven't done any similar work in EOF 5.x, but the general fix *should* be the same. One need to create two or more entirely separate EOF object graphs; have a look at http://developer.apple.com/documentation/webobjects/Reference/ API/com/webobjects/eocontrol/EOObjectStoreCoordinator.html , especially the static methods setDefaultCoordinator() and defaultCoordinator() .

One will probably need, for one's own sanity, to avoid using the session default editing context, which will mean needing to manage locking oneself in any editing contexts one creates, presumably at least one per each EOF stack.

Looking at http://developer.apple.com/documentation/webobjects/ Reference/API/com/webobjects/eocontrol/EOEnterpriseObject.html , registering the same object in more than one editing context should not be expected to work [see the doco for editingContext()], even in entirely separate EOF object graphs. EOGlobalIDs should work, and the snapshot methods in both com.webobjectseocontrol.EOEnterpriseObject and com.webobjects.eoaccess.EODatabase will work.

So depending on exactly what my needs were, I might end up fetching from one database, obtaining row snapshots in the EOAccess layer, then doing some work at the EOAccess level using the other EOF object graph to write an equivalent set of snapshots into the other database.


Complicated?  Certainly.  But this approach does work.


--
Patrick Middleton
OneStep Solutions plc
351 London Road             Phone: +44 (0)1702 426400
Hadleigh                    Fax:   +44 (0)1702 556855
Essex. SS7 2BT              Email: [EMAIL PROTECTED]
England                            (MIME welcome)

_______________________________________________
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 archive@mail-archive.com

Reply via email to