页眉中每个命令的验证错误显示(Spring 3)

时间:2012-03-08 15:26:02

标签: java spring validation

我想在页面标题中显示包含所有错误消息的div。我知道如何做一个命令,例如:

<spring:hasBindErrors name="<my_command>">
  <div class="error_box">
    <c:forEach var="error" items="${errors.allErrors}">
      <spring:message message="${error}"></spring:message><br />
    </c:forEach>
  </div>
</spring:hasBindErrors>

但我希望每个命令都有全局div所以我不需要重复几乎相同的代码。任何帮助表示赞赏:)

1 个答案:

答案 0 :(得分:0)

我唯一的想法是:

<%
Enumeration en = request.getAttributeNames();
while(en.hasMoreElements()) {
    String attr = (String)en.nextElement();
    if(attr.startsWith("org.springframework.validation.BindingResult")) {
        %>
        <spring:hasBindErrors name='<%= attr.substring(attr.lastIndexOf(".")+1) %>' >
            <div class="error_box">
                <c:forEach var="error" items="${errors.allErrors}">
                    <spring:message message="${error}"></spring:message>
                    <br />
                </c:forEach>
            </div>
        </spring:hasBindErrors>
        <% 
    }
}
%>

也许有一天我会得到一个更好的答案:)