• Post Reply Bookmark Topic Watch Topic
  • New Topic

How to map a class that has an object that is defined as @Embeddable  RSS feed

Wesley Gibbs
Posts: 2
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I have a class called Organization. This Organization class has 4 fields that are of type EPhoneEntry. This EPhoneEntry class has an annotation above the class declaration of @Embeddable. Anyone have an example of how to create the hbm.XML mapping file for a class similar to my organization class? My problem is when I run a piece of HQL within the "HQL Console" in the "IntelliJ IDEA" IDE it returns this error:

hql> from AdminValue
java.lang.RuntimeException: org.hibernate.MappingException: Repeated column in mapping for entity: com.bah.englink.ejb.Organization column: phoneType_ID (should be mapped with insert="false" update="false")
at org.hibernate.mapping.PersistentClass.checkColumnDuplication(PersistentClass.java:652)
at org.hibernate.mapping.PersistentClass.checkPropertyColumnDuplication(PersistentClass.java:674)
at org.hibernate.mapping.PersistentClass.checkPropertyColumnDuplication(PersistentClass.java:670)
at org.hibernate.mapping.PersistentClass.checkColumnDuplication(PersistentClass.java:696)
at org.hibernate.mapping.PersistentClass.validate(PersistentClass.java:450)
at org.hibernate.mapping.RootClass.validate(RootClass.java:192)
at org.hibernate.cfg.Configuration.validate(Configuration.java:1108)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1293)
at org.hibernate.cfg.AnnotationConfiguration.buildSessionFactory(AnnotationConfiguration.java:867)

neither the Organization or the EPhoneEntry class contain a field (phoneType_ID) that is mentioned in the above error but I'm quessing that this problem stems from me mapping the Organization class wrong. I mapped the Organization class as follows in my "" files:

and this is the EPhoneEntry class:
It is sorta covered in the JavaRanch Style Guide.
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!