Java Spring表单标记问题

时间:2011-08-09 18:20:48

标签: java spring jsp spring-mvc

我正在使用JSP,这是我的contacts.jsp

<%@taglib uri="http://www.springframework.org/tags/form" prefix="form" %>
<html>
<head>
    <title>Spring 3.0 MVC series: Contact manager</title>
</head>
<body>
<h2>Contact Manager</h2>
<form:form method="post" action="addContact.html">

    <table>
        <tr>
            <td><form:label path="firstName">First Name</form:label></td> // LABEL
            <td><form:input path="firstName" /></td>
        </tr>
        <tr>
            <td><form:label path="lastName">Last Name</form:label></td>
            <td><form:input path="lastName" /></td>
        </tr>
        <tr>
            <td><form:label path="lastName">Email</form:label></td>
            <td><form:input path="email" /></td>
        </tr>
        <tr>
            <td><form:label path="lastName">Telephone</form:label></td>
            <td><form:input path="telephone" /></td>
        </tr>
        <tr>
            <td colspan="2">
                <input type="submit" value="Add Contact"/>
            </td>
        </tr>
    </table>  

</form:form>
</body>
</html>

我的问题是,当我将form:label path="firstName"更改为form:label path="firstname"时,为什么tomcat会开始抛出错误?模型是否只需要输入路径,因为输入路径中的值是它将使用的值?

编辑:

我应该使用form:label tag,为什么要使用它?

1 个答案:

答案 0 :(得分:9)

这是因为firstName字面意思使用,或者被翻译成方法getFirstName()

无论哪种方式,执行查找时大写都很重要。


关于您是否需要标签中的path的问题:如果您提供路径,则标签将知道它属于哪个输入。在HTML中,允许您单击标签并使输入字段获得焦点。我假设代码的输出HTML是这样的:

<tr>
  <td><label for="firstName"></td>
  <td><input type="text" id="firstName"></td>
</tr>