我在eclipse中做的开发,定义了一个int型的年龄输入,教程上说如果输入字符串,比如输入abc,它会报错,但是我在另一个页面去接收到一个默认为0的值而没有报错,我的struts2版本比教程的要新一点点,难道版本新一点就不行了,还有就是那个datetimepicker的用法,我按书上的程序写,连那个日期选择的东西都没有显示,什么都没显示出来,为什么呢,好多问题,各位高手打救小弟,谢谢啦!!!

解决方案 »

  1.   

    不是你版本的问题,而是你继承了struts-default,该包中有自动验证功能,他默认是把字符串类型转换为0,然后才进行验证,因为0是整数所以不会报错。有两个办法解决这个问题,一是重写这个方法,而是不要继承这个包中的这个类,不过我建议用第一种方法。
      

  2.   

    我再啰嗦一句:struts2的流程是这样的先进行数据的类型转换,不管成功还是失败都要进行验证。这一条是很重要的。