- This topic has 3 replies, 2 voices, and was last updated 19 years ago by Riyad Kalla.
-
AuthorPosts
-
telcordiaMemberI am getting the following classcast exception and details
I think the problem is below (is it true)<id name=”userInformation” column=”USERID” type=”string”>
<generator class=”assigned”/>
</id>
eclipse and myeclipse are recent downloads 3.1.0SDk and 4.0.0GA respectivelyException in thread “main” java.lang.ClassCastException: com.afterdoc.hib.UserInformation
at org.hibernate.type.StringType.set(StringType.java:24)
at org.hibernate.type.NullableType.nullSafeSet(NullableType.java:62)
at org.hibernate.type.NullableType.nullSafeSet(NullableType.java:44)
at org.hibernate.persister.entity.BasicEntityPersister.getDatabaseSnapshot(BasicEntityPersister.java:866)
at org.hibernate.engine.PersistenceContext.getDatabaseSnapshot(PersistenceContext.java:302)
at org.hibernate.engine.ForeignKeys.isTransient(ForeignKeys.java:189)
at org.hibernate.event.def.AbstractSaveEventListener.getEntityState(AbstractSaveEventListener.java:409)
at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.performSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:82)
at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.onSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:69)
at org.hibernate.impl.SessionImpl.saveOrUpdate(SessionImpl.java:468)
at org.hibernate.engine.Cascades$5.cascade(Cascades.java:154)
at org.hibernate.engine.Cascades.cascadeAssociation(Cascades.java:771)
at org.hibernate.engine.Cascades.cascade(Cascades.java:720)
at org.hibernate.engine.Cascades.cascadeCollection(Cascades.java:895)
at org.hibernate.engine.Cascades.cascadeAssociation(Cascades.java:792)
at org.hibernate.engine.Cascades.cascade(Cascades.java:720)
at org.hibernate.engine.Cascades.cascade(Cascades.java:847)
at org.hibernate.event.def.AbstractSaveEventListener.cascadeAfterSave(AbstractSaveEventListener.java:363)
at org.hibernate.event.def.AbstractSaveEventListener.performSaveOrReplicate(AbstractSaveEventListener.java:265)
at org.hibernate.event.def.AbstractSaveEventListener.performSave(AbstractSaveEventListener.java:160)
at org.hibernate.event.def.AbstractSaveEventListener.saveWithGeneratedId(AbstractSaveEventListener.java:108)
at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.saveWithGeneratedOrRequestedId(DefaultSaveOrUpdateEventListener.java:184)
at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.entityIsTransient(DefaultSaveOrUpdateEventListener.java:173)
at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.performSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:96)
at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.onSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:69)
at org.hibernate.impl.SessionImpl.saveOrUpdate(SessionImpl.java:468)
at org.hibernate.impl.SessionImpl.saveOrUpdate(SessionImpl.java:463)
at com.hib.HibernateTest.main(HibernateTest.java:47)
##############################################################Below are the cfg xmls for the two tables
<?xml version=”1.0″ encoding=’UTF-8′?>
<!DOCTYPE hibernate-mapping PUBLIC
“-//Hibernate/Hibernate Mapping DTD 3.0//EN”
“http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd” ><!– DO NOT EDIT: This is a generated file that is synchronized –>
<!– by MyEclipse Hibernate tool integration. –>
<!– Created Wed Oct 05 21:12:16 EDT 2005 –>
<hibernate-mapping package=”com.hib”><class name=”UserFavorites” table=”user_favorites”>
<id name=”userInformation” column=”USERID” type=”string”>
<generator class=”assigned”/>
</id><property name=”favId” column=”FAV_ID” type=”string” />
<property name=”favRemarks” column=”FAV_REMARKS” type=”string” />
</class></hibernate-mapping>
<?xml version=”1.0″ encoding=’UTF-8′?>
<!DOCTYPE hibernate-mapping PUBLIC
“-//Hibernate/Hibernate Mapping DTD 3.0//EN”
“http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd” ><!– DO NOT EDIT: This is a generated file that is synchronized –>
<!– by MyEclipse Hibernate tool integration. –>
<!– Created Wed Oct 05 21:11:09 EDT 2005 –>
<hibernate-mapping package=”com.hib”><class name=”UserInformation” table=”user_information”>
<id name=”userid” column=”USERID” type=”string”>
<generator class=”assigned”/>
</id><property name=”password” column=”PASSWORD” type=”string” />
<property name=”username” column=”USERNAME” type=”string” />
<property name=”state” column=”STATE” type=”string” />
<property name=”authLevel” column=”AUTH_LEVEL” type=”string” />
<property name=”comments” column=”COMMENTS” type=”string” /><set name=”userFavoritesSet” lazy=”true” inverse=”true” cascade=”save-update”>
<key column=”USERID”/>
<one-to-many class=”UserFavorites” />
</set>
</class></hibernate-mapping>
###################################################################
tables in mysql:`user_favorites` (
`USERID` varchar(25) NOT NULL,
`FAV_ID` varchar(25) default NULL,
`FAV_REMARKS` varchar(5000) default NULL,
PRIMARY KEY (`USERID`),
CONSTRAINT `FK1` FOREIGN KEY (`USERID`) REFERENCES `user_information` (`USERID`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;`user_information` (
`USERID` varchar(25) NOT NULL,
`PASSWORD` varchar(10) default NULL,
`USERNAME` varchar(50) default NULL,
`STATE` varchar(20) default NULL,
`AUTH_LEVEL` varchar(20) default NULL,
`COMMENTS` varchar(2000) default NULL,
PRIMARY KEY (`USERID`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
Riyad KallaMemberWere these files all generated by MyEclipse from your DB?
telcordiaMemberYes all these files are generated by myeclipse from DB Explorer
right click on table name and generate hibernate cfg xml fileI changed the below lines
<class name=”UserFavorites” table=”user_favorites”>
<id name=”userInformation” column=”USERID” type=”string”>
<generator class=”assigned”/>
</id>to
<class name=”UserFavorites” table=”user_favorites”>
<id name=”USERID” column=”USERID” type=”string”>
<generator class=”assigned”/>
</id>
and added property for useridthen it worked.
But I would like to know is it bug in myeclipse or am I doing anything wrong.
Riyad KallaMemberIt is a generation bug, for some reason it picked up the UserInformation field.
-
AuthorPosts