form表单
   <form action ="/login/executeLogin" methon = "post" name = "form1" >
  用户名: <input type = "text" name = "s.name"/><s:actionerror/></br>
  密码:   <input type = "text" name = "s.pwd"/><s:actionerror/></br>
  <input type = "submit" value = "登录"/> 
   </form>action
public void validate() {
if(s.getName() == null || "".equals(s.getName()))
{
this.addActionError("用户名不能为空");
}else if(s.getPwd() == null || "".equals(s.getPwd())){
this.addActionError("密码不能为空");
}else if(s.getName() != null && s.getPwd() != null){
return ;
}else{
this.addActionError("用户名或密码不能为空");
}当用户名为空时,验证this.addActionError("用户名不能为空");
是有执行到的,怎么这个的提示信息没有显示出来,而且跳到struts.xml配置中result标签type = "input"页面中?
求高手指点下!!

解决方案 »

  1.   

    改为 addFieldError("s.name","用户名不能为空")这里做验证不通过,就会返回input定义的页面,错误信息会显示出来的。
      

  2.   


    还是不行,一样的问题,错误信息显示不出来,直接跳到input定义的页面
      

  3.   

    1.跳到struts.xml配置中result标签type = "input"页面中?当验证失败的时候,会默认return "input"; 所以要在struts.xml配置一个<result name="input">某某.jsp</result>。不然会报错。2. 不显示错误信息的问题在<result name="input">对应的这个某某.jsp中  用<s:actionerror/>试一下
      

  4.   


    页面上是不是没有写过标签 <s:fielderror />
      

  5.   


    跳到那个指定的页面是空的,什么都没显示
    我要表单里也有设那个标签了用户名: <input type = "text" name = "s.name"/><s:actionerror/></br>
    不过就是显示不出来,郁闷啊!
      

  6.   


    有啊,
    用户名: <input type = "text" name = "s.name"/><s:fielderror/></br>
    所以才晕了,不知道哪里错,错误怎么就是显示不出来
      

  7.   


    指定的页面设为一个空的页面?!那当然是什么都没有啊。应该设当前这个jsp
      

  8.   

    谢谢各位,效果出来了一半
    但是又出来一个问题,我是用 
     用户名: <input type = "text" name = "s.name"/><s:fielderror name="username"/></br>
      密码:   <input type = "text" name = "s.pwd"/><s:fielderror name ="userpwd"/></br>
    验证两个的,但是如果其中一个为空,比如用户名为空,密码框不为空,表单里的那两个文本框就会全显示用户名不能为空,怎么指定用户名为空时就把错误显示在用户名那行文本框中,而密码框不用显示,现在我的问题就是一个为空时,两个<s:fielderror name ="userpwd"/>这种都会出现同个错误提示?
      

  9.   

    感谢各位,出来了
    是这样的
      用户名: <input type = "text" name = "s.name"/><s:fielderror><s:param>username</s:param></s:fielderror></br>
      密码:   <input type = "text" name = "s.pwd"/><s:fielderror><s:param>userpwd</s:param></s:fielderror></br>
    就可以定位到想要的地方了