Re: Bug in child contexts?

From: Michael Gentry (blacknex..mail.com)
Date: Tue Mar 04 2008 - 12:35:09 EST

  • Next message: Andrus Adamchik: "Re: Bug in child contexts?"

    What you describe is not functioning the way I would've expected (or
    at least hoped). I did some testing on nested ECs before and ran into
    a few glitches, but never completely isolated the reason why.

    /dev/mrg

    On Tue, Mar 4, 2008 at 12:24 PM, Kevin Menard <kmenar..ervprise.com> wrote:
    > Hi,
    >
    > This seems like such a basic question that I probably shouldnıt have to ask,
    > but I want to verify intended behavior versus a bug. Since Cayenne doesnıt
    > allow one to associate two data objects from distinct contexts, we use local
    > object.
    >
    > So, I have something similar to the following:
    >
    > ObjectContext customerContext;
    > Customer customer = customerContext.newObject(Customer.class);
    >
    > ObjectContext childContext = customerContext.createChildDataContext();
    > BillingInfo bi = childContext.newObject(BillingInfo.class);
    >
    > The bi instance is created in its own context so that if the user doesnıt
    > commit the page, I can toss the data without affecting the customer context.
    > If the user does save the form, then I want to do something like
    > bi.setCustomer(customer); However, theyıre in different contexts, so that
    > doesnıt work. Additionally, bi has relationships to other entities in
    > childContext. So, in this case, I use localObject to pull customer into
    > childContext, set the relationship, commit, and go on my merry way.
    >
    > The problem is that calling customer.getBillingInfo() now returns billing
    > info associated with the child context. I thought that they would be HOLLOW
    > objects resolved with the customerıs context, but it appears due to caching
    > I now have a situation that Cayenne normally wonıt allow: two related
    > objects in different contexts.
    >
    > Is this the way itıs supposed to work for child contexts or have I run into
    > a bug? Either way, Iıll need to fix it. I just need to know which codebase
    > to work with.
    >
    > Thanks,
    > Kevin
    >



    This archive was generated by hypermail 2.0.0 : Tue Mar 04 2008 - 12:35:39 EST