我的html是在不使用spring taglib的情况下构建的,现在我想将表单的参数绑定到控制器中的对象。
目前我的表格看起来像这样
<form>
<input type="text" name="frAccUserMgmt.userName"/>
<input type="password" name="frAccUserMgmt.userPwd"/>
</form>
我对象的相关部分是
Class FrAccUserMgmt {
private String userName;
private Strint userPwd;
// getter and setter
}
我的控制器是
@RequestMapping("login")
Public ModelAndView doLogin(FrAccUserMgmt frAccUserMgmt) {
//code
}
我该如何绑定它。目前,绑定尚未发生。我只是在代码中得到一个空对象。
最佳答案
您可以尝试在方法签名中包括BindingResult
类,然后查看是否存在任何绑定错误:
@RequestMapping("login")
Public ModelAndView doLogin(FrAccUserMgmt frAccUserMgmt, BindingResult result) {
if (result.hasErrors()) {
logger.warn("BindingResult errors: " + result.toString());
}
//code
}
从表单字段名称中删除
frAccUserMgmt
部分。 Spring将根据命令对象中定义的getter和setters自动找到命令对象以绑定请求参数。关于spring - 不使用Spring Taglib进行数据绑定(bind),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11603619/