Re: Inheritance not resolving

From: Michael Gentry (blacknex..mail.com)
Date: Mon Feb 26 2007 - 16:53:57 EST

  • Next message: Michael Gentry: "Re: Inheritance not resolving"

    I'm not sure if this page will help at all:

    http://cayenne.apache.org/doc20/modeling-inheritance.html

    Also, could you show us the SELECT that is issued when you try query a KlassB?

    Thanks!

    /dev/mrg

    On 2/26/07, Nick Peeples <nick.peeple..mail.com> wrote:
    > I do have the Qualifier filled in. Everything that is online in either
    > the user doc or the modeler doc is currently being done, that is why
    > this is confusing me a little bit.
    >
    > A little bit more, the objects that are in the cache are even not
    > being subclasses properly either. Just poking around a bit, if I do a:
    >
    > return (KlassB) DataObjectUtils.objectForPk(context, obj.getObjectId());
    >
    > on an object that i know is of KlassB extends KlassA, it gets an Cast
    > error. The obj was put in the cache by a:
    >
    > SelectQuery query = new SelectQuery(KlassA.class);
    >
    > Not sure if that helps at all.
    >
    > -Nick
    >
    > On 2/26/07, Michael Gentry <blacknex..mail.com> wrote:
    > > Make sure in Cayenne Modeler, under the ObjEntity (Entity tab) for
    > > your subclasses, you have the Qualifier filled in. If not, that could
    > > be the issue.
    > >
    > > /dev/mrg
    > >
    > >
    > > On 2/26/07, Nick Peeples <nick.peeple..mail.com> wrote:
    > > > Yes, I have Cayenne pumping out all the logs through log4j. If I do
    > > > the SelectQuery for the highest class, it returns all the rows, so in
    > > > that regard it is working, and if i go down the chain towards the
    > > > bottom, the exclusion rules do kick in, and the proper classes are
    > > > returned. It just the lower subclasses are not being resolved to their
    > > > proper, lowest class.
    > > >
    > > > -Nick
    > > >
    > > > On 2/26/07, Michael Gentry <blacknex..mail.com> wrote:
    > > > > Do you have SQL logging turned on? That might could help quite a bit.
    > > > >
    > > > > Thanks,
    > > > >
    > > > > /dev/mrg
    > > > >
    > > > >
    > > > > On 2/26/07, Nick Peeples <nick.peeple..mail.com> wrote:
    > > > > > I am relatively new to Cayenne, but have run into a recent problem. I
    > > > > > am using the single-table inheritance method, and I have a few
    > > > > > subclasses of a generic object. According to the docs and wiki, by
    > > > > > default they will be generated into the lowest possible subclass, but
    > > > > > this doesn't seem to be happening. I can create them just fine, the
    > > > > > qualifiers are all setup, but when I attempt a query,
    > > > > > http://cayenne.apache.org/doc20/handling-inheritance.html, for the
    > > > > > generic class, they are not resolving. The qualifier is being set
    > > > > > correctly in the database.
    > > > > >
    > > > > > I am fully happy to attempt to solve this, but I don't have the
    > > > > > slightest where to start. So I guess my question is, where would I
    > > > > > start, or did i miss some obscure setting that I forgot to set?
    > > > > >
    > > > > > Thank you,
    > > > > > Nick
    > > > > >
    > > > > > ps - setResolvingInheritance(true) doesn't help... but as far as docs
    > > > > > it is the default, so I didn't expect much.
    > > > > >
    > > > >
    > > >
    > >
    >



    This archive was generated by hypermail 2.0.0 : Mon Feb 26 2007 - 16:55:22 EST