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