I have an Entity that has a Set<String> and a boolean property. The Entity enhances just fine, but when I try to do any sort of data operations with the Entity, I get a ClassCastException (see stack trace below). Removing the boolean property from the Entity makes this error go away.
To reproduce, you can download the sample code attached to this bug (http://code.google.com/p/googleappengine/issues/detail?id=2541), add a boolean property to the UserImpl object, and then run the JUnit test called "UserDAOTests.java". Here's the stack trace: java.lang.ClassCastException: java.lang.Boolean cannot be cast to java.util.Collection at org.datanucleus.store.appengine.TypeConversionUtils.pojoValueToDatastoreValue (TypeConversionUtils.java:619) at org.datanucleus.store.appengine.DatastoreFieldManager.storeObjectField (DatastoreFieldManager.java:782) at org.datanucleus.store.appengine.DatastoreFieldManager.storeBooleanField (DatastoreFieldManager.java:915) at org.datanucleus.state.AbstractStateManager.providedBooleanField (AbstractStateManager.java:911) at com.sappenin.appengine.bugfix.server.model.impl.UserImpl.jdoProvideField (UserImpl.java) at com.sappenin.appengine.bugfix.server.model.impl.UserImpl.jdoProvideFields (UserImpl.java) at org.datanucleus.state.JDOStateManagerImpl.provideFields (JDOStateManagerImpl.java:2715) at org.datanucleus.store.appengine.DatastorePersistenceHandler.insertPreProcess (DatastorePersistenceHandler.java:318) at org.datanucleus.store.appengine.DatastorePersistenceHandler.insertObjects (DatastorePersistenceHandler.java:236) at org.datanucleus.store.appengine.DatastorePersistenceHandler.insertObject (DatastorePersistenceHandler.java:225) at org.datanucleus.state.JDOStateManagerImpl.internalMakePersistent (JDOStateManagerImpl.java:3185) at org.datanucleus.state.JDOStateManagerImpl.flush (JDOStateManagerImpl.java:4513) at org.datanucleus.ObjectManagerImpl.flushInternal (ObjectManagerImpl.java:2814) at org.datanucleus.ObjectManagerImpl.flush(ObjectManagerImpl.java: 2754) at org.datanucleus.ObjectManagerImpl.preCommit(ObjectManagerImpl.java: 2893) at org.datanucleus.TransactionImpl.internalPreCommit (TransactionImpl.java:369) at org.datanucleus.TransactionImpl.commit(TransactionImpl.java:256) at org.datanucleus.jpa.EntityTransactionImpl.commit (EntityTransactionImpl.java:104) at com.sappenin.appengine.bugfix.server.model.test.UserDAOTests.testSingleCreate (UserDAOTests.java:70) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at junit.framework.TestCase.runTest(TestCase.java:168) at junit.framework.TestCase.runBare(TestCase.java:134) at junit.framework.TestResult$1.protect(TestResult.java:110) at junit.framework.TestResult.runProtected(TestResult.java:128) at junit.framework.TestResult.run(TestResult.java:113) at junit.framework.TestCase.run(TestCase.java:124) at junit.framework.TestSuite.runTest(TestSuite.java:232) at junit.framework.TestSuite.run(TestSuite.java:227) at org.junit.internal.runners.JUnit38ClassRunner.run (JUnit38ClassRunner.java:79) at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run (JUnit4TestReference.java:46) at org.eclipse.jdt.internal.junit.runner.TestExecution.run (TestExecution.java:38) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests (RemoteTestRunner.java:467) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests (RemoteTestRunner.java:683) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run (RemoteTestRunner.java:390) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main (RemoteTestRunner.java:197)
-- You received this message because you are subscribed to the Google Groups "Google App Engine for Java" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en.
