| Craig Russell (JIRA) 2007-07-30, 1:11 am |
|
[ https://issues.apache.org/jira/brow...action_12516272 ]
Craig Russell commented on JDO-509:
-----------------------------------
It looks like the factory CompanyFactoryPMInterface has the wrong teardown classes (left over from when it was persisting ICompany etc.).
public static final Class[] tearDownClasses = new Class[] {
IDentalInsurance.class, IMedicalInsurance.class,
IPartTimeEmployee.class, IFullTimeEmployee.class,
IProject.class, IDepartment.class, ICompany.class
};
These should be PICompany.class etc. since the ICompany.class etc. have no extent and cannot be deleted.
> 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: Michelle Caisse
> Fix For: JDO 2 maintenance release 1
>
> Attachments: company_ds_jdo.patch
>
>
> 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 b
elow. 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(InterfaceMetaDa
ta.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(JDOMetaDataM
anager.java:308)
> [java] at org.jpox.metadata.AbstractClassMetaData. determineSuperClassName(AbstractClassMet
aData.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.
|