Re: How to annotate a column to represent int unsigned datatype ?

2012-07-01 Thread Muhammad Gelbana
First of all, thank you both for your time :)

Michael, I'm very sorry it didn't work. I can't figure out the difference
between sqlType and jdbcType !

I tried your suggestions with different flavors such as (INTEGER(11)
UNSIGNED and switched cases) but none worked.

@Column(sqlType = INT(11) UNSIGNED, defaultValue = 1)
private Member member;


But all attempts brought up that exception (Or what reflects the sqlType
value), I alos tried these combinations with jdbcType but didn't too:
*(TclRequest2 is the class with the mapping I'm trying to test and the main
method initializing the test)*

javax.jdo.JDOFatalInternalException: SQL type INT(11) UNSIGNED declared for
field of java type java.lang.Integer cant be mapped for this datastore.
at
org.datanucleus.api.jdo.NucleusJDOHelper.getJDOExceptionForNucleusException(NucleusJDOHelper.java:562)
at
org.datanucleus.api.jdo.JDOPersistenceManager.jdoMakePersistent(JDOPersistenceManager.java:745)
at
org.datanucleus.api.jdo.JDOPersistenceManager.makePersistent(JDOPersistenceManager.java:765)
at
com.skycomm.services.dao.impl.GenericDAOImpl.saveAndDetach(GenericDAOImpl.java:267)
at com.skycomm.ixload.TclRequest2.main(TclRequest2.java:58)
NestedThrowablesStackTrace:
SQL type INT(11) UNSIGNED declared for field of java type java.lang.Integer
cant be mapped for this datastore.
org.datanucleus.exceptions.NucleusException: SQL type INT(11) UNSIGNED
declared for field of java type java.lang.Integer cant be mapped for this
datastore.
at
org.datanucleus.store.rdbms.mapping.RDBMSMappingManager.getDatastoreMappingClass(RDBMSMappingManager.java:305)
at
org.datanucleus.store.rdbms.mapping.RDBMSMappingManager.createDatastoreMapping(RDBMSMappingManager.java:564)
at
org.datanucleus.store.mapped.mapping.PersistableMapping.prepareDatastoreMapping(PersistableMapping.java:246)
at
org.datanucleus.store.mapped.mapping.PersistableMapping.initialize(PersistableMapping.java:113)
at
org.datanucleus.store.mapped.mapping.MappingFactory.createMapping(MappingFactory.java:97)
at
org.datanucleus.store.mapped.mapping.AbstractMappingManager.getMapping(AbstractMappingManager.java:255)
at
org.datanucleus.store.rdbms.table.ClassTable.manageMembers(ClassTable.java:540)
at
org.datanucleus.store.rdbms.table.ClassTable.manageClass(ClassTable.java:420)
at
org.datanucleus.store.rdbms.table.ClassTable.initializeForClass(ClassTable.java:1080)
at
org.datanucleus.store.rdbms.table.ClassTable.initialize(ClassTable.java:267)
at
org.datanucleus.store.rdbms.RDBMSStoreManager$ClassAdder.initializeClassTables(RDBMSStoreManager.java:2452)
at
org.datanucleus.store.rdbms.RDBMSStoreManager$ClassAdder.addClassTablesAndValidate(RDBMSStoreManager.java:2359)
at
org.datanucleus.store.rdbms.RDBMSStoreManager$ClassAdder.run(RDBMSStoreManager.java:2009)
at
org.datanucleus.store.rdbms.AbstractSchemaTransaction.execute(AbstractSchemaTransaction.java:113)
at
org.datanucleus.store.rdbms.RDBMSStoreManager.addClasses(RDBMSStoreManager.java:820)
at
org.datanucleus.store.AbstractStoreManager.addClass(AbstractStoreManager.java:1163)
at
org.datanucleus.store.mapped.MappedStoreManager.getDatastoreClass(MappedStoreManager.java:383)
at
org.datanucleus.store.rdbms.fieldmanager.DynamicSchemaFieldManager.storeObjectField(DynamicSchemaFieldManager.java:98)
at
org.datanucleus.state.AbstractStateManager.providedObjectField(AbstractStateManager.java:1452)
at com.skycomm.ixload.TclRequest2.jdoProvideField(TclRequest2.java)
at com.skycomm.ixload.TclRequest2.jdoProvideFields(TclRequest2.java)
at
org.datanucleus.state.AbstractStateManager.provideFields(AbstractStateManager.java:1520)
at
org.datanucleus.store.rdbms.RDBMSPersistenceHandler.checkForSchemaUpdatesForFieldsOfObject(RDBMSPersistenceHandler.java:634)
at
org.datanucleus.store.rdbms.RDBMSPersistenceHandler.insertObject(RDBMSPersistenceHandler.java:119)
at
org.datanucleus.state.JDOStateManager.internalMakePersistent(JDOStateManager.java:2371)
at
org.datanucleus.state.JDOStateManager.makePersistent(JDOStateManager.java:2347)
at
org.datanucleus.ObjectManagerImpl.persistObjectInternal(ObjectManagerImpl.java:1798)
at
org.datanucleus.ObjectManagerImpl.persistObjectWork(ObjectManagerImpl.java:1647)
at
org.datanucleus.ObjectManagerImpl.persistObject(ObjectManagerImpl.java:1504)
at
org.datanucleus.api.jdo.JDOPersistenceManager.jdoMakePersistent(JDOPersistenceManager.java:740)
at
org.datanucleus.api.jdo.JDOPersistenceManager.makePersistent(JDOPersistenceManager.java:765)
at
com.skycomm.services.dao.impl.GenericDAOImpl.saveAndDetach(GenericDAOImpl.java:267)
at com.skycomm.ixload.TclRequest2.main(TclRequest2.java:58)
Exception in thread main java.lang.NullPointerException
at com.skycomm.ixload.TclRequest2.main(TclRequest2.java:58)


