我的jsp中有一个<form:options>,已为其定义path属性。看起来像这样

<form:select id="drpDwn" path="usrNm" onchange="getUserNames()">


我的Controller方法签名看起来像这样,我只是在调用我的服务方法来填充用户名

@RequestMapping(value="/usrForm", method = RequestMethod.GET, headers="Accept=application/json")
  public @ResponseBody JSONArray getUserNames(@RequestParam("userId") Integer userId, OutputStream opStream){
           return usrService.getUserNames(userId, opStream);
}


提交页面时出现错误

Neither BindingResult nor plain target object for bean name 'usrNm' available as request attribute


我在论坛上查询了一下,发现我必须定义Model Attribute,但是我不了解此问题的根本原因。

任何人都可以将其列出来,并解释说Spring到底在寻找什么

最佳答案

该表单需要一个名为usrNm的bean。无论哪个控制器使用表单定向到页面,都应设置该bean。

您显示的控制器用于处理表单(我假设),但是导致返回带有表单的视图的代码是导致错误的原因。

10-06 14:06