[ https://issues.apache.org/jira/browse/OPENJPA-692?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Pinaki Poddar resolved OPENJPA-692. ----------------------------------- Resolution: Fixed > Bi-directional One-to-Many mapping with a JoinTable fails for Update or Delete operation > ---------------------------------------------------------------------------------------- > > Key: OPENJPA-692 > URL: https://issues.apache.org/jira/browse/OPENJPA-692 > Project: OpenJPA > Issue Type: Bug > Reporter: Pinaki Poddar > Assignee: Pinaki Poddar > Fix For: 1.3.0 > > > Originally reported in user group message [1] by Frank Schwarz > If > a) Entities A and B that are related in a one-to-many and many-to-one bi-directional relation (typical Parent-Child pattern) > b) mapped using a JoinTable instead of conventional mappedBy > then > update/delete operation fails with OptimisticException (which itself is a catch-all and sometimes misleading). > Typical mapping that encounters this error: > public class Person { > @Id > private long ssn; > > @OneToMany(cascade=CascadeType.ALL) > @JoinTable(name="J_PERSON_ADDRESSES", > joinColumns = @JoinColumn(name="PERSON_SSN", referencedColumnName="SSN"), > inverseJoinColumns = @JoinColumn(name="ADDRESS_PHONE", referencedColumnName="PHONE")) > private Set
addresses = new HashSet
(); > public class Address { > @Id > private String phone; > > @ManyToOne > @JoinColumn(table="J_PERSON_ADDRESSES", referencedColumnName="SSN") > private Person person; > [1] http://n2.nabble.com/bidirectional-one-to-many-relationship-with-join-table-tc678479.html -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.