Re: JPA RoadMap

From: Ashley Aitken (mrhatke..ac.com)
Date: Mon Feb 20 2006 - 00:20:18 EST

  • Next message: Heiko.Erhard..i-de.com: "Re: unhappy with generated getTo methods"

    On 20/02/2006, at 12:17 PM, Andrus Adamchik wrote:

    > On Feb 19, 2006, at 9:38 PM, Ashley Aitken wrote:
    >
    >> This is a very interesting direction for Cayenne and I wish you
    >> all well.
    >
    > For now we are building a JPA facade. We'll see if that's going to
    > become a "direction" ;-) The spec is rather narrow in scope,
    > concentrating on object *relational* mapping. Cayenne does more
    > than that.

    Sure, I understand. I guess session management, transactions etc.
    are out of scope.

    >> 1. Do you see the Cayenne Developer GUI tool being able to be
    >> used with JPA
    >
    > Absolutely. Although I have no concrete strategy regarding the
    > Modeler and JPA, I don't see the Modeler going away. Also with
    > CAY-455 we'll have a translator between Cayenne and JPA mapping
    > formats - a good start for integrating with the Modeler.

    That's great. I don't think the "Java world" really gets how much
    easier a modelling tool can make this stuff (at least for me, it's
    easier to think about a mapping within a modelling tool).

    >> 2. I thought JPA required POJO persistence? Doesn't Cayenne
    >> require inheritance from a base class ...
    >
    > Not a problem for two reasons:
    >
    > 1. JPA defines ClassTransformer interface for runtime class
    > enhancement JDO-style. So we can make a DataObject out of a POJO
    > when we want.

    I'm (definitely) not an expert, and I don't know for sure, but I
    don't believe JDO implementations used run-time enhancements to add
    inheritance. I thought they were still mostly reflection-based but
    with enhancements to help detect dirty objects etc.

    How would "adding inheritance and code" at run-time work if the POJO
    already inherits from other (non-persistent classes)? I guess you
    could walk the hierarchy but wouldn't that change the non-persistent
    classes? Again, I am not sure, but it seems problematic to use
    inheritance.

    > 2. Latest 1.2 milestones more and more rely on the new
    > org.objectstyle.cayenne.property.ClassDescriptor interface, making
    > common superclass less crucial. If we have to get rid of it, we can
    > probably do it now.

    Now that approach would obviously work, but I would think it would be
    a big (good) change for Cayenne.

    --
    Ashley Aitken
    Perth, Western Australia
    mrhatken at mac dot com
    Skype Name: MrHatken (GMT + 8 Hours!)
    



    This archive was generated by hypermail 2.0.0 : Mon Feb 20 2006 - 00:20:31 EST