db-jdo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Craig Russell (JIRA)" <j...@apache.org>
Subject [jira] Commented: (JDO-517) NPE on enhancement of classes with persistent properties
Date Tue, 18 Sep 2007 17:34:43 GMT

    [ https://issues.apache.org/jira/browse/JDO-517?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12528459
] 

Craig Russell commented on JDO-517:
-----------------------------------

> public void setFundedEmps(Set employees) { 
>     this._fundedEmps = (_fundedEmps != null) ? new HashSet(employees) : null; 
> } 

> If the implementation passes in null (like it does when nulling non-PK fields) then the
TCK code tries to create HashSet(null) which ends in tears. All setters for collections/maps
need to allow for null being passed in.

This is a typo. The check is intended to result in either a new HashSet or null based on whether
the parameter (not the current value of the Set) is null. Should be:

public void setFundedEmps(Set employees) { 
    this._fundedEmps = (employees != null) ? new HashSet(employees) : null; 
} 


> 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: Michelle Caisse
>
> 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 nested 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(JDOAnnotationReader.java:1594)
> 	at org.jpox.metadata.annotations.AbstractAnnotationReader.getMetaDataForClass(AbstractAnnotationReader.java:211)
> 	at org.jpox.metadata.annotations.AnnotationManagerImpl.getMetaDataForClass(AnnotationManagerImpl.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(JDOAnnotationReader.java:1594)
> 	at org.jpox.metadata.annotations.AbstractAnnotationReader.getMetaDataForClass(AbstractAnnotationReader.java:211)
> 	at org.jpox.metadata.annotations.AnnotationManagerImpl.getMetaDataForClass(AnnotationManagerImpl.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(JDOAnnotationReader.java:1594)
> 	at org.jpox.metadata.annotations.AbstractAnnotationReader.getMetaDataForClass(AbstractAnnotationReader.java:211)
> 	at org.jpox.metadata.annotations.AnnotationManagerImpl.getMetaDataForClass(AnnotationManagerImpl.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.


Mime
View raw message