TECHNOLOGY: openJPA(ORM)
ISSUE:
I have a (one to many relationship)jo in between two entities. When I try to fetch the entities, it's throwing an error "It is not managed by a mapping that supports joins." What do I need to change for this program to work?
I am running the program using POJO java program and not on any appserver. Do i need to put my entities on appserver to join them?
EXCEPTION:
Exception in thread "main" <openjpa-2.0.0-r422266:935683 fatal user error> org.apache.open jpa.persistence .ArgumentExcept ion: You cannot join on column "taccount_new.a ccount_cd". It is not managed by a mapping that supports joins.
at org.apache.open jpa.jdbc.meta.C lassMapping.ass ertJoinable(Cla ssMapping.java: 283)
at org.apache.open jpa.jdbc.meta.C lassMapping.isF oreignKeyObject Id(ClassMapping .java:347)
at org.apache.open jpa.jdbc.meta.s trats.RelationF ieldStrategy.in itialize(Relati onFieldStrategy .java:264)
at org.apache.open jpa.jdbc.meta.F ieldMapping.ini tializeMapping( FieldMapping.ja va:545)
at org.apache.open jpa.jdbc.meta.F ieldMapping.res olve(FieldMappi ng.java:463)
at org.apache.open jpa.jdbc.meta.C lassMapping.ini tializeMapping( ClassMapping.ja va:905)
at org.apache.open jpa.meta.ClassM etaData.resolve (ClassMetaData. java:1796)
at org.apache.open jpa.meta.MetaDa taRepository.re solveMapping(Me taDataRepositor y.java:760)
at org.apache.open jpa.meta.MetaDa taRepository.re solve(MetaDataR epository.java: 631)
at org.apache.open jpa.meta.MetaDa taRepository.ge tMetaDataIntern al(MetaDataRepo sitory.java:385 )
at org.apache.open jpa.meta.MetaDa taRepository.ge tMetaData(MetaD ataRepository.j ava:358)
at org.apache.open jpa.meta.MetaDa taRepository.ge tMetaData(MetaD ataRepository.j ava:439)
at org.apache.open jpa.kernel.jpql .JPQLExpression Builder.getClas sMetaData(JPQLE xpressionBuilde r.java:176)
at org.apache.open jpa.kernel.jpql .JPQLExpression Builder.resolve ClassMetaData(J PQLExpressionBu ilder.java:152)
at org.apache.open jpa.kernel.jpql .JPQLExpression Builder.getCand idateMetaData(J PQLExpressionBu ilder.java:242)
at org.apache.open jpa.kernel.jpql .JPQLExpression Builder.getCand idateMetaData(J PQLExpressionBu ilder.java:212)
at org.apache.open jpa.kernel.jpql .JPQLExpression Builder.getCand idateType(JPQLE xpressionBuilde r.java:205)
at org.apache.open jpa.kernel.jpql .JPQLExpression Builder.access$ 200(JPQLExpress ionBuilder.java :81)
at org.apache.open jpa.kernel.jpql .JPQLExpression Builder$ParsedJ PQL.populate(JP QLExpressionBui lder.java:2387)
at org.apache.open jpa.kernel.jpql .JPQLParser.pop ulate(JPQLParse r.java:61)
at org.apache.open jpa.kernel.Expr essionStoreQuer y.populateFromC ompilation(Expr essionStoreQuer y.java:154)
at org.apache.open jpa.kernel.Quer yImpl.newCompil ation(QueryImpl .java:671)
at org.apache.open jpa.kernel.Quer yImpl.compilati onFromCache(Que ryImpl.java:652 )
at org.apache.open jpa.kernel.Quer yImpl.compileFo rCompilation(Qu eryImpl.java:61 8)
at org.apache.open jpa.kernel.Quer yImpl.compileFo rExecutor(Query Impl.java:680)
at org.apache.open jpa.kernel.Quer yImpl.compile(Q ueryImpl.java:5 87)
at org.apache.open jpa.persistence .EntityManagerI mpl.createQuery (EntityManagerI mpl.java:985)
at org.apache.open jpa.persistence .EntityManagerI mpl.createQuery (EntityManagerI mpl.java:971)
at org.apache.open jpa.persistence .EntityManagerI mpl.createQuery (EntityManagerI mpl.java:100)
at com.rbc.boa.Ent ityBroker.getAl lParty(EntityBr oker.java:51)
at com.rbc.boa.JPA Main.party(JPAM ain.java:49)
at com.rbc.boa.JPA Main.main(JPAMa in.java:20)
ISSUE:
I have a (one to many relationship)jo in between two entities. When I try to fetch the entities, it's throwing an error "It is not managed by a mapping that supports joins." What do I need to change for this program to work?
I am running the program using POJO java program and not on any appserver. Do i need to put my entities on appserver to join them?
EXCEPTION:
Exception in thread "main" <openjpa-2.0.0-r422266:935683 fatal user error> org.apache.open jpa.persistence .ArgumentExcept ion: You cannot join on column "taccount_new.a ccount_cd". It is not managed by a mapping that supports joins.
at org.apache.open jpa.jdbc.meta.C lassMapping.ass ertJoinable(Cla ssMapping.java: 283)
at org.apache.open jpa.jdbc.meta.C lassMapping.isF oreignKeyObject Id(ClassMapping .java:347)
at org.apache.open jpa.jdbc.meta.s trats.RelationF ieldStrategy.in itialize(Relati onFieldStrategy .java:264)
at org.apache.open jpa.jdbc.meta.F ieldMapping.ini tializeMapping( FieldMapping.ja va:545)
at org.apache.open jpa.jdbc.meta.F ieldMapping.res olve(FieldMappi ng.java:463)
at org.apache.open jpa.jdbc.meta.C lassMapping.ini tializeMapping( ClassMapping.ja va:905)
at org.apache.open jpa.meta.ClassM etaData.resolve (ClassMetaData. java:1796)
at org.apache.open jpa.meta.MetaDa taRepository.re solveMapping(Me taDataRepositor y.java:760)
at org.apache.open jpa.meta.MetaDa taRepository.re solve(MetaDataR epository.java: 631)
at org.apache.open jpa.meta.MetaDa taRepository.ge tMetaDataIntern al(MetaDataRepo sitory.java:385 )
at org.apache.open jpa.meta.MetaDa taRepository.ge tMetaData(MetaD ataRepository.j ava:358)
at org.apache.open jpa.meta.MetaDa taRepository.ge tMetaData(MetaD ataRepository.j ava:439)
at org.apache.open jpa.kernel.jpql .JPQLExpression Builder.getClas sMetaData(JPQLE xpressionBuilde r.java:176)
at org.apache.open jpa.kernel.jpql .JPQLExpression Builder.resolve ClassMetaData(J PQLExpressionBu ilder.java:152)
at org.apache.open jpa.kernel.jpql .JPQLExpression Builder.getCand idateMetaData(J PQLExpressionBu ilder.java:242)
at org.apache.open jpa.kernel.jpql .JPQLExpression Builder.getCand idateMetaData(J PQLExpressionBu ilder.java:212)
at org.apache.open jpa.kernel.jpql .JPQLExpression Builder.getCand idateType(JPQLE xpressionBuilde r.java:205)
at org.apache.open jpa.kernel.jpql .JPQLExpression Builder.access$ 200(JPQLExpress ionBuilder.java :81)
at org.apache.open jpa.kernel.jpql .JPQLExpression Builder$ParsedJ PQL.populate(JP QLExpressionBui lder.java:2387)
at org.apache.open jpa.kernel.jpql .JPQLParser.pop ulate(JPQLParse r.java:61)
at org.apache.open jpa.kernel.Expr essionStoreQuer y.populateFromC ompilation(Expr essionStoreQuer y.java:154)
at org.apache.open jpa.kernel.Quer yImpl.newCompil ation(QueryImpl .java:671)
at org.apache.open jpa.kernel.Quer yImpl.compilati onFromCache(Que ryImpl.java:652 )
at org.apache.open jpa.kernel.Quer yImpl.compileFo rCompilation(Qu eryImpl.java:61 8)
at org.apache.open jpa.kernel.Quer yImpl.compileFo rExecutor(Query Impl.java:680)
at org.apache.open jpa.kernel.Quer yImpl.compile(Q ueryImpl.java:5 87)
at org.apache.open jpa.persistence .EntityManagerI mpl.createQuery (EntityManagerI mpl.java:985)
at org.apache.open jpa.persistence .EntityManagerI mpl.createQuery (EntityManagerI mpl.java:971)
at org.apache.open jpa.persistence .EntityManagerI mpl.createQuery (EntityManagerI mpl.java:100)
at com.rbc.boa.Ent ityBroker.getAl lParty(EntityBr oker.java:51)
at com.rbc.boa.JPA Main.party(JPAM ain.java:49)
at com.rbc.boa.JPA Main.main(JPAMa in.java:20)