Return-Path: Delivered-To: apmail-incubator-open-jpa-dev-archive@locus.apache.org Received: (qmail 45314 invoked from network); 11 Sep 2006 15:21:05 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur.apache.org with SMTP; 11 Sep 2006 15:21:05 -0000 Received: (qmail 259 invoked by uid 500); 11 Sep 2006 15:21:05 -0000 Delivered-To: apmail-incubator-open-jpa-dev-archive@incubator.apache.org Received: (qmail 226 invoked by uid 500); 11 Sep 2006 15:21:04 -0000 Mailing-List: contact open-jpa-dev-help@incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: open-jpa-dev@incubator.apache.org Delivered-To: mailing list open-jpa-dev@incubator.apache.org Received: (qmail 216 invoked by uid 99); 11 Sep 2006 15:21:04 -0000 Received: from asf.osuosl.org (HELO asf.osuosl.org) (140.211.166.49) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 11 Sep 2006 08:21:04 -0700 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests= X-Spam-Check-By: apache.org Received: from [209.237.227.198] (HELO brutus.apache.org) (209.237.227.198) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 11 Sep 2006 08:21:03 -0700 Received: from brutus (localhost [127.0.0.1]) by brutus.apache.org (Postfix) with ESMTP id B945941000E for ; Mon, 11 Sep 2006 15:17:23 +0000 (GMT) Message-ID: <32797959.1157987843735.JavaMail.jira@brutus> Date: Mon, 11 Sep 2006 08:17:23 -0700 (PDT) From: "Thomas Risberg (JIRA)" To: open-jpa-dev@incubator.apache.org Subject: [jira] Commented: (OPENJPA-42) Simple orm.xml file causes exception (NPE) In-Reply-To: <23850047.1157668102684.JavaMail.jira@brutus> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Virus-Checked: Checked by ClamAV on apache.org X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N [ http://issues.apache.org/jira/browse/OPENJPA-42?page=3Dcomments#actio= n_12433877 ]=20 =20 Thomas Risberg commented on OPENJPA-42: --------------------------------------- You are right about the - got to read the spec more ca= refully :) I have been testing the recent MVN version 442043. I can run without an or= m.xml file included but as soon as I include some additional mappings in an= orm.xml file I get errors. Here is some recent output: This is the command I use to execute: java -javaagent:./lib/openjpa-kernel-5-0.9.0-incubating-SNAPSHOT.jar -Dfile= .encoding=3DMacRoman -classpath ./classes:./lib/openjpa-jdbc-0.9.0-incubati= ng-SNAPSHOT.jar:./lib/openjpa-persistence-0.9.0-incubating-SNAPSHOT.jar:./l= ib/openjpa-lib-0.9.0-incubating-SNAPSHOT.jar:./lib/openjpa-kernel-5-0.9.0-i= ncubating-SNAPSHOT.jar:./lib/commons-collections-3.2.jar:./lib/geronimo-jta= _1.0.1B_spec-1.0.1.jar:./lib/geronimo-j2ee-connector_1.5_spec-1.0.1.jar:./l= ib/commons-pool-1.3.jar:./lib/serp-1.11.0.jar:./lib/hsqldb.jar:./lib/persis= tence-api-1.0.jar:./lib/commons-logging-1.0.4.jar:./lib/commons-dbcp-1.2.1.= jar:./lib/openjpa-persistence-jdbc-0.9.0-incubating-SNAPSHOT.jar:./lib/comm= ons-lang-2.1.jar:./lib/openjpa-kernel-0.9.0-incubating-SNAPSHOT.jar:./lib/o= penjpa-jdbc-5-0.9.0-incubating-SNAPSHOT.jar springdeveloper.TestApp persistence.xml: =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D org.apache.openjpa.persistence.PersistenceProviderImpl orm.xml: =3D=3D=3D=3D=3D=3D=3D=3D springdeveloper.domain run: =3D=3D=3D=3D 739 INFO [main] openjpa.MetaData - Found 2 classes with metadata in 17 m= illiseconds. TestApp! 364 INFO [main] openjpa.Runtime - Starting OpenJPA 0.9.0-incubating-SNAP= SHOT 2353 INFO [main] openjpa.MetaData - Parsing resource "file:/Users/trisbe= rg/Projects/plainJpa/classes/META-INF/orm.xml". 2787 INFO [main] openjpa.MetaData - Parsing class "springdeveloper.domai= n.Client". 2874 WARN [main] openjpa.Enhance - An exception was thrown while attempt= ing to perform class file transformation on "springdeveloper/domain/Manager= ": java.lang.ClassCircularityError: springdeveloper/domain/Manager at java.lang.Class.getDeclaredFields0(Native Method) at java.lang.Class.privateGetDeclaredFields(Class.java:2232) at java.lang.Class.getDeclaredFields(Class.java:1715) at org.apache.openjpa.meta.AbstractMetaDataDefaults.populateFromRef= lection(AbstractMetaDataDefaults.java:176) at org.apache.openjpa.meta.AbstractMetaDataDefaults.populate(Abstra= ctMetaDataDefaults.java:128) at org.apache.openjpa.persistence.PersistenceMetaDataDefaults.popul= ate(PersistenceMetaDataDefaults.java:182) at org.apache.openjpa.meta.MetaDataRepository.addMetaData(MetaDataR= epository.java:736) at org.apache.openjpa.persistence.XMLPersistenceMetaDataParser.star= tClass(XMLPersistenceMetaDataParser.java:720) at org.apache.openjpa.lib.meta.CFMetaDataParser.startElement(CFMeta= DataParser.java:101) at org.apache.openjpa.lib.meta.XMLMetaDataParser.startElement(XMLMe= taDataParser.java:427) at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.sta= rtElement(AbstractSAXParser.java:533) at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.st= artElement(XMLSchemaValidator.java:708) at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl= .scanStartElement(XMLNSDocumentScannerImpl.java:330) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScann= erImpl$FragmentContentDispatcher.dispatch(XMLDocumentFragmentScannerImpl.ja= va:1693) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScann= erImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:368) at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.pa= rse(XML11Configuration.java:834) at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.pa= rse(XML11Configuration.java:764) at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLPa= rser.java:148) at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.par= se(AbstractSAXParser.java:1242) at javax.xml.parsers.SAXParser.parse(SAXParser.java:375) at org.apache.openjpa.lib.meta.XMLMetaDataParser.parseNewResource(X= MLMetaDataParser.java:371) at org.apache.openjpa.lib.meta.XMLMetaDataParser.parse(XMLMetaDataP= arser.java:312) at org.apache.openjpa.lib.meta.XMLMetaDataParser.parse(XMLMetaDataP= arser.java:289) at org.apache.openjpa.lib.meta.XMLMetaDataParser.parse(XMLMetaDataP= arser.java:263) at org.apache.openjpa.persistence.PersistenceMetaDataFactory.parseX= ML(PersistenceMetaDataFactory.java:237) at org.apache.openjpa.persistence.PersistenceMetaDataFactory.load(P= ersistenceMetaDataFactory.java:188) at org.apache.openjpa.meta.MetaDataRepository.getMetaDataInternal(M= etaDataRepository.java:432) at org.apache.openjpa.meta.MetaDataRepository.getMetaData(MetaDataR= epository.java:287) at org.apache.openjpa.enhance.PCEnhancer.(PCEnhancer.java:164= ) at org.apache.openjpa.enhance.PCClassFileTransformer.transform(PCCl= assFileTransformer.java:115) at sun.instrument.TransformerManager.transform(TransformerManager.j= ava:122) at sun.instrument.InstrumentationImpl.transform(InstrumentationImpl= .java:155) at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:620) at java.security.SecureClassLoader.defineClass(SecureClassLoader.ja= va:124) at java.net.URLClassLoader.defineClass(URLClassLoader.java:260) at java.net.URLClassLoader.access$100(URLClassLoader.java:56) at java.net.URLClassLoader$1.run(URLClassLoader.java:195) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:188) at java.lang.ClassLoader.loadClass(ClassLoader.java:306) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:268) at java.lang.ClassLoader.loadClass(ClassLoader.java:251) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:242) at org.apache.openjpa.meta.MetaDataRepository.classForName(MetaData= Repository.java:1156) at org.apache.openjpa.meta.MetaDataRepository.loadPersistentTypes(M= etaDataRepository.java:1144) at org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.synchronizeMapp= ings(JDBCBrokerFactory.java:144) at org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.newBrokerImpl(J= DBCBrokerFactory.java:126) at org.apache.openjpa.kernel.AbstractBrokerFactory.newBroker(Abstra= ctBrokerFactory.java:164) at org.apache.openjpa.kernel.DelegatingBrokerFactory.newBroker(Dele= gatingBrokerFactory.java:139) at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEn= tityManager(EntityManagerFactoryImpl.java:171) at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEn= tityManager(EntityManagerFactoryImpl.java:124) at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEn= tityManager(EntityManagerFactoryImpl.java:50) at springdeveloper.TestApp.run(TestApp.java:48) at springdeveloper.TestApp.main(TestApp.java:22) 3663 TRACE [main] openjpa.jdbc.SQL - [0 ms] ex= ecuting prepstmnt 9136910 SELECT SEQUENCE_SCHEMA, SEQUENCE_NAME FROM INFORM= ATION_SCHEMA.SYSTEM_SEQUENCES 3784 TRACE [main] openjpa.jdbc.SQL - [5 ms] exe= cuting stmnt 4450231 CREATE TABLE Client (id BIGINT NOT NULL, description V= ARCHAR(255), version INTEGER, manager_id BIGINT, PRIMARY KEY (id)) 3788 TRACE [main] openjpa.jdbc.SQL - [1 ms] exe= cuting stmnt 9974682 CREATE TABLE Manager (id BIGINT NOT NULL, DESCR VARCHA= R(255), PRIMARY KEY (id)) 3799 TRACE [main] openjpa.jdbc.SQL - [7 ms] exe= cuting stmnt 14712126 CREATE INDEX I_CLIENT_MANAGER ON Client (manager_id) EM Open? true Exception in thread "main" <4|true|0.9.0-incubating-SNAPSHOT> org.apache.op= enjpa.persistence.ArgumentException: Could not locate metadata for the clas= s using alias "Manager". Registered alias mappings: "{Manager=3Dnull}" at org.apache.openjpa.meta.MetaDataRepository.getMetaData(MetaDataR= epository.java:361) at org.apache.openjpa.kernel.jpql.JPQLExpressionBuilder.getClassMet= aData(JPQLExpressionBuilder.java:166) at org.apache.openjpa.kernel.jpql.JPQLExpressionBuilder.resolveClas= sMetaData(JPQLExpressionBuilder.java:144) at org.apache.openjpa.kernel.jpql.JPQLExpressionBuilder.getCandidat= eMetaData(JPQLExpressionBuilder.java:213) at org.apache.openjpa.kernel.jpql.JPQLExpressionBuilder.getCandidat= eMetaData(JPQLExpressionBuilder.java:183) at org.apache.openjpa.kernel.jpql.JPQLExpressionBuilder.getCandidat= eType(JPQLExpressionBuilder.java:176) at org.apache.openjpa.kernel.jpql.JPQLExpressionBuilder.access$500(= JPQLExpressionBuilder.java:63) at org.apache.openjpa.kernel.jpql.JPQLExpressionBuilder$ParsedJPQL.= populate(JPQLExpressionBuilder.java:1666) at org.apache.openjpa.kernel.jpql.JPQLParser.populate(JPQLParser.ja= va:52) at org.apache.openjpa.kernel.ExpressionStoreQuery.populateFromCompi= lation(ExpressionStoreQuery.java:145) at org.apache.openjpa.kernel.QueryImpl.newCompilation(QueryImpl.jav= a:599) at org.apache.openjpa.kernel.QueryImpl.compileForCompilation(QueryI= mpl.java:581) at org.apache.openjpa.kernel.QueryImpl.compileForExecutor(QueryImpl= .java:608) at org.apache.openjpa.kernel.QueryImpl.getOperation(QueryImpl.java:= 1421) at org.apache.openjpa.kernel.DelegatingQuery.getOperation(Delegatin= gQuery.java:120) at org.apache.openjpa.persistence.QueryImpl.execute(QueryImpl.java:= 205) at org.apache.openjpa.persistence.QueryImpl.getResultList(QueryImpl= .java:254) at springdeveloper.MyTest.runQuery(MyTest.java:13) at springdeveloper.TestApp.run(TestApp.java:53) at springdeveloper.TestApp.main(TestApp.java:22) samoa:~/Projects/plainJpa trisberg$=20 > Simple orm.xml file causes exception (NPE) > ------------------------------------------ > > Key: OPENJPA-42 > URL: http://issues.apache.org/jira/browse/OPENJPA-42 > Project: OpenJPA > Issue Type: Bug > Environment: Mac OS X > Java 5 SE > Resource Local > OpenJPA build from SVN rev. 441247 > Reporter: Thomas Risberg > Attachments: plainJpa.zip > > > This simple orm.xml file causes a NPE -=20 > > xmlns:xsi=3D"http://www.w3.org/2001/XMLSchema-instance" > xsi:schemaLocation=3D"http://java.sun.com/xml/ns/persistence/orm http= ://java.sun.com/xml/ns/persistence/orm_1_0.xsd" > version=3D"1.0"> > springdeveloper.domain > <= /entity> > > > > > > > I have attached a test case - plainJpa.zip > Same code runs fine with the RI. > This is the output from my run: > /System/Library/Frameworks/JavaVM.framework/Versions/1.5/Home/bin/java -D= file.encoding=3DMacRoman -classpath /System/Library/Frameworks/JavaVM.frame= work/Versions/1.5.0/Home/lib/deploy.jar:/System/Library/Frameworks/JavaVM.f= ramework/Versions/1.5.0/Classes/dt.jar:/System/Library/Frameworks/JavaVM.fr= amework/Versions/1.5.0/Classes/jce.jar:/System/Library/Frameworks/JavaVM.fr= amework/Versions/1.5.0/Home/lib/plugin.jar:/System/Library/Frameworks/JavaV= M.framework/Versions/1.5.0/Home/lib/sa-jdi.jar:/System/Library/Frameworks/J= avaVM.framework/Versions/1.5.0/Classes/charsets.jar:/System/Library/Framewo= rks/JavaVM.framework/Versions/1.5.0/Classes/classes.jar:/System/Library/Fra= meworks/JavaVM.framework/Versions/1.5.0/Classes/jconsole.jar:/System/Librar= y/Frameworks/JavaVM.framework/Versions/1.5.0/Classes/jsse.jar:/System/Libra= ry/Frameworks/JavaVM.framework/Versions/1.5.0/Classes/laf.jar:/System/Libra= ry/Frameworks/JavaVM.framework/Versions/1.5.0/Classes/ui.jar:/System/Librar= y/Frameworks/JavaVM.framework/Versions/1.5.0/Home/lib/ext/apple_provider.ja= r:/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Home/lib/ext/d= nsns.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Home/li= b/ext/localedata.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1= .5.0/Home/lib/ext/sunjce_provider.jar:/System/Library/Frameworks/JavaVM.fra= mework/Versions/1.5.0/Home/lib/ext/sunpkcs11.jar:/Users/trisberg/Projects/p= lainJpa/classes:/Users/trisberg/Projects/plainJpa/lib/openjpa-jdbc-0.9.0-in= cubating-SNAPSHOT.jar:/Users/trisberg/Projects/plainJpa/lib/openjpa-persist= ence-0.9.0-incubating-SNAPSHOT.jar:/Users/trisberg/Projects/plainJpa/lib/op= enjpa-lib-0.9.0-incubating-SNAPSHOT.jar:/Users/trisberg/Projects/plainJpa/l= ib/openjpa-kernel-5-0.9.0-incubating-SNAPSHOT.jar:/Users/trisberg/Projects/= plainJpa/lib/commons-collections-3.2.jar:/Users/trisberg/Projects/plainJpa/= lib/geronimo-jta_1.0.1B_spec-1.0.1.jar:/Users/trisberg/Projects/plainJpa/li= b/geronimo-j2ee-connector_1.5_spec-1.0.1.jar:/Users/trisberg/Projects/plain= Jpa/lib/commons-pool-1.3.jar:/Users/trisberg/Projects/plainJpa/lib/serp-1.1= 1.0.jar:/Users/trisberg/Projects/plainJpa/lib/hsqldb.jar:/Users/trisberg/Pr= ojects/plainJpa/lib/persistence-api-1.0.jar:/Users/trisberg/Projects/plainJ= pa/lib/commons-logging-1.0.4.jar:/Users/trisberg/Projects/plainJpa/lib/comm= ons-dbcp-1.2.1.jar:/Users/trisberg/Projects/plainJpa/lib/openjpa-persistenc= e-jdbc-0.9.0-incubating-SNAPSHOT.jar:/Users/trisberg/Projects/plainJpa/lib/= commons-lang-2.1.jar:/Users/trisberg/Projects/plainJpa/lib/openjpa-kernel-0= .9.0-incubating-SNAPSHOT.jar:/Users/trisberg/Projects/plainJpa/lib/openjpa-= jdbc-5-0.9.0-incubating-SNAPSHOT.jar springdeveloper.TestApp > OPenJPAVersion: > OpenJPA 0.9.0-incubating-SNAPSHOT > version id: 0.9.0-incubating-SNAPSHOT-r0 > revision: 0 > os.name: Mac OS X > os.version: 10.4.7 > os.arch: ppc > java.version: 1.5.0_06 > java.vendor: Apple Computer, Inc. > java.class.path: > =09/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Home/lib/de= ploy.jar > =09/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Classes/dt.= jar > =09/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Classes/jce= .jar > =09/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Home/lib/pl= ugin.jar > =09/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Home/lib/sa= -jdi.jar > =09/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Classes/cha= rsets.jar > =09/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Classes/cla= sses.jar > =09/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Classes/jco= nsole.jar > =09/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Classes/jss= e.jar > =09/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Classes/laf= .jar > =09/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Classes/ui.= jar > =09/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Home/lib/ex= t/apple_provider.jar > =09/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Home/lib/ex= t/dnsns.jar > =09/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Home/lib/ex= t/localedata.jar > =09/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Home/lib/ex= t/sunjce_provider.jar > =09/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Home/lib/ex= t/sunpkcs11.jar > =09/Users/trisberg/Projects/plainJpa/classes > =09/Users/trisberg/Projects/plainJpa/lib/openjpa-jdbc-0.9.0-incubating-SN= APSHOT.jar > =09/Users/trisberg/Projects/plainJpa/lib/openjpa-persistence-0.9.0-incuba= ting-SNAPSHOT.jar > =09/Users/trisberg/Projects/plainJpa/lib/openjpa-lib-0.9.0-incubating-SNA= PSHOT.jar > =09/Users/trisberg/Projects/plainJpa/lib/openjpa-kernel-5-0.9.0-incubatin= g-SNAPSHOT.jar > =09/Users/trisberg/Projects/plainJpa/lib/commons-collections-3.2.jar > =09/Users/trisberg/Projects/plainJpa/lib/geronimo-jta_1.0.1B_spec-1.0.1.j= ar > =09/Users/trisberg/Projects/plainJpa/lib/geronimo-j2ee-connector_1.5_spec= -1.0.1.jar > =09/Users/trisberg/Projects/plainJpa/lib/commons-pool-1.3.jar > =09/Users/trisberg/Projects/plainJpa/lib/serp-1.11.0.jar > =09/Users/trisberg/Projects/plainJpa/lib/hsqldb.jar > =09/Users/trisberg/Projects/plainJpa/lib/persistence-api-1.0.jar > =09/Users/trisberg/Projects/plainJpa/lib/commons-logging-1.0.4.jar > =09/Users/trisberg/Projects/plainJpa/lib/commons-dbcp-1.2.1.jar > =09/Users/trisberg/Projects/plainJpa/lib/openjpa-persistence-jdbc-0.9.0-i= ncubating-SNAPSHOT.jar > =09/Users/trisberg/Projects/plainJpa/lib/commons-lang-2.1.jar > =09/Users/trisberg/Projects/plainJpa/lib/openjpa-kernel-0.9.0-incubating-= SNAPSHOT.jar > =09/Users/trisberg/Projects/plainJpa/lib/openjpa-jdbc-5-0.9.0-incubating-= SNAPSHOT.jar > =09/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Classes/.co= mpatibility/14compatibility.jar > user.dir: /Users/trisberg/Projects/plainJpa > TestApp! > 119 INFO [main] openjpa.Runtime - Starting OpenJPA 0.9.0-incubating-SN= APSHOT > Exception in thread "main" <0|false|0.9.0-incubating-SNAPSHOT> org.apache= .openjpa.persistence.PersistenceException: null > =09at org.apache.openjpa.kernel.AbstractBrokerFactory.newBroker(AbstractB= rokerFactory.java:183) > =09at org.apache.openjpa.kernel.DelegatingBrokerFactory.newBroker(Delegat= ingBrokerFactory.java:139) > =09at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntit= yManager(EntityManagerFactoryImpl.java:171) > =09at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntit= yManager(EntityManagerFactoryImpl.java:124) > =09at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntit= yManager(EntityManagerFactoryImpl.java:50) > =09at springdeveloper.TestApp.run(TestApp.java:53) > =09at springdeveloper.TestApp.main(TestApp.java:27) > Caused by: java.lang.NullPointerException > =09at org.apache.openjpa.meta.ClassMetaData.getSuperclassField(ClassMetaD= ata.java:820) > =09at org.apache.openjpa.meta.ClassMetaData.resolveDefinedSuperclassField= s(ClassMetaData.java:1115) > =09at org.apache.openjpa.meta.ClassMetaData.defineSuperclassFields(ClassM= etaData.java:1091) > =09at org.apache.openjpa.jdbc.meta.MappingRepository.prepareMapping(Mappi= ngRepository.java:314) > =09at org.apache.openjpa.meta.MetaDataRepository.loadMapping(MetaDataRepo= sitory.java:605) > =09at org.apache.openjpa.meta.MetaDataRepository.resolve(MetaDataReposito= ry.java:505) > =09at org.apache.openjpa.meta.MetaDataRepository.getMetaData(MetaDataRepo= sitory.java:300) > =09at org.apache.openjpa.jdbc.meta.MappingRepository.getMapping(MappingRe= pository.java:279) > =09at org.apache.openjpa.jdbc.meta.MappingTool.getMapping(MappingTool.jav= a:660) > =09at org.apache.openjpa.jdbc.meta.MappingTool.buildSchema(MappingTool.ja= va:731) > =09at org.apache.openjpa.jdbc.meta.MappingTool.run(MappingTool.java:630) > =09at org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.synchronizeMapping= s(JDBCBrokerFactory.java:160) > =09at org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.newBrokerImpl(JDBC= BrokerFactory.java:126) > =09at org.apache.openjpa.kernel.AbstractBrokerFactory.newBroker(AbstractB= rokerFactory.java:164) > =09... 6 more > Process finished with exit code 1 --=20 This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: htt= p://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira