页面部分:
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<%@ taglib prefix="s" uri="/struts-tags" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<s:form action="test" validate="true">
    <s:textfield name="username"></s:textfield>
    <s:submit></s:submit>
</s:form>
</body>
</html>
TestAction.java@Controller
public class TestAction extends ActionSupport{ private String username; public String getUsername() {
return username;
} public void setUsername(String username) {
this.username = username;
}

public String add(){
return "add";
}

}TestAction-validation.xml 部分 <validators>
    <field name="username">
       <field-validator type="requiredstring">
           <message>名字为必填项</message>
       </field-validator>
    </field>
 </validators>struts.xml配置部分
     <action name="test" class="testAction">
             <result name="add">/index.jsp</result>
            <result name="input">/test.jsp</result>
         </action>为什么我提交的时候一直进入到index.jsp  不进行验证啊??????????

解决方案 »

  1.   

    有熟悉struts2 的人没有,帮忙看看~!~!~
      

  2.   

    <s:textfield name="username"></s:textfield>
    是不是这里面少了点什么东西。
      

  3.   


    少了东西吗?这是我测试写的一个简单的demo,不需要的属性我就没加,应该没少什么把,有name值就ok
      

  4.   

    <s:form action="test_add" validate="true">
      <s:textfield name="username"></s:textfield>
      <s:submit></s:submit>
    </s:form>
    </body>
    </html>  <action name="test_*" class="testAction" method="{1}">
      <result name="add">/index.jsp</result>
      <result name="input">/test.jsp</result>
      </action>public String add(){
    return "add";
    }
    这样试试呢
      

  5.   


    哥们,还是不行啊,其实我项目中和你这个差不多,一直不验证,所以写了这个简单的测试,可还是不行,struts2验证还有什么地方需要注意的么?
      

  6.   

    把TestAction-validation.xml名字改成TestAction-add-validation.xml