hibernate - org.hibernate.type.StringType cannot be cast to org.hibernate.type.

严重:Exceptionsendingcontextinitializedeventtolistenerinstanceofclassorg.springframework.web.context.ContextLoaderListener

org.springframework.beans.factory.BeanCreationException:Errorcreatingbeanwithname'sessionFactory'definedinfile[applicationContext-hibernate.xml]:Invocationofinitmethodfailed;nestedexceptionisjava.lang.ClassCastException:org.hibernate.type.StringTypecannotbecasttoorg.hibernate.type.VersionType

Causedby:java.lang.ClassCastException:org.hibernate.type.StringTypecannotbecasttoorg.hibernate.type.VersionType

atorg.hibernate.tuple.PropertyFactory.buildVersionProperty(PropertyFactory.java:84)

atorg.hibernate.tuple.entity.EntityMetamodel.<init>(EntityMetamodel.java:160)

atorg.hibernate.persister.entity.AbstractEntityPersister.<init>(AbstractEntityPersister.java:425)

atorg.hibernate.persister.entity.SingleTableEntityPersister.<init>(SingleTableEntityPersister.java:109)

atorg.hibernate.persister.PersisterFactory.createClassPersister(PersisterFactory.java:55)

atorg.hibernate.impl.SessionFactoryImpl.<init>(SessionFactoryImpl.java:226)

atorg.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1218)

-----------------------------------

可能原因:

某张表有version字段,从hibernatetools生成的hbm文件内容:

<versionname="version"type="java.lang.String">

<columnname="version"length="128"/>

</version>

引起上述错误。

将version字段的名称进行修改,或者将此配置信息修改为:

<propertyname="version"type="java.lang.String">

<columnname="version"length="128"/>

</property>

重新发布,即可。

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/iskydog/archive/2010/06/23/5688650.aspx

相关推荐