Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Spring mvc <;spring:未填充绑定命令对象_Spring Mvc - Fatal编程技术网

Spring mvc <;spring:未填充绑定命令对象

Spring mvc <;spring:未填充绑定命令对象,spring-mvc,Spring Mvc,在我的应用程序中,其中一个jsp能够成功地通过命令对象将输入参数传递给我的控制器。然而,我对另一个jsp及其控制器采用了相同的方法,它不起作用。我从未为任何其他JSP工作过 以下是代码-SpringXML <bean id="uploadController" class="com.UploadController"> <property name="commandName"> <value>fo

在我的应用程序中,其中一个jsp能够成功地通过命令对象将输入参数传递给我的控制器。然而,我对另一个jsp及其控制器采用了相同的方法,它不起作用。我从未为任何其他JSP工作过

以下是代码-SpringXML

    <bean id="uploadController"
        class="com.UploadController">
        <property name="commandName">
            <value>formBean</value>
        </property>
        <property name="commandClass">
            <value>
                com..TemplateDownloadFormBean
            </value>
        </property>
        <property name="formView">
            <value>uploadTemplates</value>
        </property>
        <property name="successView">
            <value>uploadSuccess</value>
        </property>
    </bean>
</beans>
JSP

<html xmlns="http://www.w3.org/1999/xhtml">
<body>
<form action="uploadTemplates.do" method="post"
    enctype="multipart/form-data">
<table>
    <tr>
        <td><spring:hasBindErrors name="formBean">
            <c:forEach var="errMsgObj" items="${errors.allErrors}">
                <div align="center" class="errorStyle"><spring:message
                    code="${errMsgObj.code}" /></div>
            </c:forEach>
        </spring:hasBindErrors></td>
    </tr>

    <tr>

        <spring:bind path="formBean.searchString">
            <td align="left"><input type="text" name="searchString" /></td>
        </spring:bind>
    </tr>
    <tr>
        <td><input type="submit" value="SearchTemplate"
            name="SearchTemplate" /></td>
    </tr>
</table>
</form>
</body>
</html>


同样的声明结构也适用于同一应用程序中的其他JSP。但在这里失败了。请告诉我我做错了什么

您应该使用Spring
表单
标记,因为它们能够呈现正确的
元素名称。您的错误可能在此处(请注意不同的名称):


标签
在您的情况下是完全无用的。该标记有不同的用途,与您的用例无关



顺便说一句,你知道你在春天使用了一些很旧的东西吗?现在,处理程序是通过
@Controller
@RequestMapping
注释完成的。如果您是Spring新手,请查看Spring文档和.logger.debug(formBean.getSearchString());搜索字符串为空。谢谢Pavel,我会在一分钟内尝试你的建议,看看是否有帮助。大约一个月前,当我第一次启动这个应用程序时,我使用了最新的springjar并开始着手解决它。但可能在春天遇到了完全相同的问题:bind可能是罪魁祸首,但我认为让我们回到旧版本。我从我多年前开发的一个应用程序中选择了SpringJar。。就是这样。现在再次使用Spring3重做应用程序,我想我的时间不够了。我将我的应用程序升级到Spring3,并用注释重新定义了正在进行的部分。它工作得很好。谢谢
<html xmlns="http://www.w3.org/1999/xhtml">
<body>
<form action="uploadTemplates.do" method="post"
    enctype="multipart/form-data">
<table>
    <tr>
        <td><spring:hasBindErrors name="formBean">
            <c:forEach var="errMsgObj" items="${errors.allErrors}">
                <div align="center" class="errorStyle"><spring:message
                    code="${errMsgObj.code}" /></div>
            </c:forEach>
        </spring:hasBindErrors></td>
    </tr>

    <tr>

        <spring:bind path="formBean.searchString">
            <td align="left"><input type="text" name="searchString" /></td>
        </spring:bind>
    </tr>
    <tr>
        <td><input type="submit" value="SearchTemplate"
            name="SearchTemplate" /></td>
    </tr>
</table>
</form>
</body>
</html>
<input type="text" name="formBean.searchString" />