There are two things that come up.
1) Per my comment, I think we deliberately removed the ability to
auto-register with a DC. Perhaps that was a bad decision, perhaps not.
Now that I've been prodded a bit, I'll try to dig up the proper thread.
2) If we do decide that auto-registration may be a bad idea, then the
problem is a result of trying to associate two unregistered DOs. This
is something that needs to be addressed at a higher level and is slated
for 3.0.x. It would be a big change to throw into a "stable" release.
-- Kevin> -----Original Message----- > From: Andrus Adamchik [mailto:andru..bjectstyle.org] > Sent: Thursday, April 19, 2007 8:49 AM > To: de..ayenne.apache.org > Subject: Fwd: [JIRA] Commented: (CAY-763) XML Deserialization > fails on relationships when using a mapping file > > 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 - 15:32:03 EDT