【问题标题】:Spring MVC Validation ModelSpring MVC 验证模型
【发布时间】:2011-09-24 11:35:54
【问题描述】:

我是 Spring MVC 的菜鸟

为了让 Spring MVC 3 Validation 充分发挥作用, 必须是模型类(例如用户类)将 commandName 设置为“用户”吗?

不能改吗?

每当我更改命令名(例如“userx”)时,JSP 中的错误消息都不会显示。

commandName 的类名是否必须具有命名约定?

很抱歉,如果 Spring Docs 或 stackoverflow 中已经回答了这个问题,我自己似乎找不到答案。谢谢

编辑:这是我的表格 命令名是“searchClientForm”,因此对应的类名是SearchClientForm.java

    <form:form action="search.html"  commandName="searchClientForm" method="post" class="tabform">
        <h2>Client Maintenance</h2>
        <div class="spacer"></div>
        <div class="clear">
            <label class="error"><c:out value="${errorMessage}"/></label>
        </div>
        <div class="spacer"></div>
        <div class="clear">
            <label for="fieldCode">Filter: </label>
            <form:select path="fieldCode" items="${searchFields}" itemLabel="description" itemValue="key" id="fieldCode" />
            <label for="searchValue">Search: </label>
            <form:input path="search" id="searchValue" />
            <input type="submit" value="Go"/>
            <form:errors path="search" element="label" cssClass="error"/>
        </div>
        <div class="clear"></div>
    </form:form>

【问题讨论】:

  • 您能粘贴您的 JSP 代码(即表单)中有趣的部分吗?

标签: java spring validation spring-mvc


【解决方案1】:

命令名称和类应该相同(命令从小写字母开始)。您可以扩展原始类。 公共类 User 扩展 SearchClientForm {} 并将其作为“用户”放置在模型中。

【讨论】:

  • 谢谢。我现在很清楚必须有一个命名约定。谢谢
猜你喜欢
  • 2012-08-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-02-26
  • 2015-09-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多