[ https://issues.apache.org/jira/browse/OPENJPA-1429?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Donald Woods closed OPENJPA-1429. --------------------------------- Resolution: Cannot Reproduce Fix Version/s: 1.2.1 marking as Cannot Reproduce instead of Fixed > Build-time enhancement fails with "NoSuchFieldException" for valid field in domain class > ---------------------------------------------------------------------------------------- > > Key: OPENJPA-1429 > URL: https://issues.apache.org/jira/browse/OPENJPA-1429 > Project: OpenJPA > Issue Type: Bug > Components: jpa > Affects Versions: 1.2.1 > Environment: Windows XP, JDK 1.5.0_19, Ant 1.7.1. > Reporter: David M. Karr > Assignee: Rick Curtis > Fix For: 1.2.1 > > Attachments: build-dyncontent.properties, build.xml, Catalog.java, Category.java, orm.xml, persistence.xml > > > I'm trying to do build-time enhancement on two simple classes, but I'm getting "NoSuchFieldException" for a field in the domain class that matches the instance variable name and the property name specified by the getter/setter. I'll attach all the relevant files. > Here is the build output: > 15 dynamicContent TRACE [main] openjpa.Runtime - Setting the following properties from "file:/c:/Documents%20and%20Settings/dk068x/workspace3/DynamicContent/src/META-INF/persistence.xml" into configuration: {openjpa.Log=DefaultLevel=TRACE, openjpa.MetaDataFactory=jpa(Resources=com/att/ecom/dynamiccontent/domain/orm.xml), javax.persistence.provider=org.apache.openjpa.persistence.PersistenceProviderImpl, openjpa.ConnectionFactoryMode=managed, openjpa.TransactionMode=managed, openjpa.ConnectionFactoryName=jdbc/catalog, openjpa.Id=dynamicContent} > 31 dynamicContent TRACE [main] openjpa.Runtime - No cache marshaller found for id org.apache.openjpa.conf.MetaDataCacheMaintenance. > 125 dynamicContent TRACE [main] openjpa.Runtime - No cache marshaller found for id org.apache.openjpa.conf.MetaDataCacheMaintenance. > 140 dynamicContent TRACE [main] openjpa.Tool - Enhancer running on type "class com.att.ecom.dynamiccontent.domain.Catalog". > 187 dynamicContent TRACE [main] openjpa.MetaData - Loading metadata for "class com.att.ecom.dynamiccontent.domain.Catalog" under mode "[META][QUERY]". > 187 dynamicContent TRACE [main] openjpa.MetaData - Scanning resource "com/att/ecom/dynamiccontent/domain/orm.xml" for persistent types. > 187 dynamicContent TRACE [main] openjpa.MetaData - Scan of "com/att/ecom/dynamiccontent/domain/orm.xml" found persistent types [Ljava.lang.String;@19eda2c. > 187 dynamicContent TRACE [main] openjpa.MetaData - Mapping resource location "file:/c:/Documents%20and%20Settings/dk068x/workspace3/DynamicContent/src/com/att/ecom/dynamiccontent/domain/orm.xml" to persistent types "[com.att.ecom.dynamiccontent.domain.Catalog, com.att.ecom.dynamiccontent.domain.Category]". > 187 dynamicContent TRACE [main] openjpa.MetaData - Scanning resource "META-INF/orm.xml" for persistent types. > 187 dynamicContent TRACE [main] openjpa.MetaData - parsePersistentTypeNames() found [com.att.ecom.dynamiccontent.domain.Catalog, com.att.ecom.dynamiccontent.domain.Category]. > 187 dynamicContent TRACE [main] openjpa.MetaData - Found 2 classes with metadata in 0 milliseconds. > 219 dynamicContent TRACE [main] openjpa.MetaData - Parsing resource "file:/c:/Documents%20and%20Settings/dk068x/workspace3/DynamicContent/src/com/att/ecom/dynamiccontent/domain/orm.xml". > 265 dynamicContent TRACE [main] openjpa.MetaData - Parsing class "com.att.ecom.dynamiccontent.domain.Catalog". > 297 dynamicContent TRACE [main] openjpa.MetaData - Generating default metadata for type "com.att.ecom.dynamiccontent.domain.Catalog". > 297 dynamicContent TRACE [main] openjpa.MetaData - Using reflection for metadata generation. > 297 dynamicContent TRACE [main] openjpa.MetaData - Parsing class "com.att.ecom.dynamiccontent.domain.Catalog". > 328 dynamicContent TRACE [main] openjpa.MetaData - An exception occurred while parsing file:/c:/Documents%20and%20Settings/dk068x/workspace3/DynamicContent/src/com/att/ecom/dynamiccontent/domain/orm.xml at location Line: 14, C: 39. This exception has been translated to a SAXException, and will be re-thrown. The original exception is being logged along with this message. > java.lang.NoSuchFieldException: displayName > at java.lang.Class.getDeclaredField(Class.java:1854) > at org.apache.openjpa.lib.util.J2DoPrivHelper$6.run(J2DoPrivHelper.java:253) > at java.security.AccessController.doPrivileged(Native Method) > at org.apache.openjpa.persistence.XMLPersistenceMetaDataParser.parseField(XMLPersistenceMetaDataParser.java:1120) > at org.apache.openjpa.persistence.XMLPersistenceMetaDataParser.startStrategy(XMLPersistenceMetaDataParser.java:1205) > at org.apache.openjpa.persistence.XMLPersistenceMetaDataParser.startClassElement(XMLPersistenceMetaDataParser.java:624) > at org.apache.openjpa.lib.meta.CFMetaDataParser.startElement(CFMetaDataParser.java:111) > at org.apache.openjpa.lib.meta.XMLMetaDataParser.startElement(XMLMetaDataParser.java:432) > at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown Source) > at org.apache.xerces.impl.xs.XMLSchemaValidator.startElement(Unknown Source) > at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown Source) > at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source) > at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source) > at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source) > at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source) > at org.apache.xerces.parsers.XMLParser.parse(Unknown Source) > at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source) > at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source) > at org.apache.xerces.jaxp.SAXParserImpl.parse(Unknown Source) > at org.apache.openjpa.lib.meta.XMLMetaDataParser.parseNewResource(XMLMetaDataParser.java:376) > at org.apache.openjpa.lib.meta.XMLMetaDataParser.parse(XMLMetaDataParser.java:318) > at org.apache.openjpa.lib.meta.XMLMetaDataParser.parse(XMLMetaDataParser.java:295) > at org.apache.openjpa.lib.meta.XMLMetaDataParser.parse(XMLMetaDataParser.java:268) > at org.apache.openjpa.persistence.PersistenceMetaDataFactory.parseXML(PersistenceMetaDataFactory.java:247) > at org.apache.openjpa.persistence.PersistenceMetaDataFactory.load(PersistenceMetaDataFactory.java:198) > at org.apache.openjpa.meta.MetaDataRepository.getMetaDataInternal(MetaDataRepository.java:474) > at org.apache.openjpa.meta.MetaDataRepository.getMetaData(MetaDataRepository.java:294) > at org.apache.openjpa.enhance.PCEnhancer.(PCEnhancer.java:249) > at org.apache.openjpa.enhance.PCEnhancer.run(PCEnhancer.java:4493) > at org.apache.openjpa.ant.PCEnhancerTask.executeOn(PCEnhancerTask.java:89) > at org.apache.openjpa.lib.ant.AbstractTask.execute(AbstractTask.java:172) > at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) > at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:585) > at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) > at org.apache.tools.ant.Task.perform(Task.java:348) > at org.apache.tools.ant.Target.execute(Target.java:357) > at org.apache.tools.ant.Target.performTasks(Target.java:385) > at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1337) > at org.apache.tools.ant.Project.executeTarget(Project.java:1306) > at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) > at org.apache.tools.ant.Project.executeTargets(Project.java:1189) > at org.apache.tools.ant.Main.runBuild(Main.java:758) > at org.apache.tools.ant.Main.startAnt(Main.java:217) > at org.apache.tools.ant.launch.Launcher.run(Launcher.java:257) > at org.apache.tools.ant.launch.Launcher.main(Launcher.java:104) -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.