获取Struts2 Fielderror信息

1,addFieldError 等方法 都存放在request中 名称为 struts.valueStack (request.getAttribute ("struts.valueStack"))
2,valueStack是STRUTS2的一个堆栈类 
获取ActionErrors方法 通过代码可用看到valueStack的结构 也可以去看源码(我快看吐了 狂调父类等                       我是看不动了 有耐心的可以去看)
下面的代码直接嵌入到网页中是有效的
<s:if test="hasActionErrors()">
    <div class="error" id="errorMessages">    
      <s:iterator value="actionErrors">
        <s:property escape="false"/>  -- 这个就是错误信息
      </s:iterator>
   </div>
</s:if>




获取FieldErrors 通ActionErrors
<s:if test="hasFieldErrors()">
    <div class="error" id="errorMessages">    
      <s:iterator value="fieldErrors">
          <s:iterator value="value">
             <s:property escape="false"/>
          </s:iterator>
      </s:iterator>
   </div>
</s:if>




下面是我在实际开发中的使用方式 -当然可用由你自己来决定  test="hasFieldErrors()" 会自动去找有没有错误信息。 怎么样 是不是绝对一下子方便了很多啊! 
<s:if test="hasFieldErrors()">
       <s:iterator value="fieldErrors">
           <s:iterator value="value">
             <script language="JavaScript">
               alert('<s:property escape="false"/>');
              </script>
           </s:iterator>
       </s:iterator>
</s:if>




action 跳转:
@Results({@Result(name="toLogin", type="redirectAction", location="login!toLogin"),
@Result(name="toMain", type="redirectAction", location="main!toMain")})




你可能感兴趣的:(获取Struts2 Fielderror信息)