`
xp9802
  • 浏览: 1207702 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

Provided id of the wrong type for class

阅读更多

常见Hibernate异常org.hibernate.TypeMismatchException: Provided id of the wrong type for class:

严重: Servlet.service() for servlet action threw exception
org.hibernate.TypeMismatchException: Provided id of the wrong type for class com.uitest.domain.Product. Expected: class java.lang.Long, got class java.lang.String
 at org.hibernate.event.def.DefaultLoadEventListener.onLoad(DefaultLoadEventListener.java:109)
 at org.hibernate.impl.SessionImpl.fireLoad(SessionImpl.java:905)
 at org.hibernate.impl.SessionImpl.get(SessionImpl.java:842)
 at org.hibernate.impl.SessionImpl.get(SessionImpl.java:835)
 at org.springframework.orm.hibernate3.HibernateTemplate$1.doInHibernate(HibernateTemplate.java:531)
 at org.springframework.orm.hibernate3.HibernateTemplate.doExecute(HibernateTemplate.java:419)
 at org.springframework.orm.hibernate3.HibernateTemplate.executeWithNativeSession(HibernateTemplate.java:374)
 at org.springframework.orm.hibernate3.HibernateTemplate.get(HibernateTemplate.java:525)

通常这种错误是由于ID类型不对引起的!!!

解决的办法:检查下ID的类型,把页面串回来的id值由string没转换成Long类型,再进行删除,就可以了。

2
2
分享到:
评论
2 楼 jayyunfei 2012-03-19  
但是如果我在实体类中把id改成Long,修改就能转过去,但是在保存的时候又报错,说类型不对,
1 楼 jayyunfei 2012-03-19  
我改了,怎么还是不行,在action中获取id以后,我用Long.parsLong("id");a怎么还报这个错?

相关推荐

Global site tag (gtag.js) - Google Analytics