db-jdo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Michelle Caisse (JIRA)" <j...@apache.org>
Subject [jira] Updated: (JDO-193) Need new test cases for Map and List where there is no join table; the key is a field of the value type or the value is a field of the key type
Date Fri, 08 Sep 2006 04:08:22 GMT
     [ http://issues.apache.org/jira/browse/JDO-193?page=all ]

Michelle Caisse updated JDO-193:
--------------------------------

    Attachment: JDO-193.patch

The attached patch implements a test for Map mapped without a join table. The test fails:

javax.jdo.JDOUserException: One or more instances could not be made persistent
	at org.jpox.AbstractPersistenceManager.makePersistentAll(AbstractPersistenceManager.java:1293)
	at org.apache.jdo.tck.mapping.CompletenessTestMap.localSetUp(CompletenessTestMap.java:78)
	at org.apache.jdo.tck.JDO_Test.setUp(JDO_Test.java:236)
	at org.apache.jdo.tck.JDO_Test.runBare(JDO_Test.java:252)
	at junit.framework.TestResult$1.protect(TestResult.java:106)
	at junit.framework.TestResult.runProtected(TestResult.java:124)
	at junit.framework.TestResult.run(TestResult.java:109)
	at junit.framework.TestCase.run(TestCase.java:118)
	at junit.framework.TestSuite.runTest(TestSuite.java:208)
	at junit.framework.TestSuite.run(TestSuite.java:203)
	at junit.textui.TestRunner.doRun(TestRunner.java:116)
	at org.apache.jdo.tck.util.BatchTestRunner.doRun(BatchTestRunner.java:107)
	at org.apache.jdo.tck.util.BatchTestRunner.start(BatchTestRunner.java:147)
	at org.apache.jdo.tck.util.BatchTestRunner.main(BatchTestRunner.java:122)
NestedThrowablesStackTrace:
javax.jdo.JDOUserException: Unable to find the field "department" in the class "org.apache.jdo.tck.pc.companyMapWithoutJoin.Person"
with a relationship to the field "org.apache.jdo.tck.pc.companyMapWithoutJoin.Department.roles"
	at org.jpox.store.rdbms.table.ClassTable.initializeSQLAddUniqueConstraintsStatements(ClassTable.java:1994)
	at org.jpox.store.rdbms.table.ClassTable.runSpecifiedCallbacks(ClassTable.java:904)
	at org.jpox.store.rdbms.table.ClassTable.runCallBacks(ClassTable.java:869)
	at org.jpox.store.rdbms.table.ClassTable.addFieldMetaData(ClassTable.java:562)
	at org.jpox.store.rdbms.table.ClassTable.manageClass(ClassTable.java:388)
	at org.jpox.store.rdbms.RDBMSManager$ClassAdder.initializeClassTables(RDBMSManager.java:2869)
	at org.jpox.store.rdbms.RDBMSManager$ClassAdder.addClassTablesAndValidate(RDBMSManager.java:3214)
	at org.jpox.store.rdbms.RDBMSManager$ClassAdder.run(RDBMSManager.java:2457)
	at org.jpox.store.rdbms.RDBMSManager$MgmtTransaction.execute(RDBMSManager.java:2309)
	at org.jpox.store.rdbms.RDBMSManager.addClasses(RDBMSManager.java:725)
	at org.jpox.store.rdbms.RDBMSManager.addClass(RDBMSManager.java:739)
	at org.jpox.store.StoreManager.getDatastoreClass(StoreManager.java:1142)
	at org.jpox.state.StateManagerImpl.populateStrategyFields(StateManagerImpl.java:764)
	at org.jpox.state.StateManagerImpl.<init>(StateManagerImpl.java:565)
	at org.jpox.state.StateManagerFactory.newStateManager(StateManagerFactory.java:105)
	at org.jpox.AbstractPersistenceManager.internalMakePersistent(AbstractPersistenceManager.java:1185)
	at org.jpox.AbstractPersistenceManager.makePersistent(AbstractPersistenceManager.java:1241)
	at org.jpox.AbstractPersistenceManager.makePersistentAll(AbstractPersistenceManager.java:1283)
	at org.apache.jdo.tck.mapping.CompletenessTestMap.localSetUp(CompletenessTestMap.java:78)
	at org.apache.jdo.tck.JDO_Test.setUp(JDO_Test.java:236)
	at org.apache.jdo.tck.JDO_Test.runBare(JDO_Test.java:252)
	at junit.framework.TestResult$1.protect(TestResult.java:106)
	at junit.framework.TestResult.runProtected(TestResult.java:124)
	at junit.framework.TestResult.run(TestResult.java:109)
	at junit.framework.TestCase.run(TestCase.java:118)
	at junit.framework.TestSuite.runTest(TestSuite.java:208)
	at junit.framework.TestSuite.run(TestSuite.java:203)
	at junit.textui.TestRunner.doRun(TestRunner.java:116)
	at org.apache.jdo.tck.util.BatchTestRunner.doRun(BatchTestRunner.java:107)
	at org.apache.jdo.tck.util.BatchTestRunner.start(BatchTestRunner.java:147)
	at org.apache.jdo.tck.util.BatchTestRunner.main(BatchTestRunner.java:122

> Need new test cases for Map and List where there is no join table; the key is a field
of the value type or  the value is a field of the key type
> ------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: JDO-193
>                 URL: http://issues.apache.org/jira/browse/JDO-193
>             Project: JDO
>          Issue Type: Test
>          Components: tck20
>    Affects Versions: JDO 2 final
>         Environment: TCK
>            Reporter: Craig Russell
>         Assigned To: Michelle Caisse
>             Fix For: JDO 2 maintenance release 1
>
>         Attachments: JDO-193.patch
>
>
> JDO allows mapping of Maps where there is no join table. The metadata for the Employee/Department
mapping uses the mapped-by attribute of the map element:
> <class name="Department">
> <field name="employees" mapped-by="dept">
> <key mapped-by="id"/>
> </field>
> </class>
> <class name="Employee">
> <field name="id" column="ID"/>
> <field name="dept" column="DEPT"/>
> </class>
> Another mapping would have the key of the Map be the Employee and the value be the id.

> We should probably define a separate package for this mapping, as there is some confusion
in using parts of the Company model where we have changed a significant part of the model.

-- 
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

        

Mime
View raw message