Fwd: [JIRA] Commented: (CAY-763) XML Deserialization fails on relationships when using a mapping file

From: Andrus Adamchik (andru..bjectstyle.org)
Date: Thu Apr 19 2007 - 08:48:49 EDT

  • Next message: Andrus Adamchik (JIRA): "[JIRA] Created: (CAY-778) Cayenne jar manifest lists project.version as "cayenne""

    Kevin,

    I can apply the patch attached by Robert. Any objections? (honestly I
    haven't spent much time lately looking into XML serialization, so I
    will only run our existing test suite to ensure it passes)

    Andrus

    Begin forwarded message:
    > From: "Robert Zeigler (JIRA)" <de..ayenne.apache.org>
    > Date: April 19, 2007 3:28:44 PM GMT+03:00
    > To: andru..bjectstyle.org
    > Subject: [JIRA] Commented: (CAY-763) XML Deserialization fails on
    > relationships when using a mapping file
    >
    >
    > [ https://issues.apache.org/cayenne/browse/CAY-763?
    > page=com.atlassian.jira.plugin.system.issuetabpanels:comment-
    > tabpanel#action_12292 ]
    >
    > Robert Zeigler commented on CAY-763:
    > ------------------------------------
    >
    > Any progress on this front?
    >
    >
    >> XML Deserialization fails on relationships when using a mapping file
    >> --------------------------------------------------------------------
    >>
    >> Key: CAY-763
    >> URL: https://issues.apache.org/cayenne/browse/CAY-763
    >> Project: Cayenne
    >> Issue Type: Bug
    >> Components: Cayenne Core Library
    >> Affects Versions: 1.2 [STABLE], 2.0 [STABLE]
    >> Environment: Any
    >> Reporter: Robert Zeigler
    >> Assigned To: Andrus Adamchik
    >> Attachments: cay-763.patch
    >>
    >>
    >> When XMLDecoder deserializes objects using a mapping descriptor,
    >> no objects are registered with a datacontext until after all
    >> objects have been initialized. However, cayenne requires a non-
    >> null datacontext to correctly handle relationships. Hence,
    >> dataobjects using the default cayenne handling of relationships
    >> (either to-one or to-many) will be unable to deserialize objects
    >> from XML (due to null pointers).
    >> In the case of a collection, the getXXX method will return null,
    >> and the XMLMappingDescriptor fails to "sense" a collection.
    >> In the case of a to-one relationship, a NPE exception is thrown
    >> trying to set the child property of the parent object.
    >> The simplest way to fix this would be to make XMLMappingDescriptor
    >> DataContext-capable (ie: will register objects with a datacontext,
    >> if one is provided, as the objects are created). I've done this in
    >> a local copy of the code. I will attach a patch when I get a minute.
    >
    > --
    > 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 : Thu Apr 19 2007 - 08:49:33 EDT