我已经设置了3个班级。 ClassA
的FK分别为ClassB
和ClassC
。我在ClassA
@Entity
@Table(name="ClassA")
public class ClassA{
//rest of the code
@OneToOne(fetch=FetchType.LAZY, targetEntity=ClassB.class)
@JoinColumn(name="ClassB_ColA", columnDefinition="ClassB_ColA", updatable=false, insertable=false)
private ClassB classB;
@OneToOne(fetch=FetchType.LAZY, targetEntity=ClassC.class)
@JoinColumn(name="ClassC_ColA", columnDefinition="ClassC_ColA", updatable=false, insertable=false)
private ClassC classC;
}
我正在接受例外
Exception [EclipseLink-60] (Eclipse Persistence Services - 2.1.1.v20100817-r8050): org.eclipse.persistence.exceptions.DescriptorException
Exception Description: The method [_persistence_set_classB_vh] or [_persistence_get_classB_vh] is not defined in the object [project.persistence.entities.ClassA].
Internal Exception: java.lang.NoSuchMethodException: project.persistence.entities.ClassA._persistence_get_classB_vh()
Mapping: org.eclipse.persistence.mappings.OneToOneMapping[classB]
Descriptor: RelationalDescriptor(project.persistence.entities.ClassA --> [DatabaseTable(ClassA)])
我做了一点搜索,我可以找到一些old threads关于挥动静载或其他东西的说法。有人可以提出解决方案吗?
P.S: 我正在使用weblogic 10和eclipselink2
答案 0 :(得分:0)
如何考虑复制粘贴属性名称重复?
..
private ClassB classB;
..
private ClassB classB;
答案 1 :(得分:0)
问题与静态挥动物体有关。所以我做了什么,我改变了加载机制。
从ClassB
开始,我没有为ClassA
和ClassA
加载任何内容,我保留了延迟加载..它运行正常。