I have a structure which contains two classes.... each defining a @OneToMany association to a common class (SaleItem).
The following association is shown below:
Sale -----< SaleItem >------- ItemDescription
class SaleItem contains this association:
Code:
@ManyToOne
@JoinColumn(name="description_id", insertable=false, updatable=false, nullable=false)
public ItemDescription getDescription() {
return description;
}
@ManyToOne
@JoinColumn(name="sale_id", insertable=false, updatable=false, nullable=false)
public Sale getSale() {
return sale;
}
for class Sale:
Code:
@OneToMany(cascade=CascadeType.ALL)
@JoinColumn(name="sale_id", nullable=false)
@org.hibernate.annotations.IndexColumn(name="sposition")
@org.hibernate.annotations.Cascade(org.hibernate.annotations.CascadeType.DELETE_ORPHAN)
public List<SaleItem> getSaleItems() {
return saleItems;
}
for class ItemDescription:
Code:
@OneToMany(cascade=CascadeType.ALL)
@JoinColumn(name="description_id", nullable=false)
@org.hibernate.annotations.IndexColumn(name="idposition")
@org.hibernate.annotations.Cascade(org.hibernate.annotations.CascadeType.DELETE_ORPHAN)
public List<SaleItem> getSaleItems() {
return saleItems;
}
When I tried to execute my application, it throws up the error:
Code:
Caused by: org.hibernate.MappingException: Duplicate property mapping of _saleItemsBackref found in com.ifvi.rims.entities.SaleItem
at org.hibernate.mapping.PersistentClass.checkPropertyDuplication(PersistentClass.java:459)
at org.hibernate.mapping.PersistentClass.validate(PersistentClass.java:449)
at org.hibernate.mapping.RootClass.validate(RootClass.java:192)
at org.hibernate.cfg.Configuration.validate(Configuration.java:1121)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1306)
at org.hibernate.cfg.AnnotationConfiguration.buildSessionFactory(AnnotationConfiguration.java:867)
at org.springframework.orm.hibernate3.LocalSessionFactoryBean.newSessionFactory(LocalSessionFactoryBean.java:814)
at org.springframework.orm.hibernate3.LocalSessionFactoryBean.buildSessionFactory(LocalSessionFactoryBean.java:732)
at org.springframework.orm.hibernate3.AbstractSessionFactoryBean.afterPropertiesSet(AbstractSessionFactoryBean.java:211)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1369)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1335)
... 37 more
Im stuck with this problem. Please help me to solve this problem!. Thank you very much!