Thanks, Andy. This fix lets us get to the next step in some of the
fieldtypes tests.
Now we get an error with collection types where the field is embedded
but jpox is looking for a table for the field:
5)
test(org.apache.jdo.tck.models.fieldtypes.TestCollectionCollections)javax.jdo.JDODataStoreException:
Iteration request failed : SELECT THIS.BIGDECIMAL_ELE FROM
applicationidentity0.COLLECTION_OF_BIG_DECIMAL19 THIS WHERE 1 =
THIS.IDENTIFIER_OID
at
org.jpox.store.rdbms.scostore.AbstractSetStore.iterator(AbstractSetStore.java:143)
at org.jpox.sco.SCOUtils.updateStoreWithCollection(SCOUtils.java:247)
at
org.jpox.store.mapping.CollectionMapping.postUpdate(CollectionMapping.java:235)
at
org.jpox.store.rdbms.request.UpdateRequest.execute(UpdateRequest.java:266)
at org.jpox.store.rdbms.table.ClassTable.update(ClassTable.java:1795)
at org.jpox.store.StoreManager.update(StoreManager.java:710)
at org.jpox.state.StateManagerImpl.flush(StateManagerImpl.java:3965)
at
org.jpox.AbstractPersistenceManager.flush(AbstractPersistenceManager.java:2841)
at org.jpox.NonmanagedTransaction.commit(NonmanagedTransaction.java:431)
at
org.apache.jdo.tck.models.fieldtypes.TestCollectionCollections.runTest(TestCollectionCollections.java:97)
at
org.apache.jdo.tck.models.fieldtypes.TestCollectionCollections.test(TestCollectionCollections.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:203)
at
org.apache.jdo.tck.util.BatchTestRunner.start(BatchTestRunner.java:128)
at
org.apache.jdo.tck.util.BatchTestRunner.main(BatchTestRunner.java:106)
NestedThrowablesStackTrace:
ERROR 42X05: Table 'APPLICATIONIDENTITY0.COLLECTION_OF_BIG_DECIMAL19'
does not exist.
at
org.apache.derby.iapi.error.StandardException.newException(StandardException.java)
at
org.apache.derby.impl.sql.compile.FromBaseTable.bindTableDescriptor(FromBaseTable.java)
at
org.apache.derby.impl.sql.compile.FromBaseTable.bindNonVTITables(FromBaseTable.java)
at org.apache.derby.impl.sql.compile.FromList.bindTables(FromList.java)
at
org.apache.derby.impl.sql.compile.SelectNode.bindNonVTITables(SelectNode.java)
at
org.apache.derby.impl.sql.compile.DMLStatementNode.bindTables(DMLStatementNode.java)
at
org.apache.derby.impl.sql.compile.DMLStatementNode.bind(DMLStatementNode.java)
at
org.apache.derby.impl.sql.compile.ReadCursorNode.bind(ReadCursorNode.java)
at org.apache.derby.impl.sql.compile.CursorNode.bind(CursorNode.java)
at
org.apache.derby.impl.sql.GenericStatement.prepMinion(GenericStatement.java)
at
org.apache.derby.impl.sql.GenericStatement.prepare(GenericStatement.java)
at
org.apache.derby.impl.sql.conn.GenericLanguageConnectionContext.prepareInternalStatement(GenericLanguageConnectionContext.java)
at
org.apache.derby.impl.jdbc.EmbedPreparedStatement.<init>(EmbedPreparedStatement.java)
at
org.apache.derby.impl.jdbc.EmbedPreparedStatement20.<init>(EmbedPreparedStatement20.java)
at
org.apache.derby.impl.jdbc.EmbedPreparedStatement30.<init>(EmbedPreparedStatement30.java)
at
org.apache.derby.jdbc.Driver30.newEmbedPreparedStatement(Driver30.java)
at
org.apache.derby.impl.jdbc.EmbedConnection.prepareStatement(EmbedConnection.java)
at
org.apache.derby.impl.jdbc.EmbedConnection.prepareStatement(EmbedConnection.java)
at
com.mchange.v2.c3p0.impl.NewProxyConnection.prepareStatement(NewProxyConnection.java:303)
at org.jpox.store.StatementText.prepareStatement(StatementText.java:236)
at
org.jpox.store.rdbms.scostore.AbstractSetStore.iterator(AbstractSetStore.java:118)
at org.jpox.sco.SCOUtils.updateStoreWithCollection(SCOUtils.java:247)
at
org.jpox.store.mapping.CollectionMapping.postUpdate(CollectionMapping.java:235)
at
org.jpox.store.rdbms.request.UpdateRequest.execute(UpdateRequest.java:266)
at org.jpox.store.rdbms.table.ClassTable.update(ClassTable.java:1795)
at org.jpox.store.StoreManager.update(StoreManager.java:710)
at org.jpox.state.StateManagerImpl.flush(StateManagerImpl.java:3965)
at
org.jpox.AbstractPersistenceManager.flush(AbstractPersistenceManager.java:2841)
at org.jpox.NonmanagedTransaction.commit(NonmanagedTransaction.java:431)
at
org.apache.jdo.tck.models.fieldtypes.TestCollectionCollections.runTest(TestCollectionCollections.java:97)
at
org.apache.jdo.tck.models.fieldtypes.TestCollectionCollections.test(TestCollectionCollections.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:203)
at
org.apache.jdo.tck.util.BatchTestRunner.start(BatchTestRunner.java:128)
at
org.apache.jdo.tck.util.BatchTestRunner.main(BatchTestRunner.java:106)
The .jdo is
...
<field name="CollectionOfBigDecimal19" >
<collection element-type="java.math.BigDecimal" embedded-element="true">
</collection>
...
And the orm:
...
<field name="CollectionOfBigDecimal19"
column="COLLECTION_OF_BIG_DECIMAL19">
</field>
...
-- Michelle
Andy Jefferson wrote:
At http://www.jpox.org/downloads/nightly/, the last modified date on the
builds is 08-Jul. Is there somewhere that I can get the build with this
change?
Hi Michelle,
seems the build hasn't run successfully for the last 3 nights :-(.
I've set it running, so should be updated sometime in the next 30 mins - the
jpox.jar is there now and the enhancer jar will appear soon.
PS It's now being built against the latest API20 jar (the inclusion of
ObjectIdentity)