Apache Cayenne Modeler建模单表继承生成的子类具有不同的返回类型

时间:2014-04-11 01:05:03

标签: apache-cayenne

以此为例:https://cayenne.apache.org/docs/3.0/modeling-single-table-inheritance.html

我有一个名为Book的ObjEntity。我已将其中一个属性的Java Type更改为使用JodaTime的DateTime类。使用DateTime的get / set方法正确生成超类_Book()。例如:public void setRelease(DateTime release)

我有另一个ObjEntity调用EBook,它将超类设置为Book()(与abstract _Book()不同)。在_EBook类中,我看到了具有不同签名的相同方法setRelease。例如:public void setRelease(Date release)

如何让Modeler不创建这些方法?

1 个答案:

答案 0 :(得分:0)

这不应该正常发生。类生成器不为子类中的超类属性生成setter / getter。它可能是DataMap XML吗?最可能的原因是"发布"在EBook实体中的ObjAttribute声明"阴影" "释放"超级实体的ObjAttribute。如果是这样,您应该手动将其从XML中删除,然后重做类。