[
https://issues.apache.org/jira/browse/OPENJPA-1804?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12913780#action_12913780
]
Donald Woods commented on OPENJPA-1804:
---------------------------------------
Updated output using trunk and OPENJPA-1811 (dynamic enhancer working on Mac) -
drwoods:target/$ java -cp
./openjpa-all-2.1.0-SNAPSHOT.jar:./h2-1.2.143.jar:./openjpatest-trunk.jar
openjpatest.Main -Dopenjpa.Log=DefaultLevel=TRACE
4 db TRACE [main] openjpa.Runtime - Setting the following properties from
"jar:file:/private/tmp/openjpatest/target/openjpatest-trunk.jar!/META-INF/persistence.xml"
into configuration: {openjpa.BrokerFactory=jdbc,
openjpa.ConnectionDriverName=org.h2.Driver,
openjpa.RuntimeUnenhancedClasses=supported,
javax.persistence.provider=org.apache.openjpa.persistence.PersistenceProviderImpl,
openjpa.MetaDataFactory=jpa(Types=openjpatest.AddressBook;openjpatest.Group;openjpatest.Organization),
openjpa.Log=DefaultLevel=TRACE, PersistenceVersion=2.0,
openjpa.ConnectionURL=jdbc:h2:mem:test, openjpa.Id=db}
64 db TRACE [main] openjpa.Runtime -
org.apache.openjpa.enhance.InstrumentationFactory.getInstrumentation()
_inst:null _dynamicallyInstall:true
66 db TRACE [main] openjpa.Runtime -
org.apache.openjpa.enhance.InstrumentationFactory.findToolsJar() -- couldn't
find default
/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Home/lib/tools.jar
66 db TRACE [main] openjpa.Runtime -
org.apache.openjpa.enhance.InstrumentationFactory.findToolsJar() -- found
/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Classes/classes.jar
1 db TRACE [main] openjpa.Runtime - Setting the following properties from
"jar:file:/private/tmp/openjpatest/target/openjpatest-trunk.jar!/META-INF/persistence.xml"
into configuration: {openjpa.ConnectionDriverName=org.h2.Driver,
openjpa.RuntimeUnenhancedClasses=supported,
javax.persistence.provider=org.apache.openjpa.persistence.PersistenceProviderImpl,
openjpa.MetaDataFactory=jpa(Types=openjpatest.AddressBook;openjpatest.Group;openjpatest.Organization),
openjpa.Log=DefaultLevel=TRACE, PersistenceVersion=2.0,
openjpa.ConnectionURL=jdbc:h2:mem:test, openjpa.Id=db}
69 db TRACE [main] openjpa.Runtime - No cache marshaller found for id
org.apache.openjpa.conf.MetaDataCacheMaintenance.
130 db TRACE [main] openjpa.Runtime - No cache marshaller found for id
org.apache.openjpa.conf.MetaDataCacheMaintenance.
154 db TRACE [main] openjpa.MetaData - Scanning resource "META-INF/orm.xml"
for persistent types.
156 db TRACE [main] openjpa.MetaData - The persistent unit root url is "null"
156 db TRACE [main] openjpa.MetaData - parsePersistentTypeNames() found
[openjpatest.Group, openjpatest.Organization, openjpatest.AddressBook].
156 db TRACE [main] openjpa.MetaData - Found 3 classes with metadata in 25
milliseconds.
160 db TRACE [main] openjpa.MetaData - Clearing metadata repository
"org.apache.openjpa.meta.metadatareposit...@4e4ee70b".
716 db INFO [main] openjpa.Runtime - OpenJPA dynamically loaded the class
enhancer. Any classes that were not enhanced at build time will be enhanced
when they are loaded by the JVM.
718 db TRACE [main] openjpa.Runtime - Trying to load javax.validation APIs
based on the ValidationMode=AUTO
846 db INFO [main] openjpa.Runtime - OpenJPA dynamically loaded a
validation provider.
874 db TRACE [main] openjpa.Runtime -
org.apache.openjpa.persistence.persistenceprovideri...@7114460 creating
org.apache.openjpa.persistence.entitymanagerfactoryi...@7e9ffe3f for PU db.
877 db INFO [main] openjpa.Runtime - Starting OpenJPA 2.1.0-SNAPSHOT
879 db TRACE [main] openjpa.Runtime - Properties:
javax.persistence.lock.timeout: 0
javax.persistence.query.timeout: 0
javax.persistence.sharedCache.mode: UNSPECIFIED
javax.persistence.validation.group.pre-persist: javax.validation.groups.Default
javax.persistence.validation.group.pre-update: javax.validation.groups.Default
openjpa.AutoClear: 0
openjpa.AutoDetach: [Ljava.lang.String;@30ff8c74
openjpa.BrokerFactory: jdbc
openjpa.BrokerImpl: default
openjpa.CacheDistributionPolicy: default
openjpa.Callbacks: default
openjpa.ClassResolver: default
openjpa.Compatibility: default
openjpa.ConnectionDriverName: org.h2.Driver
openjpa.ConnectionFactoryMode: false
openjpa.ConnectionRetainMode: 0
openjpa.ConnectionURL: jdbc:h2:mem:test
openjpa.DataCache: false
openjpa.DataCacheManager: default
openjpa.DataCacheTimeout: -1
openjpa.DetachState: loaded
openjpa.DynamicDataStructs: false
openjpa.DynamicEnhancementAgent: true
openjpa.EntityManagerFactory: default
openjpa.FetchBatchSize: -1
openjpa.FetchGroups: [Ljava.lang.String;@595e2ccd
openjpa.FlushBeforeQueries: 0
openjpa.Id: db
openjpa.IgnoreChanges: false
openjpa.InitializeEagerly: false
openjpa.InstrumentationManager: default
openjpa.InverseManager: false
openjpa.LifecycleEventManager: validating
openjpa.LockManager: mixed
openjpa.Log: true(DefaultLevel=TRACE)
openjpa.ManagedRuntime: auto
openjpa.MaxFetchDepth: -1
openjpa.MetaDataFactory:
jpa(Types=openjpatest.AddressBook;openjpatest.Group;openjpatest.Organization)
openjpa.MetaDataRepository: default
openjpa.Multithreaded: false
openjpa.NontransactionalRead: true
openjpa.NontransactionalWrite: true
openjpa.Optimistic: true
openjpa.OrphanedKeyAction: log
openjpa.ProxyManager: default
openjpa.QueryCache: false
openjpa.QueryCompilationCache: true
openjpa.ReadLockLevel: 10
openjpa.RefreshFromDataCache: false
openjpa.RestoreState: 1
openjpa.RetainState: true
openjpa.RetryClassRegistration: false
openjpa.RuntimeUnenhancedClasses: 0
openjpa.SavepointManager: in-mem
openjpa.Sequence: table
openjpa.TransactionMode: false
openjpa.WriteLockLevel: 20
openjpa.jdbc.DriverDataSource: auto
openjpa.jdbc.EagerFetchMode: 2
openjpa.jdbc.FetchDirection: 1000
openjpa.jdbc.FinderCache: true
openjpa.jdbc.IdentifierUtil: default
openjpa.jdbc.LRSSize: 2
openjpa.jdbc.MappingDefaults: jpa
openjpa.jdbc.QuerySQLCache: true
openjpa.jdbc.ResultSetType: 1003
openjpa.jdbc.SQLFactory: default
openjpa.jdbc.SchemaFactory: dynamic
openjpa.jdbc.Schemas: [Ljava.lang.String;@30ff8c74
openjpa.jdbc.SubclassFetchMode: 1
openjpa.jdbc.SynchronizeMappings: null
openjpa.jdbc.TransactionIsolation: -1
openjpa.jdbc.UpdateManager: default
881 db TRACE [main] openjpa.Runtime - No cache marshaller found for id
org.apache.openjpa.conf.MetaDataCacheMaintenance.
973 db TRACE [main] openjpa.MetaData - Using metadata factory
"org.apache.openjpa.persistence.jdbc.persistencemappingfact...@565bb966".
1024 db INFO [main] openjpa.jdbc.JDBC - Using dictionary class
"org.apache.openjpa.jdbc.sql.H2Dictionary".
1170 db TRACE [main] openjpa.jdbc.JDBC - createConnectionFactory:
datasource=org.apache.openjpa.jdbc.schema.autodriverdatasour...@5c6ed322
1260 db TRACE [main] openjpa.jdbc.JDBC - DataSource connection setAutoCommit
to "true"
CCCCC - using DBCPDriverDataSource
1817 db TRACE [main] openjpa.jdbc.JDBC - catalogSeparator: .
catalogTerm: catalog
databaseProductName: H2
databaseProductVersion: 1.2.143 (2010-09-18)
driverName: H2 JDBC Driver
driverVersion: 1.2.143 (2010-09-18)
extraNameCharacters:
identifierQuoteString: "
numericFunctions:
ABS,ACOS,ASIN,ATAN,COS,COT,SIN,TAN,ATAN2,BITAND,BITOR,BITXOR,MOD,CEILING,DEGREES,EXP,FLOOR,LOG,LOG10,RADIANS,SQRT,PI,POWER,RAND,RANDOM_UUID,ROUND,ROUNDMAGIC,SECURE_RAND,SIGN,ENCRYPT,DECRYPT,HASH,TRUNCATE,COMPRESS,EXPAND,ZERO
procedureTerm: procedure
schemaTerm: schema
searchStringEscape: \
sqlKeywords: LIMIT,MINUS,ROWNUM,SYSDATE,SYSTIME,SYSTIMESTAMP,TODAY
stringFunctions:
ASCII,BIT_LENGTH,LENGTH,OCTET_LENGTH,CHAR,CONCAT,DIFFERENCE,HEXTORAW,RAWTOHEX,INSTR,INSERT,LOWER,UPPER,LEFT,RIGHT,LOCATE,POSITION,LPAD,RPAD,LTRIM,RTRIM,TRIM,REGEXP_REPLACE,REPEAT,REPLACE,SOUNDEX,SPACE,STRINGDECODE,STRINGENCODE,STRINGTOUTF8,SUBSTRING,UTF8TOSTRING,XMLATTR,XMLNODE,XMLCOMMENT,XMLCDATA,XMLSTARTDOC,XMLTEXT
systemFunctions:
ARRAY_GET,ARRAY_LENGTH,AUTOCOMMIT,CANCEL_SESSION,CASEWHEN,CAST,COALESCE,CONVERT,CURRVAL,CSVREAD,CSVWRITE,DATABASE,DATABASE_PATH,FILE_READ,GREATEST,IDENTITY,IFNULL,LEAST,LOCK_MODE,LOCK_TIMEOUT,LINK_SCHEMA,MEMORY_FREE,MEMORY_USED,NEXTVAL,NULLIF,READONLY,ROWNUM,SCHEMA,SCOPE_IDENTITY,SESSION_ID,SET,TABLE,TRANSACTION_ID,USER
timeDateFunctions:
CURRENT_DATE,CURRENT_TIME,CURRENT_TIMESTAMP,DATEADD,DATEDIFF,DAYNAME,DAY_OF_MONTH,DAY_OF_WEEK,DAY_OF_YEAR,EXTRACT,FORMATDATETIME,HOUR,MINUTE,MONTH,MONTHNAME,PARSEDATETIME,QUARTER,SECOND,WEEK,YEAR
url: jdbc:h2:mem:test
userName:
defaultTransactionIsolation: 2
driverMajorVersion: 1
driverMinorVersion: 2
maxBinaryLiteralLength: 0
maxCatalogNameLength: 0
maxCharLiteralLength: 0
maxColumnNameLength: 0
maxColumnsInGroupBy: 0
maxColumnsInIndex: 0
maxColumnsInOrderBy: 0
maxColumnsInSelect: 0
maxColumnsInTable: 0
maxConnections: 0
maxCursorNameLength: 0
maxIndexLength: 0
maxProcedureNameLength: 0
maxRowSize: 0
maxSchemaNameLength: 0
maxStatementLength: 0
maxStatements: 0
maxTableNameLength: 0
maxTablesInSelect: 0
maxUserNameLength: 0
isCatalogAtStart: true
isReadOnly: false
nullPlusNonNullIsNull: true
nullsAreSortedAtEnd: false
nullsAreSortedAtStart: false
nullsAreSortedHigh: false
nullsAreSortedLow: true
storesLowerCaseIdentifiers: false
storesLowerCaseQuotedIdentifiers: false
storesMixedCaseIdentifiers: false
storesMixedCaseQuotedIdentifiers: true
storesUpperCaseIdentifiers: true
storesUpperCaseQuotedIdentifiers: false
supportsAlterTableWithAddColumn: true
supportsAlterTableWithDropColumn: true
supportsANSI92EntryLevelSQL: true
supportsANSI92FullSQL: false
supportsANSI92IntermediateSQL: false
supportsCatalogsInDataManipulation: true
supportsCatalogsInIndexDefinitions: true
supportsCatalogsInPrivilegeDefinitions: true
supportsCatalogsInProcedureCalls: false
supportsCatalogsInTableDefinitions: true
supportsColumnAliasing: true
supportsConvert: true
supportsCoreSQLGrammar: true
supportsCorrelatedSubqueries: true
supportsDataDefinitionAndDataManipulationTransactions: false
supportsDataManipulationTransactionsOnly: true
supportsDifferentTableCorrelationNames: false
supportsExpressionsInOrderBy: true
supportsExtendedSQLGrammar: false
supportsFullOuterJoins: false
supportsGroupBy: true
supportsGroupByBeyondSelect: true
supportsGroupByUnrelated: true
supportsIntegrityEnhancementFacility: true
supportsLikeEscapeClause: true
supportsLimitedOuterJoins: true
supportsMinimumSQLGrammar: true
supportsMixedCaseIdentifiers: false
supportsMixedCaseQuotedIdentifiers: true
supportsMultipleResultSets: false
supportsMultipleTransactions: true
supportsNonNullableColumns: true
supportsOpenCursorsAcrossCommit: false
supportsOpenCursorsAcrossRollback: false
supportsOpenStatementsAcrossCommit: true
supportsOpenStatementsAcrossRollback: true
supportsOrderByUnrelated: true
supportsOuterJoins: true
supportsPositionedDelete: true
supportsPositionedUpdate: true
supportsSchemasInDataManipulation: true
supportsSchemasInIndexDefinitions: true
supportsSchemasInPrivilegeDefinitions: true
supportsSchemasInProcedureCalls: true
supportsSchemasInTableDefinitions: true
supportsSelectForUpdate: true
supportsStoredProcedures: false
supportsSubqueriesInComparisons: true
supportsSubqueriesInExists: true
supportsSubqueriesInIns: true
supportsSubqueriesInQuantifieds: true
supportsTableCorrelationNames: true
supportsTransactions: true
supportsUnion: true
supportsUnionAll: true
usesLocalFilePerTable: false
usesLocalFiles: true
allProceduresAreCallable: true
allTablesAreSelectable: true
dataDefinitionCausesTransactionCommit: true
dataDefinitionIgnoredInTransactions: false
doesMaxRowSizeIncludeBlobs: false
supportsBatchUpdates: true
1821 db TRACE [main] openjpa.jdbc.JDBC - Initial connection autoCommit:
true, holdability: 1, TransactionIsolation: 2
1833 db TRACE [main] openjpa.jdbc.JDBC - <t 1205573714, conn 569201753> [3
ms] close
1928 db TRACE [main] openjpa.Runtime - Found datasource1: datasource
1550766882 from configuration. StoreContext:
org.apache.openjpa.kernel.finalizingbrokeri...@345c98f3
1937 db TRACE [main] openjpa.MetaData - Scanning resource "META-INF/orm.xml"
for persistent types.
1937 db TRACE [main] openjpa.MetaData - The persistent unit root url is
"null"
1938 db TRACE [main] openjpa.MetaData - parsePersistentTypeNames() found
[openjpatest.Group, openjpatest.Organization, openjpatest.AddressBook].
1938 db TRACE [main] openjpa.MetaData - Found 3 classes with metadata in 1
milliseconds.
1385 db TRACE [main] openjpa.Enhance - "openjpatest/Group" requires runtime
enhancement: true
1416 db TRACE [main] openjpa.MetaData - Loading metadata for "class
openjpatest.Group" under mode "[META][QUERY]".
1433 db TRACE [main] openjpa.MetaData - Parsing class "openjpatest.Group".
1433 db TRACE [main] openjpa.MetaData - Parsing package "openjpatest.Group".
1469 db TRACE [main] openjpa.MetaData - Generating default metadata for type
"openjpatest.Group".
1469 db TRACE [main] openjpa.MetaData - Using reflection for metadata
generation.
1504 db TRACE [main] openjpa.MetaData - Set persistence-capable superclass
of "openjpatest.Group" to "null".
1504 db TRACE [main] openjpa.MetaData - Resolving metadata for
"openjpatest.gr...@1606871064".
1504 db TRACE [main] openjpa.MetaData - Resolving field
"[email protected]".
1511 db TRACE [main] openjpa.MetaData - Resolving field
"[email protected]".
1511 db TRACE [main] openjpa.MetaData - Resolving field
"[email protected]".
1511 db TRACE [main] openjpa.MetaData - Loading metadata for "class
openjpatest.Organization" under mode "[META][QUERY]".
1511 db TRACE [main] openjpa.MetaData - Parsing class
"openjpatest.Organization".
1513 db TRACE [main] openjpa.MetaData - Generating default metadata for type
"openjpatest.Organization".
1513 db TRACE [main] openjpa.MetaData - Using reflection for metadata
generation.
1521 db TRACE [main] openjpa.MetaData - Set persistence-capable superclass
of "openjpatest.Organization" to "null".
1521 db TRACE [main] openjpa.MetaData - Resolving field
"[email protected]".
1522 db TRACE [main] openjpa.MetaData - Resolving metadata for
"openjpatest.organizat...@570110481".
1522 db TRACE [main] openjpa.MetaData - Resolving field
"[email protected]".
1522 db TRACE [main] openjpa.MetaData - Loading metadata for "class
openjpatest.AddressBook" under mode "[META][QUERY]".
1522 db TRACE [main] openjpa.MetaData - Parsing class
"openjpatest.AddressBook".
1523 db TRACE [main] openjpa.MetaData - Generating default metadata for type
"openjpatest.AddressBook".
1523 db TRACE [main] openjpa.MetaData - Using reflection for metadata
generation.
1527 db TRACE [main] openjpa.MetaData - Generating default metadata for type
"openjpatest.EmailAddress".
1527 db TRACE [main] openjpa.MetaData - Using reflection for metadata
generation.
1527 db TRACE [main] openjpa.MetaData - Set persistence-capable superclass
of "openjpatest.AddressBook" to "null".
1527 db TRACE [main] openjpa.MetaData - Resolving field
"[email protected]".
1527 db TRACE [main] openjpa.MetaData - Resolving embedded metadata for
"java.lang.obj...@1671818348".
1528 db TRACE [main] openjpa.MetaData - Preparing mapping for
"openjpatest.Group".
1528 db TRACE [main] openjpa.MetaData - Resolving mapping for
"openjpatest.gr...@1606871064".
1528 db WARN [main] openjpa.Enhance - An exception was thrown while
attempting to perform class file transformation on "openjpatest/Group":
<openjpa-2.1.0-SNAPSHOT-r422266:999559M fatal user error>
org.apache.openjpa.util.MetaDataException: Errors encountered while resolving
metadata. See nested exceptions for details.
at
org.apache.openjpa.meta.MetaDataRepository.resolve(MetaDataRepository.java:655)
at
org.apache.openjpa.meta.MetaDataRepository.getMetaDataInternal(MetaDataRepository.java:398)
at
org.apache.openjpa.meta.MetaDataRepository.getMetaData(MetaDataRepository.java:371)
at org.apache.openjpa.enhance.PCEnhancer.<init>(PCEnhancer.java:283)
at org.apache.openjpa.enhance.PCEnhancer.<init>(PCEnhancer.java:254)
at
org.apache.openjpa.enhance.PCClassFileTransformer.transform0(PCClassFileTransformer.java:143)
at
org.apache.openjpa.enhance.PCClassFileTransformer.transform(PCClassFileTransformer.java:124)
at
sun.instrument.TransformerManager.transform(TransformerManager.java:169)
at
sun.instrument.InstrumentationImpl.transform(InstrumentationImpl.java:365)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClassCond(ClassLoader.java:632)
at java.lang.ClassLoader.defineClass(ClassLoader.java:616)
at
java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)
at java.net.URLClassLoader.access$000(URLClassLoader.java:58)
at java.net.URLClassLoader$1.run(URLClassLoader.java:197)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:247)
at
org.apache.openjpa.meta.MetaDataRepository.classForName(MetaDataRepository.java:1538)
at
org.apache.openjpa.meta.MetaDataRepository.loadPersistentTypesInternal(MetaDataRepository.java:1514)
at
org.apache.openjpa.meta.MetaDataRepository.loadPersistentTypes(MetaDataRepository.java:1492)
at
org.apache.openjpa.kernel.AbstractBrokerFactory.loadPersistentTypes(AbstractBrokerFactory.java:283)
at
org.apache.openjpa.kernel.AbstractBrokerFactory.initializeBroker(AbstractBrokerFactory.java:239)
at
org.apache.openjpa.kernel.AbstractBrokerFactory.newBroker(AbstractBrokerFactory.java:213)
at
org.apache.openjpa.kernel.DelegatingBrokerFactory.newBroker(DelegatingBrokerFactory.java:156)
at
org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:227)
at
org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:154)
at
org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:60)
at openjpatest.Main.main(Main.java:17)
Caused by: <openjpa-2.1.0-SNAPSHOT-r422266:999559M nonfatal user error>
org.apache.openjpa.util.MetaDataException: No metadata was found for type
"class java.lang.Object". The class is not enhanced.
at
org.apache.openjpa.meta.MetaDataRepository.getMetaDataInternal(MetaDataRepository.java:390)
at
org.apache.openjpa.meta.MetaDataRepository.getMetaData(MetaDataRepository.java:371)
at
org.apache.openjpa.meta.ClassMetaData.resolveMeta(ClassMetaData.java:1822)
at
org.apache.openjpa.meta.ClassMetaData.resolve(ClassMetaData.java:1787)
at
org.apache.openjpa.meta.ValueMetaDataImpl.resolve(ValueMetaDataImpl.java:435)
at
org.apache.openjpa.meta.FieldMetaData.resolve(FieldMetaData.java:1732)
at
org.apache.openjpa.meta.ClassMetaData.resolveMeta(ClassMetaData.java:1853)
at
org.apache.openjpa.meta.ClassMetaData.resolve(ClassMetaData.java:1787)
at
org.apache.openjpa.meta.MetaDataRepository.processBuffer(MetaDataRepository.java:809)
at
org.apache.openjpa.meta.MetaDataRepository.resolveMeta(MetaDataRepository.java:706)
at
org.apache.openjpa.meta.MetaDataRepository.resolve(MetaDataRepository.java:630)
... 33 more
NestedThrowables:
<openjpa-2.1.0-SNAPSHOT-r422266:999559M fatal user error>
org.apache.openjpa.util.MetaDataException: Unable to resolve type
"openjpatest.AddressBook" due to previous errors resolving related type
"openjpatest.Organization".
at
org.apache.openjpa.meta.MetaDataRepository.processBuffer(MetaDataRepository.java:822)
at
org.apache.openjpa.meta.MetaDataRepository.resolveMeta(MetaDataRepository.java:706)
at
org.apache.openjpa.meta.MetaDataRepository.resolve(MetaDataRepository.java:630)
at
org.apache.openjpa.meta.MetaDataRepository.getMetaDataInternal(MetaDataRepository.java:398)
at
org.apache.openjpa.meta.MetaDataRepository.getMetaData(MetaDataRepository.java:371)
at org.apache.openjpa.enhance.PCEnhancer.<init>(PCEnhancer.java:283)
at org.apache.openjpa.enhance.PCEnhancer.<init>(PCEnhancer.java:254)
at
org.apache.openjpa.enhance.PCClassFileTransformer.transform0(PCClassFileTransformer.java:143)
at
org.apache.openjpa.enhance.PCClassFileTransformer.transform(PCClassFileTransformer.java:124)
at
sun.instrument.TransformerManager.transform(TransformerManager.java:169)
at
sun.instrument.InstrumentationImpl.transform(InstrumentationImpl.java:365)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClassCond(ClassLoader.java:632)
at java.lang.ClassLoader.defineClass(ClassLoader.java:616)
at
java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)
at java.net.URLClassLoader.access$000(URLClassLoader.java:58)
at java.net.URLClassLoader$1.run(URLClassLoader.java:197)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:247)
at
org.apache.openjpa.meta.MetaDataRepository.classForName(MetaDataRepository.java:1538)
at
org.apache.openjpa.meta.MetaDataRepository.loadPersistentTypesInternal(MetaDataRepository.java:1514)
at
org.apache.openjpa.meta.MetaDataRepository.loadPersistentTypes(MetaDataRepository.java:1492)
at
org.apache.openjpa.kernel.AbstractBrokerFactory.loadPersistentTypes(AbstractBrokerFactory.java:283)
at
org.apache.openjpa.kernel.AbstractBrokerFactory.initializeBroker(AbstractBrokerFactory.java:239)
at
org.apache.openjpa.kernel.AbstractBrokerFactory.newBroker(AbstractBrokerFactory.java:213)
at
org.apache.openjpa.kernel.DelegatingBrokerFactory.newBroker(DelegatingBrokerFactory.java:156)
at
org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:227)
at
org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:154)
at
org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:60)
at openjpatest.Main.main(Main.java:17)
1535 db TRACE [main] openjpa.Enhance - "openjpatest/Organization" requires
runtime enhancement: true
1537 db TRACE [main] openjpa.MetaData - Loading metadata for "class
openjpatest.Organization" under mode "[META][QUERY]".
1537 db TRACE [main] openjpa.MetaData - Parsing class
"openjpatest.Organization".
1538 db TRACE [main] openjpa.MetaData - Generating default metadata for type
"openjpatest.Organization".
1538 db TRACE [main] openjpa.MetaData - Using reflection for metadata
generation.
1540 db TRACE [main] openjpa.MetaData - Set persistence-capable superclass
of "openjpatest.Organization" to "null".
1540 db TRACE [main] openjpa.MetaData - Resolving metadata for
"openjpatest.organizat...@1056794277".
1540 db TRACE [main] openjpa.MetaData - Resolving field
"[email protected]".
1541 db TRACE [main] openjpa.MetaData - Loading metadata for "class
openjpatest.AddressBook" under mode "[META][QUERY]".
1541 db TRACE [main] openjpa.MetaData - Parsing class
"openjpatest.AddressBook".
1541 db TRACE [main] openjpa.MetaData - Generating default metadata for type
"openjpatest.AddressBook".
1541 db TRACE [main] openjpa.MetaData - Using reflection for metadata
generation.
1542 db TRACE [main] openjpa.MetaData - Generating default metadata for type
"openjpatest.EmailAddress".
1542 db TRACE [main] openjpa.MetaData - Using reflection for metadata
generation.
1542 db TRACE [main] openjpa.MetaData - Set persistence-capable superclass
of "openjpatest.AddressBook" to "null".
1543 db TRACE [main] openjpa.MetaData - Resolving field
"[email protected]".
1543 db TRACE [main] openjpa.MetaData - Resolving embedded metadata for
"java.lang.obj...@1851652849".
1543 db WARN [main] openjpa.Enhance - An exception was thrown while
attempting to perform class file transformation on "openjpatest/Organization":
<openjpa-2.1.0-SNAPSHOT-r422266:999559M fatal user error>
org.apache.openjpa.util.MetaDataException: Errors encountered while resolving
metadata. See nested exceptions for details.
at
org.apache.openjpa.meta.MetaDataRepository.resolve(MetaDataRepository.java:655)
at
org.apache.openjpa.meta.MetaDataRepository.getMetaDataInternal(MetaDataRepository.java:398)
at
org.apache.openjpa.meta.MetaDataRepository.getMetaData(MetaDataRepository.java:371)
at org.apache.openjpa.enhance.PCEnhancer.<init>(PCEnhancer.java:283)
at org.apache.openjpa.enhance.PCEnhancer.<init>(PCEnhancer.java:254)
at
org.apache.openjpa.enhance.PCClassFileTransformer.transform0(PCClassFileTransformer.java:143)
at
org.apache.openjpa.enhance.PCClassFileTransformer.transform(PCClassFileTransformer.java:124)
at
sun.instrument.TransformerManager.transform(TransformerManager.java:169)
at
sun.instrument.InstrumentationImpl.transform(InstrumentationImpl.java:365)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClassCond(ClassLoader.java:632)
at java.lang.ClassLoader.defineClass(ClassLoader.java:616)
at
java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)
at java.net.URLClassLoader.access$000(URLClassLoader.java:58)
at java.net.URLClassLoader$1.run(URLClassLoader.java:197)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:247)
at
org.apache.openjpa.meta.MetaDataRepository.classForName(MetaDataRepository.java:1538)
at
org.apache.openjpa.meta.MetaDataRepository.loadPersistentTypesInternal(MetaDataRepository.java:1514)
at
org.apache.openjpa.meta.MetaDataRepository.loadPersistentTypes(MetaDataRepository.java:1492)
at
org.apache.openjpa.kernel.AbstractBrokerFactory.loadPersistentTypes(AbstractBrokerFactory.java:283)
at
org.apache.openjpa.kernel.AbstractBrokerFactory.initializeBroker(AbstractBrokerFactory.java:239)
at
org.apache.openjpa.kernel.AbstractBrokerFactory.newBroker(AbstractBrokerFactory.java:213)
at
org.apache.openjpa.kernel.DelegatingBrokerFactory.newBroker(DelegatingBrokerFactory.java:156)
at
org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:227)
at
org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:154)
at
org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:60)
at openjpatest.Main.main(Main.java:17)
Caused by: <openjpa-2.1.0-SNAPSHOT-r422266:999559M nonfatal user error>
org.apache.openjpa.util.MetaDataException: No metadata was found for type
"class java.lang.Object". The class is not enhanced.
at
org.apache.openjpa.meta.MetaDataRepository.getMetaDataInternal(MetaDataRepository.java:390)
at
org.apache.openjpa.meta.MetaDataRepository.getMetaData(MetaDataRepository.java:371)
at
org.apache.openjpa.meta.ClassMetaData.resolveMeta(ClassMetaData.java:1822)
at
org.apache.openjpa.meta.ClassMetaData.resolve(ClassMetaData.java:1787)
at
org.apache.openjpa.meta.ValueMetaDataImpl.resolve(ValueMetaDataImpl.java:435)
at
org.apache.openjpa.meta.FieldMetaData.resolve(FieldMetaData.java:1732)
at
org.apache.openjpa.meta.ClassMetaData.resolveMeta(ClassMetaData.java:1853)
at
org.apache.openjpa.meta.ClassMetaData.resolve(ClassMetaData.java:1787)
at
org.apache.openjpa.meta.MetaDataRepository.processBuffer(MetaDataRepository.java:809)
at
org.apache.openjpa.meta.MetaDataRepository.resolveMeta(MetaDataRepository.java:706)
at
org.apache.openjpa.meta.MetaDataRepository.resolve(MetaDataRepository.java:630)
... 33 more
NestedThrowables:
<openjpa-2.1.0-SNAPSHOT-r422266:999559M fatal user error>
org.apache.openjpa.util.MetaDataException: Unable to resolve type
"openjpatest.AddressBook" due to previous errors resolving related type
"openjpatest.Organization".
at
org.apache.openjpa.meta.MetaDataRepository.processBuffer(MetaDataRepository.java:822)
at
org.apache.openjpa.meta.MetaDataRepository.resolveMeta(MetaDataRepository.java:706)
at
org.apache.openjpa.meta.MetaDataRepository.resolve(MetaDataRepository.java:630)
at
org.apache.openjpa.meta.MetaDataRepository.getMetaDataInternal(MetaDataRepository.java:398)
at
org.apache.openjpa.meta.MetaDataRepository.getMetaData(MetaDataRepository.java:371)
at org.apache.openjpa.enhance.PCEnhancer.<init>(PCEnhancer.java:283)
at org.apache.openjpa.enhance.PCEnhancer.<init>(PCEnhancer.java:254)
at
org.apache.openjpa.enhance.PCClassFileTransformer.transform0(PCClassFileTransformer.java:143)
at
org.apache.openjpa.enhance.PCClassFileTransformer.transform(PCClassFileTransformer.java:124)
at
sun.instrument.TransformerManager.transform(TransformerManager.java:169)
at
sun.instrument.InstrumentationImpl.transform(InstrumentationImpl.java:365)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClassCond(ClassLoader.java:632)
at java.lang.ClassLoader.defineClass(ClassLoader.java:616)
at
java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)
at java.net.URLClassLoader.access$000(URLClassLoader.java:58)
at java.net.URLClassLoader$1.run(URLClassLoader.java:197)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:247)
at
org.apache.openjpa.meta.MetaDataRepository.classForName(MetaDataRepository.java:1538)
at
org.apache.openjpa.meta.MetaDataRepository.loadPersistentTypesInternal(MetaDataRepository.java:1514)
at
org.apache.openjpa.meta.MetaDataRepository.loadPersistentTypes(MetaDataRepository.java:1492)
at
org.apache.openjpa.kernel.AbstractBrokerFactory.loadPersistentTypes(AbstractBrokerFactory.java:283)
at
org.apache.openjpa.kernel.AbstractBrokerFactory.initializeBroker(AbstractBrokerFactory.java:239)
at
org.apache.openjpa.kernel.AbstractBrokerFactory.newBroker(AbstractBrokerFactory.java:213)
at
org.apache.openjpa.kernel.DelegatingBrokerFactory.newBroker(DelegatingBrokerFactory.java:156)
at
org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:227)
at
org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:154)
at
org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:60)
at openjpatest.Main.main(Main.java:17)
1547 db TRACE [main] openjpa.Enhance - "openjpatest/AddressBook" requires
runtime enhancement: true
1549 db TRACE [main] openjpa.MetaData - Loading metadata for "class
openjpatest.AddressBook" under mode "[META][QUERY]".
1549 db TRACE [main] openjpa.MetaData - Parsing class
"openjpatest.AddressBook".
1549 db TRACE [main] openjpa.MetaData - Generating default metadata for type
"openjpatest.AddressBook".
1550 db TRACE [main] openjpa.MetaData - Using reflection for metadata
generation.
1551 db TRACE [main] openjpa.MetaData - Generating default metadata for type
"openjpatest.EmailAddress".
1551 db TRACE [main] openjpa.MetaData - Using reflection for metadata
generation.
1551 db TRACE [main] openjpa.MetaData - Set persistence-capable superclass
of "openjpatest.AddressBook" to "null".
1551 db TRACE [main] openjpa.MetaData - Resolving metadata for
"openjpatest.addressb...@1543904466".
1551 db TRACE [main] openjpa.MetaData - Resolving field
"[email protected]".
1551 db TRACE [main] openjpa.MetaData - Resolving field
"[email protected]".
1551 db TRACE [main] openjpa.MetaData - Loading metadata for "class
openjpatest.EmailAddress" under mode "[META][QUERY]".
1551 db TRACE [main] openjpa.MetaData - Parsing class
"openjpatest.EmailAddress".
1551 db TRACE [main] openjpa.MetaData - Generating default metadata for type
"openjpatest.EmailAddress".
1551 db TRACE [main] openjpa.MetaData - Using reflection for metadata
generation.
1552 db TRACE [main] openjpa.MetaData - Set persistence-capable superclass
of "openjpatest.EmailAddress" to "null".
1552 db TRACE [main] openjpa.MetaData - Resolving embedded metadata for
"openjpatest.emailaddr...@357453361".
1552 db TRACE [main] openjpa.MetaData - Set persistence-capable superclass
of "openjpatest.EmailAddress" to "null".
1552 db TRACE [main] openjpa.MetaData - Resolving metadata for
"openjpatest.emailaddr...@1206877668".
1552 db TRACE [main] openjpa.MetaData - Resolving field
"[email protected]".
1552 db TRACE [main] openjpa.MetaData - Resolving field
"[email protected]".
1552 db TRACE [main] openjpa.MetaData - Preparing mapping for
"openjpatest.AddressBook".
1552 db TRACE [main] openjpa.MetaData - Preparing mapping for
"openjpatest.EmailAddress".
1553 db TRACE [main] openjpa.MetaData - Resolving mapping for
"openjpatest.addressb...@1543904466".
1553 db TRACE [main] openjpa.MetaData - Resolving mapping for
"openjpatest.emailaddr...@1206877668".
1553 db TRACE [main] openjpa.Enhance - Enhancing type "class
openjpatest.AddressBook" loaded by
org.apache.openjpa.lib.util.temporaryclassloa...@38ffd135.
2358 db TRACE [main] openjpa.Enhance -
org.apache.openjpa.enhance.InstrumentationFactory.getInstrumentation()
_inst:sun.instrument.instrumentationi...@31d8d237 _dynamicallyInstall:true
2359 db INFO [main] openjpa.Enhance - Creating subclass and redefining
methods for "[class openjpatest.Group, class openjpatest.Organization]". This
means that your application will be less efficient than it would if you ran the
OpenJPA enhancer.
2364 db TRACE [main] openjpa.Runtime - No cache marshaller found for id
org.apache.openjpa.conf.MetaDataCacheMaintenance.
2364 db TRACE [main] openjpa.MetaData - Using metadata factory
"org.apache.openjpa.persistence.jdbc.persistencemappingfact...@109b2a51".
2364 db TRACE [main] openjpa.MetaData - Loading metadata for "class
openjpatest.Group" under mode "[META]".
2364 db TRACE [main] openjpa.MetaData - Scanning resource "META-INF/orm.xml"
for persistent types.
2364 db TRACE [main] openjpa.MetaData - The persistent unit root url is
"null"
2364 db TRACE [main] openjpa.MetaData - parsePersistentTypeNames() found
[openjpatest.Group, openjpatest.Organization, openjpatest.AddressBook].
2365 db TRACE [main] openjpa.MetaData - Found 3 classes with metadata in 0
milliseconds.
2394 db TRACE [main] openjpa.MetaData - Parsing class "openjpatest.Group".
2394 db TRACE [main] openjpa.MetaData - Parsing package "openjpatest.Group".
2405 db TRACE [main] openjpa.MetaData - Generating default metadata for type
"openjpatest.Group".
2405 db TRACE [main] openjpa.MetaData - Using reflection for metadata
generation.
2418 db TRACE [main] openjpa.MetaData - Set persistence-capable superclass
of "openjpatest.Group" to "null".
2419 db TRACE [main] openjpa.MetaData - Resolving metadata for
"openjpatest.gr...@778653458".
2419 db TRACE [main] openjpa.MetaData - Resolving field
"[email protected]".
2419 db TRACE [main] openjpa.MetaData - Resolving field
"[email protected]".
2419 db TRACE [main] openjpa.MetaData - Resolving field
"[email protected]".
2419 db TRACE [main] openjpa.MetaData - Loading metadata for "class
openjpatest.Organization" under mode "[META]".
2419 db TRACE [main] openjpa.MetaData - Parsing class
"openjpatest.Organization".
2420 db TRACE [main] openjpa.MetaData - Generating default metadata for type
"openjpatest.Organization".
2420 db TRACE [main] openjpa.MetaData - Using reflection for metadata
generation.
2424 db TRACE [main] openjpa.MetaData - Set persistence-capable superclass
of "openjpatest.Organization" to "null".
2424 db TRACE [main] openjpa.MetaData - Resolving field
"[email protected]".
2424 db TRACE [main] openjpa.MetaData - Resolving metadata for
"openjpatest.organizat...@1546386943".
2424 db TRACE [main] openjpa.MetaData - Resolving field
"[email protected]".
2424 db TRACE [main] openjpa.MetaData - Loading metadata for "class
openjpatest.AddressBook" under mode "[META]".
2424 db TRACE [main] openjpa.MetaData - Parsing class
"openjpatest.AddressBook".
2425 db TRACE [main] openjpa.MetaData - Generating default metadata for type
"openjpatest.AddressBook".
2427 db TRACE [main] openjpa.MetaData - Generating default metadata for type
"openjpatest.EmailAddress".
2427 db TRACE [main] openjpa.MetaData - Using reflection for metadata
generation.
2427 db TRACE [main] openjpa.MetaData - Set persistence-capable superclass
of "openjpatest.AddressBook" to "null".
2427 db TRACE [main] openjpa.MetaData - Resolving field
"[email protected]".
2427 db TRACE [main] openjpa.MetaData - Resolving embedded metadata for
"java.lang.obj...@1691493474".
2428 db TRACE [main] openjpa.MetaData - Preparing mapping for
"openjpatest.Group".
2432 db TRACE [main] openjpa.MetaData - Resolving field
"[email protected]".
2437 db TRACE [main] openjpa.MetaData - "id" has mapping strategy
"org.apache.openjpa.jdbc.meta.strats.StringFieldStrategy".
2439 db TRACE [main] openjpa.MetaData - Resolving field
"[email protected]".
2439 db TRACE [main] openjpa.MetaData - "name" has mapping strategy
"org.apache.openjpa.jdbc.meta.strats.StringFieldStrategy".
2440 db TRACE [main] openjpa.MetaData - Resolving field
"[email protected]".
2440 db TRACE [main] openjpa.MetaData - "version" has mapping strategy
"none".
2444 db TRACE [main] openjpa.MetaData - "openjpatest.Group<discriminator>"
has mapping strategy "value-map".
2446 db TRACE [main] openjpa.MetaData - "openjpatest.Group<version>" has
mapping strategy "version-number".
2446 db TRACE [main] openjpa.MetaData - Resolving mapping for
"openjpatest.gr...@778653458".
2447 db TRACE [main] openjpa.MetaData - "openjpatest.Group" has mapping
strategy "full".
2447 db TRACE [main] openjpa.MetaData - Resolving field
"[email protected]".
Exception in thread "main" <openjpa-2.1.0-SNAPSHOT-r422266:999559M fatal user
error> org.apache.openjpa.persistence.ArgumentException: Errors encountered
while resolving metadata. See nested exceptions for details.
at
org.apache.openjpa.meta.MetaDataRepository.resolve(MetaDataRepository.java:655)
at
org.apache.openjpa.meta.MetaDataRepository.getMetaDataInternal(MetaDataRepository.java:398)
at
org.apache.openjpa.meta.MetaDataRepository.getMetaData(MetaDataRepository.java:371)
at org.apache.openjpa.enhance.PCEnhancer.<init>(PCEnhancer.java:283)
at org.apache.openjpa.enhance.PCEnhancer.<init>(PCEnhancer.java:254)
at org.apache.openjpa.enhance.PCEnhancer.<init>(PCEnhancer.java:222)
at
org.apache.openjpa.enhance.ManagedClassSubclasser.prepareUnenhancedClasses(ManagedClassSubclasser.java:134)
at
org.apache.openjpa.kernel.AbstractBrokerFactory.loadPersistentTypes(AbstractBrokerFactory.java:315)
at
org.apache.openjpa.kernel.AbstractBrokerFactory.initializeBroker(AbstractBrokerFactory.java:239)
at
org.apache.openjpa.kernel.AbstractBrokerFactory.newBroker(AbstractBrokerFactory.java:213)
at
org.apache.openjpa.kernel.DelegatingBrokerFactory.newBroker(DelegatingBrokerFactory.java:156)
at
org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:227)
at
org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:154)
at
org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:60)
at openjpatest.Main.main(Main.java:17)
Caused by: <openjpa-2.1.0-SNAPSHOT-r422266:999559M nonfatal user error>
org.apache.openjpa.persistence.ArgumentException: No metadata was found for
type "class java.lang.Object". The class is not enhanced.
at
org.apache.openjpa.meta.MetaDataRepository.getMetaDataInternal(MetaDataRepository.java:390)
at
org.apache.openjpa.meta.MetaDataRepository.getMetaData(MetaDataRepository.java:371)
at
org.apache.openjpa.meta.ClassMetaData.resolveMeta(ClassMetaData.java:1822)
at
org.apache.openjpa.meta.ClassMetaData.resolve(ClassMetaData.java:1787)
at
org.apache.openjpa.meta.ValueMetaDataImpl.resolve(ValueMetaDataImpl.java:435)
at
org.apache.openjpa.jdbc.meta.ValueMappingImpl.resolve(ValueMappingImpl.java:494)
at
org.apache.openjpa.meta.FieldMetaData.resolve(FieldMetaData.java:1732)
at
org.apache.openjpa.jdbc.meta.FieldMapping.resolve(FieldMapping.java:458)
at
org.apache.openjpa.meta.ClassMetaData.resolveMeta(ClassMetaData.java:1853)
at
org.apache.openjpa.meta.ClassMetaData.resolve(ClassMetaData.java:1787)
at
org.apache.openjpa.meta.MetaDataRepository.processBuffer(MetaDataRepository.java:809)
at
org.apache.openjpa.meta.MetaDataRepository.resolveMeta(MetaDataRepository.java:706)
at
org.apache.openjpa.meta.MetaDataRepository.resolve(MetaDataRepository.java:630)
... 14 more
NestedThrowables:
<openjpa-2.1.0-SNAPSHOT-r422266:999559M fatal user error>
org.apache.openjpa.persistence.ArgumentException: Unable to resolve type
"openjpatest.AddressBook" due to previous errors resolving related type
"openjpatest.Organization".
at
org.apache.openjpa.meta.MetaDataRepository.processBuffer(MetaDataRepository.java:822)
at
org.apache.openjpa.meta.MetaDataRepository.resolveMeta(MetaDataRepository.java:706)
at
org.apache.openjpa.meta.MetaDataRepository.resolve(MetaDataRepository.java:630)
at
org.apache.openjpa.meta.MetaDataRepository.getMetaDataInternal(MetaDataRepository.java:398)
at
org.apache.openjpa.meta.MetaDataRepository.getMetaData(MetaDataRepository.java:371)
at org.apache.openjpa.enhance.PCEnhancer.<init>(PCEnhancer.java:283)
at org.apache.openjpa.enhance.PCEnhancer.<init>(PCEnhancer.java:254)
at org.apache.openjpa.enhance.PCEnhancer.<init>(PCEnhancer.java:222)
at
org.apache.openjpa.enhance.ManagedClassSubclasser.prepareUnenhancedClasses(ManagedClassSubclasser.java:134)
at
org.apache.openjpa.kernel.AbstractBrokerFactory.loadPersistentTypes(AbstractBrokerFactory.java:315)
at
org.apache.openjpa.kernel.AbstractBrokerFactory.initializeBroker(AbstractBrokerFactory.java:239)
at
org.apache.openjpa.kernel.AbstractBrokerFactory.newBroker(AbstractBrokerFactory.java:213)
at
org.apache.openjpa.kernel.DelegatingBrokerFactory.newBroker(DelegatingBrokerFactory.java:156)
at
org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:227)
at
org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:154)
at
org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:60)
at openjpatest.Main.main(Main.java:17)
java.lang.NullPointerException
at
org.apache.openjpa.jdbc.meta.MappingInfo.mergeJoinColumn(MappingInfo.java:1513)
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.ValueMappingInfo.getTypeJoin(ValueMappingInfo.java:115)
at
org.apache.openjpa.jdbc.meta.ValueMappingInfo.getTypeJoin(ValueMappingInfo.java:92)
at
org.apache.openjpa.jdbc.meta.strats.RelationFieldStrategy.map(RelationFieldStrategy.java:167)
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.resolveMapping(ClassMapping.java:854)
at
org.apache.openjpa.meta.ClassMetaData.resolve(ClassMetaData.java:1792)
at
org.apache.openjpa.meta.MetaDataRepository.processBuffer(MetaDataRepository.java:809)
at
org.apache.openjpa.meta.MetaDataRepository.resolveMapping(MetaDataRepository.java:764)
at
org.apache.openjpa.meta.MetaDataRepository.resolve(MetaDataRepository.java:644)
at
org.apache.openjpa.meta.MetaDataRepository.getMetaDataInternal(MetaDataRepository.java:398)
at
org.apache.openjpa.meta.MetaDataRepository.getMetaData(MetaDataRepository.java:371)
at org.apache.openjpa.enhance.PCEnhancer.<init>(PCEnhancer.java:283)
at org.apache.openjpa.enhance.PCEnhancer.<init>(PCEnhancer.java:254)
at org.apache.openjpa.enhance.PCEnhancer.<init>(PCEnhancer.java:222)
at
org.apache.openjpa.enhance.ManagedClassSubclasser.prepareUnenhancedClasses(ManagedClassSubclasser.java:134)
at
org.apache.openjpa.kernel.AbstractBrokerFactory.loadPersistentTypes(AbstractBrokerFactory.java:315)
at
org.apache.openjpa.kernel.AbstractBrokerFactory.initializeBroker(AbstractBrokerFactory.java:239)
at
org.apache.openjpa.kernel.AbstractBrokerFactory.newBroker(AbstractBrokerFactory.java:213)
at
org.apache.openjpa.kernel.DelegatingBrokerFactory.newBroker(DelegatingBrokerFactory.java:156)
at
org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:227)
at
org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:154)
at
org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:60)
at openjpatest.Main.main(Main.java:17)
> NPE in MappingInfo.java line 1514
> ---------------------------------
>
> Key: OPENJPA-1804
> URL: https://issues.apache.org/jira/browse/OPENJPA-1804
> Project: OpenJPA
> Issue Type: Bug
> Components: Enhance, UnenhancedClasses, usability
> Affects Versions: 2.0.1
> Reporter: Willis Blackburn
> Assignee: Donald Woods
> Fix For: 2.1.0
>
> Attachments: openjpatest.tar.gz
>
>
> I am encountering a NPE at MappingInfo.java line 1514. I'm sorry I don't
> have time to prepare a test case right now. I'm not even 100% sure what is
> causing the problem, but it seems to be something like this:
> I have classes Organization, Group, User, and AddressBook.
> Group has a reference (many-to-one) to Organization.
> I'm using field-level access and the Java 6 runtime enhancer. (NOT the
> build-time enhancer or the agent.)
> In ManagedClassSubclasser.prepareUnenhancedClasses, the code receives a list
> of Class objects--the ones in persistence.xml. They are not in the same
> order as they are in persistence.xml, but I don't know if that's important.
> The first one is Group. During the processing of Group, the code invokes
> ClassMapping.setTable to set the table name, which is "group_table." This
> comes from the @Table annotation of Group. So far, so good. Then the code
> does some additional processing on the relationship mappings of Group, which
> include the reference to Organization. During the processing of that
> relationship, the code calls MappingInfo.mergeJoinColumn. On line 1367, the
> method calls rel.getTable. The "rel" variable points to the ClassMapping for
> Organization. Remember that prepareUnenhancedClasses hasn't gotten to
> Organization yet--it's still working on Group--and so I assume that this
> Organization mapping was created on-demand. However, rel.getTable returns
> null. The Organization class has a @Table attribute, and I can see that the
> table name has been loaded in the ClassMappingInfo instance attached to the
> ClassMapping for Organization, however the table name has not yet been copied
> from ClassMappingInfo to ClassMapping. Later, the mergeJoinColumn method
> attempts to dereference the null table name and generates the NPE.
> Bottom line: When using the Java 6, runtime enhancer, if class A has a
> reference to class B, and both classes have @Table annotations (at least),
> and class A is processed first, then it produces a NPE.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.