Matt Watson created CAY-2256: -------------------------------- Summary: Cannot Save/Insert an Object With null Flattened (complex) toOne Relationship Key: CAY-2256 URL: https://issues.apache.org/jira/browse/CAY-2256 Project: Cayenne Issue Type: Bug Components: Core Library Affects Versions: 4.0.M4 Reporter: Matt Watson Attachments: breaking-test.patch
When using a Flattened complex join for a toOne Relationship... if you do not set the relationship the {{validateForSave}} on {{CayenneDataObject}} incorrectly attaches a {{ValidationFailure}} saying that the relationship is required. Prior to M4 this worked correctly, but the commit fixing CAY-2146 introduced this issue. More directly the line of code holding the IF statement below was updated to check the db.Rels.size(). {code:title= CayenneDataObject.java|borderStyle=solid} if (dbRels.size() == 1 && relationship.isSourceIndependentFromTargetChange()) { continue; } {code} While putting this code back makes the test for this issue pass, it obviously makes the test for CAY-2146 FAIL, so I'm not suggesting to put it back, but just pointing it out in case it helps better understand this issue. (see attached breaking-test.patch) -- This message was sent by Atlassian JIRA (v6.3.15#6346)