[JIRA] Commented: (CAY-574) DataObjectUtils 'objectForPK' should work on the client

From: Kevin Menard (JIRA) ("Kevin)
Date: Mon Oct 29 2007 - 16:38:51 EDT

  • Next message: Andrus Adamchik: "Re: svn commit: r589656 - /cayenne/main/trunk/framework/cayenne-jdk1.4-unpublished/.classpath"

        [ https://issues.apache.org/cayenne/browse/CAY-574?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12570 ]

    Kevin Menard commented on CAY-574:
    ----------------------------------

    Sorry, but I'm not quite following what the suggested fixes are. I have recently run into the issue with 3.0M2 and am looking to fix it if I can. I think I agree with #2. It looks like a query should be performed rather than a DbEntity lookup, but I don't quite follow the analysis of #1.

    > DataObjectUtils 'objectForPK' should work on the client
    > -------------------------------------------------------
    >
    > Key: CAY-574
    > URL: https://issues.apache.org/cayenne/browse/CAY-574
    > Project: Cayenne
    > Issue Type: Improvement
    > Components: Cayenne Core Library
    > Affects Versions: 1.2 [STABLE], UNDEFINED FUTURE
    > Reporter: Andrus Adamchik
    > Fix For: UNDEFINED FUTURE
    >
    >
    > While DataObjectUtil.objectForPK takes ObjectContext as an argument, using it on the remote client is not possible. The following exceptions happen on various overloaded calls:
    > 1. This will require method signature change:
    > DataObjectUtils.objectForPK( c1,new ObjectId("MtTable1", "TABLE1_ID", 1));
    > java.lang.ClassCastException
    > at org.objectstyle.cayenne.DataObjectUtils.objectForPK(DataObjectUtils.java:276)
    > at org.objectstyle.cayenne.remote.ClientChannelEventsTst.testSyncSimpleProperty(ClientChannelEventsTst.java:93)
    >
    > 2. This should issue a query instead of doing DbEntity lookup:
    > DataObjectUtils.objectForPK(
    > c2,
    > ClientMtTable1.class,
    > 1);
    > org.objectstyle.cayenne.CayenneRuntimeException: [v..AYENNE_VERSION@ @CAYENNE_BUILD_DATE@] No DbEntity for ObjEntity: MtTable1
    > at org.objectstyle.cayenne.DataObjectUtils.buildId(DataObjectUtils.java:352)
    > at org.objectstyle.cayenne.DataObjectUtils.objectForPK(DataObjectUtils.java:167)
    >

    -- 
    This message is automatically generated by JIRA.
    -
    You can reply to this email to add a comment to the issue online.
    



    This archive was generated by hypermail 2.0.0 : Mon Oct 29 2007 - 16:39:19 EDT