[ http://issues.apache.org/jira/browse/JDO-263?page=comments#action_12361980 ]
Michelle Caisse commented on JDO-263: ------------------------------------- Hi Andy, Two comments on this: First, on all other tests where we encountered this issue before, it was sufficient to use the BigDecimal compareTo method to get a match. The values differed only in precision, not in value; the expected values were padded with zeroes to the stored precision. Why is the array case different? Second, I did try rounding the values to the precision of the expected value before doing the match. This is the code shown in the attached patch, but not checked in. In that case, in the second of the two values tested still had two elements that didn't match because the values differed within the precision of the expected value. (With the checked-in code, the test stops after failing with the first tested value.) The result with the patch code is shown in my comment of 04 Jan on this issue. > TestArrayCollections: Field > "org.apache.jdo.tck.pc.fieldtypes.ArrayCollections.ArrayOfObject1" is > declared as a reference type (interface/Object) but no implementation classes > of "java.lang.Object" have been found! > ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- > > Key: JDO-263 > URL: http://issues.apache.org/jira/browse/JDO-263 > Project: JDO > Type: Bug > Components: tck20 > Reporter: Michelle Caisse > Assignee: Andy Jefferson > Attachments: jdo-263.patch > > test(org.apache.jdo.tck.models.fieldtypes.TestArrayCollections)javax.jdo.JDOUserException: > Field "org.apache.jdo.tck.pc.fieldtypes.ArrayCollections.ArrayOfObject1" is > declared as a reference type (interface/Object) but no implementation classes > of "java.lang.Object" have been found! > at > org.jpox.metadata.MetaDataUtils.getImplementationNamesForReferenceField(MetaDataUtils.java:594) > at > org.jpox.store.rdbms.table.ColumnCreator.createColumnsForReferenceField(ColumnCreator.java:184) > at > org.jpox.store.rdbms.table.ColumnCreator.createColumnsForField(ColumnCreator.java:296) > at > org.jpox.store.rdbms.table.ColumnCreator.createColumns(ColumnCreator.java:95) > at org.jpox.store.rdbms.table.ArrayTable.initialize(ArrayTable.java:83) > at > org.jpox.store.rdbms.RDBMSManager$ClassAdder.addClassTablesAndValidate(RDBMSManager.java:2404) > at > org.jpox.store.rdbms.RDBMSManager$ClassAdder.run(RDBMSManager.java:2033) > at > org.jpox.store.rdbms.RDBMSManager$MgmtTransaction.execute(RDBMSManager.java:1893) > at org.jpox.store.rdbms.RDBMSManager.addClasses(RDBMSManager.java:479) > at org.jpox.store.rdbms.RDBMSManager.addClass(RDBMSManager.java:493) > at > org.jpox.store.rdbms.RDBMSManager.getDatastoreClass(RDBMSManager.java:766) > at > org.jpox.state.StateManagerImpl.populateStrategyFields(StateManagerImpl.java:781) > at org.jpox.state.StateManagerImpl.<init>(StateManagerImpl.java:584) > at > org.jpox.AbstractPersistenceManager.internalMakePersistent(AbstractPersistenceManager.java:1076) > at > org.jpox.AbstractPersistenceManager.makePersistent(AbstractPersistenceManager.java:1131) > at > org.apache.jdo.tck.models.fieldtypes.TestArrayCollections.runTest(TestArrayCollections.java:93) > at > org.apache.jdo.tck.models.fieldtypes.TestArrayCollections.test(TestArrayCollections.java:69) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > at org.apache.jdo.tck.JDO_Test.runBare(JDO_Test.java:204) > at > org.apache.jdo.tck.util.BatchTestRunner.start(BatchTestRunner.java:120) > at org.apache.jdo.tck.util.BatchTestRunner.main(BatchTestRunner.java:95) -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira
