未显示的字符串列表

时间:2011-03-15 16:26:39

标签: java spring jsp spring-mvc

我使用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中,我可以看到日期字段的今天值,但列表框是空的。

任何想法?

感谢

2 个答案:

答案 0 :(得分:2)

好吧,如果你想在jsp中访问它,请使用addAttribute("values", list)。您目前没有设置它,因此它是空的。

如果该列表包含在statistiqueForm对象中,则使用items="${statistiqueForm.values}"

答案 1 :(得分:0)

您正确地将表单对象传递给jsp页面。在该页面中,您有一个列表框,其中包含潜在值列表和所选值列表。对象表单包含所选值的列表,但您还应设置包含所有潜在值的列表。实际上你在jsp中引用了$ {values},但是你没有将它传递给jsp。您应该将此代码添加到控制器:

model.addAttribute("values", potentialValueList);

我还建议您更改该列表的名称以避免混淆,因此很容易理解从所选值到潜在值的差异。