我使用spring 3.我试图在jsp中显示一个对象的值。
public class UserForm implements Serializable {
private List<String> values;
private String date;
...
}
这是我的控制器:
@Controller
@RequestMapping("/user.htm")
public class UserController {
@Autowired
private IUserService userService;
@RequestMapping(method = RequestMethod.GET)
public String userStat(Model model) {
UserForm stat = userService.populateStatistique();
stat.setDate("today");
model.addAttribute("statistiqueForm", stat);
return "userStat";
}
}
这是我的jsp:
<form:form commandName="userForm" name="userForm">
Date: <form:input path="date"></form:input>
<br/>
Expediteur:
<form:select path="values" items="${values}" />
<br/>
<input type="submit" value="create" />
</form:form>
在jsp中,我可以看到日期字段的今天值,但列表框是空的。
任何想法?
感谢
答案 0 :(得分:2)
好吧,如果你想在jsp中访问它,请使用addAttribute("values", list)
。您目前没有设置它,因此它是空的。
如果该列表包含在statistiqueForm
对象中,则使用items="${statistiqueForm.values}"
。
答案 1 :(得分:0)
您正确地将表单对象传递给jsp页面。在该页面中,您有一个列表框,其中包含潜在值列表和所选值列表。对象表单包含所选值的列表,但您还应设置包含所有潜在值的列表。实际上你在jsp中引用了$ {values},但是你没有将它传递给jsp。您应该将此代码添加到控制器:
model.addAttribute("values", potentialValueList);
我还建议您更改该列表的名称以避免混淆,因此很容易理解从所选值到潜在值的差异。