[hibernate-issues] [Hibernate-JIRA] Created: (HHH-7213) Hibernate throws a "MappingException: Repeated column in mapping for collection" on order columns also being a foreign key/relationship column

Karsten Wutzke (JIRA) noreply at atlassian.com
Mon Apr 2 22:09:48 EDT 2012


Hibernate throws a "MappingException: Repeated column in mapping for collection" on order columns also being a foreign key/relationship column
----------------------------------------------------------------------------------------------------------------------------------------------

                 Key: HHH-7213
                 URL: https://hibernate.onjira.com/browse/HHH-7213
             Project: Hibernate ORM
          Issue Type: Bug
    Affects Versions: 4.1.1
            Reporter: Karsten Wutzke


I'm using an order column for an @OrderColumn which is also part of a foreign key like:

{code}@ManyToMany
@JoinTable(name = "GroupLinks", joinColumns = {@JoinColumn(name = "parent_round_id", referencedColumnName = "round_id"), @JoinColumn(name = "parent_ordinal_nbr", referencedColumnName = "ordinal_nbr")}, inverseJoinColumns = {@JoinColumn(name = "child_round_id", referencedColumnName = "round_id"), @JoinColumn(name = "child_ordinal_nbr", referencedColumnName = "ordinal_nbr")})
@OrderColumn(name = "child_ordinal_nbr")
private List<Group> children;{code}

As you can see the order column "child_ordinal_nbr" is also an FK (and PK) in the join table. However, this fails with a mapping exception:

{code}Caused by: org.hibernate.MappingException: Repeated column in mapping for collection: com.kawoolutions.bbstats.model.Group.parents column: parent_ordinal_nbr
    at org.hibernate.mapping.Collection.checkColumnDuplication(Collection.java:340)
    at org.hibernate.mapping.Collection.checkColumnDuplication(Collection.java:363)
    at org.hibernate.mapping.Collection.validate(Collection.java:320)
    at org.hibernate.mapping.IndexedCollection.validate(IndexedCollection.java:89)
    at org.hibernate.cfg.Configuration.validate(Configuration.java:1291)
    at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1729)
    at org.hibernate.ejb.EntityManagerFactoryImpl.<init>(EntityManagerFactoryImpl.java:84)
    at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:904)
    ... 9 more{code} 

IMO there's no reason to assume the order column is not a foreign key column, too.

I've posted an extensive example over at stackoverflow.com:
http://stackoverflow.com/questions/9957247/is-manytomanymappedby-ordercolumn-supported-by-the-jpa

While the JPA spec is silent about this behavior there's no reason why the depicted scenario shouldn't be working.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the hibernate-issues mailing list