I have tried OpenJPA 2.1 hope for better luck. 

how could this happen? I do have a colunmn "UID" in test.A, just that it is
not the Primary Key. Is this intended or a bug? 


class A

@Entity
@Table(name = "A")
@SecondaryTable(name = "B", pkJoinColumns = { @PrimaryKeyJoinColumn(name =
"PUID", referencedColumnName = "UID") })
public class A implements Serializable {

        /**
         * 
         */
        private static final long serialVersionUID = -422971967901446019L;

        @Id
        @Column(name = "ID")
        private String id;
        @Basic(optional = true)
        @GeneratedValue(strategy = GenerationType.IDENTITY)
        @Column(name = "UID", unique = true)
        private Integer uid;
        @Basic(optional = true)
        @Column(name = "DATA")
        private String data;
        @Basic(optional = true)
        @Column(table = "B", name = "AUXDATA")
        private String auxdata;

        public A() {

        }

        public A(String id) {
                this.id = id;
        }

        public String getId() {
                return id;
        }

        public void setId(String id) {
                this.id = id;
        }

        public Integer getUid() {
                return uid;
        }

        public void setUid(Integer uid) {
                this.uid = uid;
        }

        public String getData() {
                return data;
        }

        public void setData(String data) {
                this.data = data;
        }

        public String getAuxdata() {
                return auxdata;
        }

        public void setAuxdata(String auxdata) {
                this.auxdata = auxdata;
        }

}

375  TestPersistence  INFO   [main] openjpa.jdbc.JDBC - Using dictionary
class "org.apache.openjpa.jdbc.sql.DB2Dictionary".
Exception in thread "main" <openjpa-2.1.0-r422266:1071316 fatal user error>
org.apache.openjpa.persistence.ArgumentException:
"com.ibm.taiss.jpa.test.A.auxdata" defines a target of "UID" for join column
"PUID", but that target does not exist in table "test.A".
        at
org.apache.openjpa.jdbc.meta.MappingInfo.mergeJoinColumn(MappingInfo.java:1533)
        at
org.apache.openjpa.jdbc.meta.MappingInfo.createJoins(MappingInfo.java:1322)
        at
org.apache.openjpa.jdbc.meta.MappingInfo.createForeignKey(MappingInfo.java:1084)
        at
org.apache.openjpa.jdbc.meta.FieldMappingInfo.getJoin(FieldMappingInfo.java:213)
        at
org.apache.openjpa.jdbc.meta.FieldMappingInfo.getJoin(FieldMappingInfo.java:182)
        at 
org.apache.openjpa.jdbc.meta.FieldMapping.mapJoin(FieldMapping.java:585)
        at
org.apache.openjpa.jdbc.meta.strats.StringFieldStrategy.map(StringFieldStrategy.java:66)
        at
org.apache.openjpa.jdbc.meta.FieldMapping.setStrategy(FieldMapping.java:146)
        at
org.apache.openjpa.jdbc.meta.RuntimeStrategyInstaller.installStrategy(RuntimeStrategyInstaller.java:82)
        at
org.apache.openjpa.jdbc.meta.FieldMapping.resolveMapping(FieldMapping.java:496)
        at 
org.apache.openjpa.jdbc.meta.FieldMapping.resolve(FieldMapping.java:461)
        at
org.apache.openjpa.jdbc.meta.ClassMapping.resolveNonRelationMappings(ClassMapping.java:895)
        at
org.apache.openjpa.jdbc.meta.MappingRepository.prepareMapping(MappingRepository.java:417)
        at
org.apache.openjpa.meta.MetaDataRepository.preMapping(MetaDataRepository.java:762)
        at
org.apache.openjpa.meta.MetaDataRepository.resolve(MetaDataRepository.java:651)
        at
org.apache.openjpa.meta.MetaDataRepository.getMetaDataInternal(MetaDataRepository.java:411)
        at
org.apache.openjpa.meta.MetaDataRepository.getMetaData(MetaDataRepository.java:384)
        at
org.apache.openjpa.kernel.BrokerImpl.persistInternal(BrokerImpl.java:2601)
        at org.apache.openjpa.kernel.BrokerImpl.persist(BrokerImpl.java:2540)
        at org.apache.openjpa.kernel.BrokerImpl.persist(BrokerImpl.java:2437)
        at
org.apache.openjpa.kernel.DelegatingBroker.persist(DelegatingBroker.java:1069)
        at
org.apache.openjpa.persistence.EntityManagerImpl.persist(EntityManagerImpl.java:707)
        at Test.main(Test.java:32)

--
View this message in context: 
http://openjpa.208410.n2.nabble.com/CacadeType-Persist-problem-tp6367387p6376539.html
Sent from the OpenJPA Users mailing list archive at Nabble.com.

Reply via email to