Øyvind Harboe commented on CAY-966:
-----------------------------------
In the code below "objEntity.getAttributeForDbAttribute(column)"= null
public void execute(MergerContext mergerContext) {
// remove ObjAttribute mapped to same column
for (ObjEntity objEntity : objEntitiesMappedToDbEntity(entity)) {
ObjAttribute objAttribute = objEntity.getAttributeForDbAttribute(column);
if (objAttribute != null) {
objEntity.removeAttribute(objAttribute.getName());
}
}
// remove DbAttribute
entity.removeAttribute(column.getName());
}
> ObjRelationsship's are not removed processing DropColumnToModel
> ---------------------------------------------------------------
>
> Key: CAY-966
> URL: https://issues.apache.org/cayenne/browse/CAY-966
> Project: Cayenne
> Issue Type: Bug
> Components: Cayenne Core Library
> Affects Versions: 3.0
> Environment: all
> Reporter: Øyvind Harboe
> Assignee: Tore Halset
> Attachments: DbEntity.java, surefire-reports.zip
>
>
> I'll attatch a modified DbEntity.java that fixes the problem here.... Basically the code below won't work right because the ObjRelationship's aren't removed.
> MergerContext mergerContext = new ExecutingMergerContext(
> payBackDataMap, dataNode);
> for (MergerToken token : tokens)
> {
> if (token.getDirection() == MergeDirection.TO_DB)
> {
> token = token.createReverse(dataNode.getAdapter()
> .mergerFactory());
> }
> token.execute(mergerContext);
> }
-- 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 Jan 21 2008 - 06:39:00 EST