[ 
http://issues.apache.org/jira/browse/OPENJPA-42?page=comments#action_12434047 ] 
            
Thomas Risberg commented on OPENJPA-42:
---------------------------------------

Marc,

I did attach a test case - OPENJPA-32.zip

This is the output and mapping files - fully qualified name did not work either.

persistence.xml:
================
<?xml version="1.0" encoding="UTF-8"?>
<persistence xmlns="http://java.sun.com/xml/ns/persistence"; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
             xsi:schemaLocation="http://java.sun.com/xml/ns/persistence 
http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd"; version="1.0">

    <persistence-unit name="main" transaction-type="RESOURCE_LOCAL">

      
<provider>org.apache.openjpa.persistence.PersistenceProviderImpl</provider>

    </persistence-unit>

</persistence>

orm.xml:
========
<?xml version="1.0" encoding="UTF-8"?>

<entity-mappings xmlns="http://java.sun.com/xml/ns/persistence/orm";
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
    xsi:schemaLocation="http://java.sun.com/xml/ns/persistence/orm 
http://java.sun.com/xml/ns/persistence/orm_1_0.xsd";
    version="1.0">

  <package>springdeveloper.domain</package>

  <entity class="Client" metadata-complete="false" access="FIELD"></entity>
  <entity class="Manager" metadata-complete="false" access="FIELD">
    <attributes>
      <basic name="description">
        <column name="DESCR" length="2000"/>
      </basic>
    </attributes>
  </entity>

</entity-mappings>

run:
====
TestApp!
172  INFO   [main] openjpa.Runtime - Starting OpenJPA 0.9.0-incubating-SNAPSHOT
5019  TRACE  [main] openjpa.jdbc.SQL - <t 14360544, conn 635451> [1 ms] 
executing prepstmnt 514941 SELECT SEQUENCE_SCHEMA, SEQUENCE_NAME FROM 
INFORMATION_SCHEMA.SYSTEM_SEQUENCES
5186  TRACE  [main] openjpa.jdbc.SQL - <t 14360544, conn 5597932> [17 ms] 
executing stmnt 2898188 CREATE TABLE Client (id BIGINT NOT NULL, description 
VARCHAR(255), version INTEGER, manager_id BIGINT, PRIMARY KEY (id))
5190  TRACE  [main] openjpa.jdbc.SQL - <t 14360544, conn 4491208> [1 ms] 
executing stmnt 7717566 CREATE TABLE Manager (id BIGINT NOT NULL, DESCR 
VARCHAR(2000), PRIMARY KEY (id))
5204  TRACE  [main] openjpa.jdbc.SQL - <t 14360544, conn 9035974> [11 ms] 
executing stmnt 7059006 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.openjpa.persistence.ArgumentException: The type "class 
springdeveloper.domain.Manager" has not been enhanced.
        at 
org.apache.openjpa.meta.ClassMetaData.resolveMeta(ClassMetaData.java:1544)
        at 
org.apache.openjpa.meta.ClassMetaData.resolve(ClassMetaData.java:1518)
        at 
org.apache.openjpa.meta.MetaDataRepository.processBuffer(MetaDataRepository.java:660)
        at 
org.apache.openjpa.meta.MetaDataRepository.resolveMeta(MetaDataRepository.java:567)
        at 
org.apache.openjpa.meta.MetaDataRepository.resolve(MetaDataRepository.java:500)
        at 
org.apache.openjpa.meta.MetaDataRepository.getMetaData(MetaDataRepository.java:301)
        at 
org.apache.openjpa.kernel.jpql.JPQLExpressionBuilder.getClassMetaData(JPQLExpressionBuilder.java:164)
        at 
org.apache.openjpa.kernel.jpql.JPQLExpressionBuilder.resolveClassMetaData(JPQLExpressionBuilder.java:133)
        at 
org.apache.openjpa.kernel.jpql.JPQLExpressionBuilder.getCandidateMetaData(JPQLExpressionBuilder.java:213)
        at 
org.apache.openjpa.kernel.jpql.JPQLExpressionBuilder.getCandidateMetaData(JPQLExpressionBuilder.java:183)
        at 
org.apache.openjpa.kernel.jpql.JPQLExpressionBuilder.getCandidateType(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.java:52)
        at 
org.apache.openjpa.kernel.ExpressionStoreQuery.populateFromCompilation(ExpressionStoreQuery.java:145)
        at 
org.apache.openjpa.kernel.QueryImpl.newCompilation(QueryImpl.java:599)
        at 
org.apache.openjpa.kernel.QueryImpl.compileForCompilation(QueryImpl.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(DelegatingQuery.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)


> 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: OPENJPA-42.zip, plainJpa.zip
>
>
> This simple orm.xml file causes a NPE - 
> <?xml version="1.0" encoding="UTF-8"?>
> <entity-mappings xmlns="http://java.sun.com/xml/ns/persistence/orm";
>     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
>     xsi:schemaLocation="http://java.sun.com/xml/ns/persistence/orm 
> http://java.sun.com/xml/ns/persistence/orm_1_0.xsd";
>     version="1.0">
>   <package>springdeveloper.domain</package>
>   <entity class="Client" metadata-complete="false" access="FIELD"></entity>
>   <entity class="Manager" metadata-complete="false" access="FIELD">
>     <attribute-override name="description">
>       <column name="DESCR" length="2000"/>
>     </attribute-override>
>   </entity>
> </entity-mappings>
> 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 
> -Dfile.encoding=MacRoman -classpath 
> /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Home/lib/deploy.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Classes/dt.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Classes/jce.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Home/lib/plugin.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Home/lib/sa-jdi.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Classes/charsets.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Classes/classes.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Classes/jconsole.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Classes/jsse.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Classes/laf.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Classes/ui.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Home/lib/ext/apple_provider.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Home/lib/ext/dnsns.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Home/lib/ext/localedata.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Home/lib/ext/sunjce_provider.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Home/lib/ext/sunpkcs11.jar:/Users/trisberg/Projects/plainJpa/classes:/Users/trisberg/Projects/plainJpa/lib/openjpa-jdbc-0.9.0-incubating-SNAPSHOT.jar:/Users/trisberg/Projects/plainJpa/lib/openjpa-persistence-0.9.0-incubating-SNAPSHOT.jar:/Users/trisberg/Projects/plainJpa/lib/openjpa-lib-0.9.0-incubating-SNAPSHOT.jar:/Users/trisberg/Projects/plainJpa/lib/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/lib/geronimo-j2ee-connector_1.5_spec-1.0.1.jar:/Users/trisberg/Projects/plainJpa/lib/commons-pool-1.3.jar:/Users/trisberg/Projects/plainJpa/lib/serp-1.11.0.jar:/Users/trisberg/Projects/plainJpa/lib/hsqldb.jar:/Users/trisberg/Projects/plainJpa/lib/persistence-api-1.0.jar:/Users/trisberg/Projects/plainJpa/lib/commons-logging-1.0.4.jar:/Users/trisberg/Projects/plainJpa/lib/commons-dbcp-1.2.1.jar:/Users/trisberg/Projects/plainJpa/lib/openjpa-persistence-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:
>       
> /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Home/lib/deploy.jar
>       
> /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Classes/dt.jar
>       
> /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Classes/jce.jar
>       
> /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Home/lib/plugin.jar
>       
> /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Home/lib/sa-jdi.jar
>       
> /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Classes/charsets.jar
>       
> /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Classes/classes.jar
>       
> /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Classes/jconsole.jar
>       
> /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Classes/jsse.jar
>       
> /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Classes/laf.jar
>       
> /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Classes/ui.jar
>       
> /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Home/lib/ext/apple_provider.jar
>       
> /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Home/lib/ext/dnsns.jar
>       
> /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Home/lib/ext/localedata.jar
>       
> /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Home/lib/ext/sunjce_provider.jar
>       
> /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Home/lib/ext/sunpkcs11.jar
>       /Users/trisberg/Projects/plainJpa/classes
>       
> /Users/trisberg/Projects/plainJpa/lib/openjpa-jdbc-0.9.0-incubating-SNAPSHOT.jar
>       
> /Users/trisberg/Projects/plainJpa/lib/openjpa-persistence-0.9.0-incubating-SNAPSHOT.jar
>       
> /Users/trisberg/Projects/plainJpa/lib/openjpa-lib-0.9.0-incubating-SNAPSHOT.jar
>       
> /Users/trisberg/Projects/plainJpa/lib/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/lib/geronimo-j2ee-connector_1.5_spec-1.0.1.jar
>       /Users/trisberg/Projects/plainJpa/lib/commons-pool-1.3.jar
>       /Users/trisberg/Projects/plainJpa/lib/serp-1.11.0.jar
>       /Users/trisberg/Projects/plainJpa/lib/hsqldb.jar
>       /Users/trisberg/Projects/plainJpa/lib/persistence-api-1.0.jar
>       /Users/trisberg/Projects/plainJpa/lib/commons-logging-1.0.4.jar
>       /Users/trisberg/Projects/plainJpa/lib/commons-dbcp-1.2.1.jar
>       
> /Users/trisberg/Projects/plainJpa/lib/openjpa-persistence-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
>       
> /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Classes/.compatibility/14compatibility.jar
> user.dir: /Users/trisberg/Projects/plainJpa
> TestApp!
> 119  INFO   [main] openjpa.Runtime - Starting OpenJPA 
> 0.9.0-incubating-SNAPSHOT
> Exception in thread "main" <0|false|0.9.0-incubating-SNAPSHOT> 
> org.apache.openjpa.persistence.PersistenceException: null
>       at 
> org.apache.openjpa.kernel.AbstractBrokerFactory.newBroker(AbstractBrokerFactory.java:183)
>       at 
> org.apache.openjpa.kernel.DelegatingBrokerFactory.newBroker(DelegatingBrokerFactory.java:139)
>       at 
> org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:171)
>       at 
> org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:124)
>       at 
> org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:50)
>       at springdeveloper.TestApp.run(TestApp.java:53)
>       at springdeveloper.TestApp.main(TestApp.java:27)
> Caused by: java.lang.NullPointerException
>       at 
> org.apache.openjpa.meta.ClassMetaData.getSuperclassField(ClassMetaData.java:820)
>       at 
> org.apache.openjpa.meta.ClassMetaData.resolveDefinedSuperclassFields(ClassMetaData.java:1115)
>       at 
> org.apache.openjpa.meta.ClassMetaData.defineSuperclassFields(ClassMetaData.java:1091)
>       at 
> org.apache.openjpa.jdbc.meta.MappingRepository.prepareMapping(MappingRepository.java:314)
>       at 
> org.apache.openjpa.meta.MetaDataRepository.loadMapping(MetaDataRepository.java:605)
>       at 
> org.apache.openjpa.meta.MetaDataRepository.resolve(MetaDataRepository.java:505)
>       at 
> org.apache.openjpa.meta.MetaDataRepository.getMetaData(MetaDataRepository.java:300)
>       at 
> org.apache.openjpa.jdbc.meta.MappingRepository.getMapping(MappingRepository.java:279)
>       at 
> org.apache.openjpa.jdbc.meta.MappingTool.getMapping(MappingTool.java:660)
>       at 
> org.apache.openjpa.jdbc.meta.MappingTool.buildSchema(MappingTool.java:731)
>       at org.apache.openjpa.jdbc.meta.MappingTool.run(MappingTool.java:630)
>       at 
> org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.synchronizeMappings(JDBCBrokerFactory.java:160)
>       at 
> org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.newBrokerImpl(JDBCBrokerFactory.java:126)
>       at 
> org.apache.openjpa.kernel.AbstractBrokerFactory.newBroker(AbstractBrokerFactory.java:164)
>       ... 6 more
> Process finished with exit code 1

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira


Reply via email to