Re: Object Validation Auto Increment Problem

From: Andrus Adamchik (andru..bjectstyle.org)
Date: Fri Jun 19 2009 - 07:23:46 EDT

  • Next message: Dave Lamy: "Transient objects question"

    You can't uncheck mandatory checkbox for a PK.

    As to the original problem, I am pretty sure I am not seeing this
    behavior in Cayenne 3.0. Could be a bug in 2.0.4. Would it be possible
    to try it out with 3.0?

    Andrus

    On Jun 18, 2009, at 6:39 PM, Michael Gentry wrote:

    > I'm going to take a guess that the isMandatory="true" is firing first
    > before the PK is generated and assigned. Try turning that off and see
    > if it works. Cayenne should know that PKs are mandatory, anyway.
    >
    > mrg
    >
    >
    > On Wed, Jun 17, 2009 at 5:17 PM, Mark Fraser<mar..ark100.net> wrote:
    >> Hello,
    >>
    >> I am using Cayenne 2.0.4 with Derby embedded.
    >>
    >> I am getting a ValidationException "id is required" when I commit
    >> changes
    >> after creating a new object.
    >>
    >> I have set the PK Generation Strategy to Database-Generated and set
    >> the ID
    >> field as Auto Incremented in the modeler.
    >>
    >> In my map file the id field looks like this:
    >>
    >> ...db-attribute name="ID" type="INTEGER" isPrimaryKey="true"
    >> isGenerated="true" isMandatory="true" length="10"....
    >>
    >>
    >> I have also tested whether Cayenne thinks the adapter supports
    >> generated
    >> keys with the following code:
    >>
    >>
    >> DataMap map = dataContext.getEntityResolver().getDataMap("MyMap");
    >> DataNode node =
    >> dataContext.getParentDataDomain().lookupDataNode(map);
    >> DbAdapter ad = node.getAdapter();
    >> System.out.println(ad.supportsGeneratedKeys());
    >> and this returns true.
    >>
    >> If I uncheck "Object Validation" for the data domain in the modeler
    >> everything works fine.
    >>
    >> However I would rather not turn off object validation.
    >>
    >> Anyone have any suggestions on what I might be missing?
    >>
    >> Thanks,
    >>
    >> Mark
    >>
    >



    This archive was generated by hypermail 2.0.0 : Fri Jun 19 2009 - 07:24:21 EDT