正确配置了validation。插入的时候,返回validation的报错信息!一切正常。但我若列表的时候,居然也返回validation报错信息!不能正常列表了!
下面详细说一下,希望有人能帮忙解决!
比如文章表,id,title
action是ArticleAction,
form是ArticleFormArticleAction中有
public ActionForward insert(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
}
public ActionForward list(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
}插入文件是insert.jsp
列表文件是list.jsp ,通过article.do?action=list来转入list.jsp没有配置validation的时候,插入和列表,都分别正常。正确配置好validation,插入可以正常返回若空则报错,不空,则插入。
但article.do?action=list的时候,则总报title是空。!
请问怎么解决!??!

解决方案 »

  1.   

    数据处理下
     要是数据有问题则跳转到错误页面
      报告错误信息
    lz最好用js判断~~方便
      

  2.   

    意思很简单。就是一个action中。写了插入和列表。没有用验证框架的时候,都正常用了验证框架,只要再action中写的任何功能,都统统给我验证了,我列表,不需要验证的。狂晕
      

  3.   

    一个简单的精辟的问法用Validator框架对一个action中不同方法使用不同的字段验证怎么做!!!若按照简单的例子,那么其他只要访问这个action,那么都判断了!
      

  4.   


    还是用JS判断 这样子也不用跑去Action里面判断了 到时候也不用访问一次服务器 然后又传给客服断了嘛 减轻对服务器的负担好阿.
      

  5.   

    我的目的是使用验证框架,即自动生成前台js判断,而后台form内也能判断,
    不然别人跳过前台js,后台不设防,怎么可能!
      

  6.   

    把保存和更新操作放在另一个action中,配置这个action的validate="true",其他action的validate="false"
      

  7.   


    弄多个action太麻烦了!比如一个文章表,10个功能,你就要有10个action。并且还有其他相关配置,每个还有其他7,8处修改,那么就有70个文件!!
      

  8.   

    找到根据action提交的参数分方法验证了!再某个form中
        parameter=httpServletRequest.getParameter("action");     
        if(paramValue.equals("insert")){
         errors=super.validate(actionMapping,httpServletRequest);
        }
        if(paramValue.equals("delete")){
         errors=super.validate(actionMapping,httpServletRequest);
        }
    比如若list,的确不验证正常显示!insert验证,delete验证!但跟着问题来了,insert跟delete的验证肯定不一样。还有跟modify的验证肯定也不一样!
    比如我insert的验证再xml中定义好了,验证某个字段是否为空!
    那么modify修改的时候,肯定还要增加个id是否为空,insert中肯定不用验证id是否为空!
    现在使用的验证都是 super.validate(actionMapping,httpServletRequest);这句,所以他们都调用同样的严正!这肯定不行的。请问这之后怎么搞定?
      

  9.   

    楼主这个是你在请求Action、的时候参数没有传过去,你可以在配置文件里加参数,也可以在页面中加一个hidden的属性,那样参数就可以传过去,不回出错了
      

  10.   

    分方法,已经没问题了,我页面中笳了hidden的action=insert之后再form内判断是否是insert是否是list
    是否是delete但问题又来了,就是都是使用同样的严正super.validate(actionMapping,httpServletRequest);
      

  11.   


    不需要验证form的方法放在一个DispatchAction中,需要验证form的方法放在一个DispatchAction中,这样不就只有两个Action了嘛
      

  12.   

    我一个action都不想增加!不过我找到了解决方法了!哈哈。先试试看!!这个问题首先要解决验证的同一个action对于同一个form的分方法。
    之后要解决分了方法之后,分验证来调用!实现不同的方法有不同的验证。若只解决了第一个问题,只能分方法调用统一的验证!
      

  13.   


    应该不会出现这样的问题啊,我现在做的这个项目就是用struts validation框架做的验证,前台也是自动生成的js
      

  14.   

    楼上的,能把你的项目代码发给我一份参考么?仅仅需要能正常运行一个新增和修改带validation验证即可