+ -
当前位置:首页 → 问答吧 → struts2数据校验问题

struts2数据校验问题

时间:2010-10-04

来源:互联网

我采用ajax提交请求,当请求传入的数据被struts2校验错误时,会跳到input的result;可是我重新发送第二个正确的请求,数据没问题,它也会跳到input的result,报第一次请求的错误;
  也就是说,只要一次请求中的数据有问题,这个相关的action对象就死掉了,接下来的请求都报那个错误请求的信息(数据校验错误);
  求大侠解决,我不能让用户输入了错误的数据,就让他重新登录吧!
注:采用struts2/json/jquery/spring/hibernate的架构,一个action的作用域为session

作者: itparadise   发布时间: 2010-10-04

以前也遇到这种情况,我是这样解决的,抛弃struts2的校验框架,web页面先使用自己的js进行校验,服务器端具体的业务层方法再加上校验,校验不通过向上抛自定义的异常,action中捕捉异常,result到错误页面,打印错误信息。这个方法有点勉强啊!

作者: kingmaple   发布时间: 2010-10-04

引用楼主 itparadise 的回复:
我采用ajax提交请求,当请求传入的数据被struts2校验错误时,会跳到input的result;可是我重新发送第二个正确的请求,数据没问题,它也会跳到input的result,报第一次请求的错误;
也就是说,只要一次请求中的数据有问题,这个相关的action对象就死掉了,接下来的请求都报那个错误请求的信息(数据校验错误);
求大侠解决,我不能让用户输入了错误的数据,就让他重新登录吧……


CSS code
不需要跳转到result配置的页面视图,直接在方法中用response.getWriter().print("输出你的信息");
即可,然后return null;

作者: IBM_hoojo   发布时间: 2010-10-04