Enhancement failure on persistent interface that extends non-persistent 
interface
---------------------------------------------------------------------------------

                 Key: JDO-509
                 URL: https://issues.apache.org/jira/browse/JDO-509
             Project: JDO
          Issue Type: Bug
          Components: tck2
            Reporter: Michelle Caisse
            Assignee: Andy Jefferson
             Fix For: JDO 2 maintenance release 1


Imagine that the existing interface company.ICompany is not persistent and 
there is a new interface company.PICompany that extends ICompany. Existing xml 
metadata is modified to refer to PICompany rather than ICompany. On 
enhancement, we get the error below.  Craig suggests that using the reflective 
"getDeclaredMethod" instead of the reflective  "getMethod" could give this 
error. These are changes that we would like to check in for the 2.1 maintenance 
release.

   [java] An error was encountered reading the specified input files. Please 
consult the log for details. The following may help : Class 
org.apache.jdo.tck.pc.
company.IPCompany has property null.companyid declared in MetaData, but this 
method doesnt exist in the class!
   [java] Exception in thread "main" Class 
org.apache.jdo.tck.pc.company.IPCompany has property null.companyid declared in 
MetaData, but this method doesnt exist in the class!
   [java] org.jpox.metadata.InvalidMetaDataException: Class 
org.apache.jdo.tck.pc.company.IPCompany has property null.companyid declared in 
MetaData, but this method doesnt exist in the class!
   [java]      at 
org.jpox.metadata.InterfaceMetaData.populatePropertyMetaData(InterfaceMetaData.java:538)
   [java]      at 
org.jpox.metadata.InterfaceMetaData.populate(InterfaceMetaData.java:436)
   [java]      at 
org.jpox.metadata.MetaDataManager.populateFileMetaData(MetaDataManager.java:1590)
   [java]      at 
org.jpox.metadata.JDOMetaDataManager.loadMetaDataForClass(JDOMetaDataManager.java:615)
   [java]      at 
org.jpox.metadata.JDOMetaDataManager.getMetaDataForClassInternal(JDOMetaDataManager.java:308)
   [java]      at 
org.jpox.metadata.AbstractClassMetaData.determineSuperClassName(AbstractClassMetaData.java:618)
   [java]      at 
org.jpox.metadata.InterfaceMetaData.populate(InterfaceMetaData.java:421)
   [java]      at 
org.jpox.metadata.MetaDataManager.populateFileMetaData(MetaDataManager.java:1590)
   [java]      at 
org.jpox.metadata.MetaDataManager.initialise(MetaDataManager.java:313)
   [java]      at 
org.jpox.enhancer.JPOXEnhancer.getFileMetaDataForInput(JPOXEnhancer.java:716)
   [java]      at org.jpox.enhancer.JPOXEnhancer.main(JPOXEnhancer.java:531) 

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

Reply via email to