[2012-09-24 14:58:48,437  INFO com.opensymphony.xwork2.validator.ActionValidatorManagerFactory,29 ] Detected AnnotationActionValidatorManager, initializing it...
org.springframework.orm.hibernate3.HibernateSystemException: Exception occurred inside getter of com.shopping.entity.User.sex; nested exception is org.hibernate.PropertyAccessException: Exception occurred inside getter of com.shopping.entity.User.sex
Caused by: org.hibernate.PropertyAccessException: Exception occurred inside getter of com.shopping.entity.User.sex
at org.hibernate.property.BasicPropertyAccessor$BasicGetter.get(BasicPropertyAccessor.java:148)
at org.hibernate.property.BasicPropertyAccessor$BasicGetter.getForInsert(BasicPropertyAccessor.java:182)
at org.hibernate.tuple.entity.AbstractEntityTuplizer.getPropertyValuesToInsert(AbstractEntityTuplizer.java:271)
at org.hibernate.tuple.entity.PojoEntityTuplizer.getPropertyValuesToInsert(PojoEntityTuplizer.java:218)
at org.hibernate.persister.entity.AbstractEntityPersister.getPropertyValuesToInsert(AbstractEntityPersister.java:3666)
at org.hibernate.event.def.AbstractSaveEventListener.performSaveOrReplicate(AbstractSaveEventListener.java:267)
at org.hibernate.event.def.AbstractSaveEventListener.performSave(AbstractSaveEventListener.java:181)
at org.hibernate.event.def.AbstractSaveEventListener.saveWithGeneratedId(AbstractSaveEventListener.java:107)
at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.saveWithGeneratedOrRequestedId(DefaultSaveOrUpdateEventListener.java:187)
at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.entityIsTransient(DefaultSaveOrUpdateEventListener.java:172)
at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.performSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:94)
at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.onSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:70)
at org.hibernate.impl.SessionImpl.fireSaveOrUpdate(SessionImpl.java:507)
at org.hibernate.impl.SessionImpl.saveOrUpdate(SessionImpl.java:499)
at org.hibernate.impl.SessionImpl.saveOrUpdate(SessionImpl.java:495)
at org.springframework.orm.hibernate3.HibernateTemplate$16.doInHibernate(HibernateTemplate.java:689)
at org.springframework.orm.hibernate3.HibernateTemplate.execute(HibernateTemplate.java:372)
at org.springframework.orm.hibernate3.HibernateTemplate.saveOrUpdate(HibernateTemplate.java:686)
at com.shopping.dao.impl.UserDaoImpl.register(UserDaoImpl.java:35)
at com.shopping.biz.impl.UserBizImpl.register(UserBizImpl.java:15)
at com.shopping.action.UserAction.register(UserAction.java:45)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)

解决方案 »

  1.   

    at org.hibernate.impl.SessionImpl.fireSaveOrUpdate(SessionImpl.java:507)  看这个类中的507行出问题了  User.sex 这个user类中的属性sex 值不对吧  你仔细看
      

  2.   

    at com.shopping.dao.impl.UserDaoImpl.register(UserDaoImpl.java:35) 这行
      

  3.   

    // 用户注册
    public int register(User user) {
    try {
    // 创建添加用户用的HQL语句
    getHibernateTemplate().saveOrUpdate(user);
    return 1;
    } catch (DataAccessException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    return 0;
    }UserDaoImpl.java:35 这个实现类 之前用的save方法保存了一个USER对象不行 我又改成saveOrUpdate还是不行
      

  4.   

    user的实体配置文件及UserDaoImpl代码发上来
      

  5.   

    我用的spring整合的啊 开了啊  我用debug跟踪 从前台输入数据 然后用户名和密码都能获取到 性别和年龄啥的都获取不到呢
      

  6.   

    public int getSex() {
    return sex;
    }
    public void setSex(Integer sex) {
    this.sex = sex;
    }是这样的  你的sex定义的变量时integer   get的时候是int   integer是int的封装类,我个人理解integer是int的大哥,所以当getsex 得到是int  小的不装大的  大的能装小的
      

  7.   

    Exception occurred inside getter of com.shopping.entity.User.sex就这句了。sex的类型,还有age的类型统一下