Apache JDO Project - [jira] Commented: (JDO-517) NPE on enhancement of classes with

This is Interesting: Free IT Magazines  
Home > Archive > Apache JDO Project > August 2007 > [jira] Commented: (JDO-517) NPE on enhancement of classes with





You are viewing an archived Text-only version of the thread. To view this thread in it's original format and/or if you want to reply to this thread please [click here]

Author [jira] Commented: (JDO-517) NPE on enhancement of classes with
Andy Jefferson (JIRA)

2007-08-15, 7:11 am


[ https://issues.apache.org/jira/brow...action_12519893 ]

Andy Jefferson commented on JDO-517:
------------------------------------

> If a class is persistence-capable, by default fields of a particular type are persistent.
> Therefore, to use properties, fields must be marked not persistent.


This is an imposition on the user IMHO. When a property is marked as persistent (and should have a field-name attribute defined according to the spec 18.14 - which they don't in this case) then that should automatically make the associated field NotPersis
tent with no need for marking it. You can't persistent both the field and the property (jdoSetXXX enhanced methods have to handle field OR property.

I also don't see any NPE. I see
Class org.apache.jdo.tck.pc.companyAnnotatedPC.PCDSInsurance has property fieldRepr declared in MetaData, but its setter method doesnt exist in the class!

which is simply due to following JPA policy on persistent fields/properties - either all fields, or all properties. So if there is some property it finds all un-annotated getters and marks those as persistent - but since JDO is going a different route it
needs different handling. Will take a while to allow for JDO rules on persistent props alongside catering for what we already cater for.


> NPE on enhancement of classes with persistent properties
> --------------------------------------------------------
>
> Key: JDO-517
> URL: https://issues.apache.org/jira/browse/JDO-517
> Project: JDO
> Issue Type: Bug
> Components: tck2
> Affects Versions: JDO 2 maintenance release 1
> Reporter: Michelle Caisse
> Assignee: Andy Jefferson
>
> To reproduce, edit project.propeties, go to the end of the file, and edit out the comment and blank lines so that the classes in the companyAnnotatedPC package are included in the argument list to the enhancer.
> 11:39:16,031 (main) ERROR [JPOX.Enhancer] - An error was encountered reading the specified input files. Please consult the log for details. The following may help : Errors were encountered when loading the specified MetaData files and classes. See the n

ested exceptions for details
> Errors were encountered when loading the specified MetaData files and classes. See the nested exceptions for details
> org.jpox.exceptions.JPOXUserException: Errors were encountered when loading the specified MetaData files and classes. See the nested exceptions for details
> at org.jpox.metadata.MetaDataManager.initialise(MetaDataManager.java:299)
> at org.jpox.enhancer.JPOXEnhancer.getFileMetaDataForInput(JPOXEnhancer.java:724)
> at org.jpox.enhancer.JPOXEnhancer.main(JPOXEnhancer.java:533)
> Caused by: java.lang.NullPointerException
> at org.jpox.metadata.annotations.JDOAnnotationReader. processFieldAnnotations(JDOAnnotationRea
der.java:1594)
> at org.jpox.metadata.annotations.AbstractAnnotationReader. getMetaDataForClass(AbstractAnnotationRe
ader.java:211)
> at org.jpox.metadata.annotations.AnnotationManagerImpl. getMetaDataForClass(AnnotationManagerImp
l.java:133)
> at org.jpox.metadata.MetaDataManager.loadAnnotationsForClass(MetaDataManager.java:1729)
> at org.jpox.metadata.MetaDataManager.initialise(MetaDataManager.java:265)
> ... 2 more
> Nested Throwables StackTrace:
> java.lang.NullPointerException
> at org.jpox.metadata.annotations.JDOAnnotationReader. processFieldAnnotations(JDOAnnotationRea
der.java:1594)
> at org.jpox.metadata.annotations.AbstractAnnotationReader. getMetaDataForClass(AbstractAnnotationRe
ader.java:211)
> at org.jpox.metadata.annotations.AnnotationManagerImpl. getMetaDataForClass(AnnotationManagerImp
l.java:133)
> at org.jpox.metadata.MetaDataManager.loadAnnotationsForClass(MetaDataManager.java:1729)
> at org.jpox.metadata.MetaDataManager.initialise(MetaDataManager.java:265)
> at org.jpox.enhancer.JPOXEnhancer.getFileMetaDataForInput(JPOXEnhancer.java:724)
> at org.jpox.enhancer.JPOXEnhancer.main(JPOXEnhancer.java:533)
> java.lang.NullPointerException
> at org.jpox.metadata.annotations.JDOAnnotationReader. processFieldAnnotations(JDOAnnotationRea
der.java:1594)
> at org.jpox.metadata.annotations.AbstractAnnotationReader. getMetaDataForClass(AbstractAnnotationRe
ader.java:211)
> at org.jpox.metadata.annotations.AnnotationManagerImpl. getMetaDataForClass(AnnotationManagerImp
l.java:133)
> at org.jpox.metadata.MetaDataManager.loadAnnotationsForClass(MetaDataManager.java:1729)
> at org.jpox.metadata.MetaDataManager.initialise(MetaDataManager.java:265)
> at org.jpox.enhancer.JPOXEnhancer.getFileMetaDataForInput(JPOXEnhancer.java:724)
> at org.jpox.enhancer.JPOXEnhancer.main(JPOXEnhancer.java:533)


--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Sponsored Links






Free braindumps | Software forum | Database administration forum

Copyright 2003 - 2008 webservertalk.com