On Aug 4, 2008, at 3:14 PM, Chris Gamache wrote:

That wipes my shared configuration each time a new library tries to
instantiate Cayenne. I need to add to the already initialized Cayenne if Cayenne has been initialized, and the only way to determine if Cayenne has already been initialized (at least that I have found...) is to try to obtain
the shared configuration first. If it hasn't been initialized then an
exception is thrown and we branch to the initialization routines.

This is important when library X uses Cayenne data classes mapped in both library Y and library Z. We can't have Z re-initalizing Cayenne after Y has
already initialized and registered its mapped classes.


Sure, but can you doublecheck that the types are loaded in the right Configuration? I.e. after all libraries are loaded, can you grab the shared configuration and print the contents of the ExtendedTypeMap?

[BTW, this is the area where Cayenne indeed requires some improvement. Support for multi-configuration stack (aka libraries) is coming in 3.0 - I am working on it now.]

Andrus

Reply via email to