<body>
    <s:form action="add" method="post">
     <s:textfield name="name" ></s:textfield>
     <s:textfield name="pwd"></s:textfield>
     <s:submit value="tijiao"></s:submit>
    </s:form>
    </body>struts2.xml
<struts>
<constant name="struts.devmode" value="true"/>
<constant name="struts.i18n" value="GBK"/>
     <package name="main5" extends="struts-default">
     <action name="add" class="com.A.typeAction" >    
     <result type="redirect">/success.jsp?t=${name}</result>
     <result name="input">/file.jsp</result>
     </action>
     </package> 
    </struts>
/text_0/src/com/A/typeAction.java省略 get  set
public class typeAction extends ActionSupport{
private String name;
private int pwd;
public String execute(){
System.out.println("AAAAAAAAAAAAAA"+name);
return SUCCESS;
}
/text_0/src/com/A/typeAction-validation.xml<validators>
<field name="name">
<field-validator type="requiredstring">
<param name="trim">true</param>
<message>不能为空</message>
</field-validator>
</field>
</validators>各位高手帮小弟看看 实在不知道哪出错了? 每次都是直接进入到 input页面
  正常的应该不会跳转页面 而是在登录页面报上 不能为空 的错误吧!?
还有一个就是 我在Action 中有个Map 对象的集合  现在要在页面上输出 集合的属性 例如:id,name,pwd....之类的
   但是始终出错!  eg:Map cart=new HashMap();  
   <struts:itertor value="#{cart}">
           .................
    </struts:>

解决方案 »

  1.   

    lz到百度上搜索下struts2校验的用法,就知道了
      

  2.   

    你的name没传到后台,当然跳到input,加个setName方法.
      

  3.   

    你的Map,你如果就想把value的对象遍历出来,我建议你先在后台吧Map的value都放到一个对象数组里去,这样在前台遍历数组,方便也美观。
      

  4.   

    <constant name="struts.i18n.encoding" value="GBK" />
    其次你input应该和验证的画面是一个页面!