Thanks a lot :)

On Sun, Jul 1, 2012 at 2:04 PM, Michael Bouschen 
michael.bousc...@akquinet.de wrote:

 Hi,

 I'm not sure whether I understand he issue correctly. What I understood is
 that you want Datanucleus to create the table for your class Test. But the
 generated table 

Re: How to annotate a column to represent int unsigned datatype ?

2012-07-01 Thread Muhammad Gelbana
SQL type INT(11) UNSIGNED declared for field of java type java.lang.Long
cant be mapped for this datastore.
:)

This is killing me ! ehehehhe

On Sun, Jul 1, 2012 at 11:22 PM, Michael Bouschen 
michael.bousc...@akquinet.de wrote:

 Hi,

 I'm wondering why the error message says the SQL type INT(11) UNSIGNED
 declared for field of java type java.lang.Integer. So maybe the error is
 not on the annotations for class Test, but for the referred class Member.
 What is the primary key for class member? You cannot use an Integer or int,
 because INT(11) may hold values that cause an overflow. So the primary key
 field in Member should be a long field.

 Regards Michael

  First of all, thank you both for your time :)

 Michael, I'm very sorry it didn't work. I can't figure out the difference
 between sqlType and jdbcType !

 I tried your suggestions with different flavors such as (INTEGER(11)
 UNSIGNED and switched cases) but none worked.

 @Column(sqlType = INT(11) UNSIGNED, defaultValue = 1)
 private Member member;


 But all attempts brought up that exception (Or what reflects the sqlType
 value), I alos tried these combinations with jdbcType but didn't too:
 *(TclRequest2 is the class with the mapping I'm trying to test and the
 main
 method initializing the test)*


 javax.jdo.**JDOFatalInternalException: SQL type INT(11) UNSIGNED
 declared for
 field of java type java.lang.Integer cant be mapped for this datastore.
 at
 org.datanucleus.api.jdo.**NucleusJDOHelper.**
 getJDOExceptionForNucleusExcep**tion(NucleusJDOHelper.java:**562)
 at
 org.datanucleus.api.jdo.**JDOPersistenceManager.**jdoMakePersistent(**
 JDOPersistenceManager.java:**745)
 at
 org.datanucleus.api.jdo.**JDOPersistenceManager.**makePersistent(**
 JDOPersistenceManager.java:**765)
 at
 com.skycomm.services.dao.impl.**GenericDAOImpl.saveAndDetach(**
 GenericDAOImpl.java:267)
 at com.skycomm.ixload.**TclRequest2.main(TclRequest2.**java:58)
 NestedThrowablesStackTrace:
 SQL type INT(11) UNSIGNED declared for field of java type
 java.lang.Integer
 cant be mapped for this datastore.
 org.datanucleus.exceptions.**NucleusException: SQL type INT(11) UNSIGNED
 declared for field of java type java.lang.Integer cant be mapped for this
 datastore.
 at
 org.datanucleus.store.rdbms.**mapping.RDBMSMappingManager.**
 getDatastoreMappingClass(**RDBMSMappingManager.java:305)
 at
 org.datanucleus.store.rdbms.**mapping.RDBMSMappingManager.**
 createDatastoreMapping(**RDBMSMappingManager.java:564)
 at
 org.datanucleus.store.mapped.**mapping.PersistableMapping.**
 prepareDatastoreMapping(**PersistableMapping.java:246)
 at
 org.datanucleus.store.mapped.**mapping.PersistableMapping.**
 initialize(PersistableMapping.**java:113)
 at
 org.datanucleus.store.mapped.**mapping.MappingFactory.**
 createMapping(MappingFactory.**java:97)
 at
 org.datanucleus.store.mapped.**mapping.**AbstractMappingManager.**
 getMapping(**AbstractMappingManager.java:**255)
 at
 org.datanucleus.store.rdbms.**table.ClassTable.**
 manageMembers(ClassTable.java:**540)
 at
 org.datanucleus.store.rdbms.**table.ClassTable.manageClass(**
 ClassTable.java:420)
 at
 org.datanucleus.store.rdbms.**table.ClassTable.**
 initializeForClass(ClassTable.**java:1080)
 at
 org.datanucleus.store.rdbms.**table.ClassTable.initialize(**
 ClassTable.java:267)
 at
 org.datanucleus.store.rdbms.**RDBMSStoreManager$ClassAdder.**
 initializeClassTables(**RDBMSStoreManager.java:2452)
 at
 org.datanucleus.store.rdbms.**RDBMSStoreManager$ClassAdder.**
 addClassTablesAndValidate(**RDBMSStoreManager.java:2359)
 at
 org.datanucleus.store.rdbms.**RDBMSStoreManager$ClassAdder.**
 run(RDBMSStoreManager.java:**2009)
 at
 org.datanucleus.store.rdbms.**AbstractSchemaTransaction.**execute(**
 AbstractSchemaTransaction.**java:113)
 at
 org.datanucleus.store.rdbms.**RDBMSStoreManager.addClasses(**
 RDBMSStoreManager.java:820)
 at
 org.datanucleus.store.**AbstractStoreManager.addClass(**
 AbstractStoreManager.java:**1163)
 at
 org.datanucleus.store.mapped.**MappedStoreManager.**getDatastoreClass(**
 MappedStoreManager.java:383)
 at
 org.datanucleus.store.rdbms.**fieldmanager.**DynamicSchemaFieldManager.**
 storeObjectField(**DynamicSchemaFieldManager.**java:98)
 at
 org.datanucleus.state.**AbstractStateManager.**providedObjectField(**
 AbstractStateManager.java:**1452)
 at com.skycomm.ixload.**TclRequest2.jdoProvideField(**TclRequest2.java)
 at com.skycomm.ixload.**TclRequest2.jdoProvideFields(**TclRequest2.java)
 at
 org.datanucleus.state.**AbstractStateManager.**provideFields(**
 AbstractStateManager.java:**1520)
 at
 org.datanucleus.store.rdbms.**RDBMSPersistenceHandler.**
 checkForSchemaUpdatesForFields**OfObject(**RDBMSPersistenceHandler.java:*
 *634)
 at
 org.datanucleus.store.rdbms.**RDBMSPersistenceHandler.**insertObject(**
 RDBMSPersistenceHandler.java:**119)
 at
 org.datanucleus.state.**JDOStateManager.**internalMakePersistent(**
 JDOStateManager.java:2371)
 at
 org.datanucleus.state.**JDOStateManager.**makePersistent(**