Весна.Флажки привязки к ModelAttribute - PullRequest
2 голосов
/ 27 января 2012

Невозможно привязать флажки к @ ModelAttribute.

HTML:

<form method="post">
    <p><input type="checkbox" name="list" value="v1" /></p>
    <p><input type="checkbox" name="list" value="v2" /></p>
    <p><input type="checkbox" name="list" value="v3" /></p>
    <p><input type="checkbox" name="list" value="v4" /></p>
    <p><input type="submit" value="Send" /></p>
</form>

Java:

@RequestMapping(value = "/", method = RequestMethod.POST)
public String index(@ModelAttribute("list")List<String> list, ModelMap model)
{
    LoggerFactory.getLogger(this.getClass()).debug("list: " + list.size() + " " + list);
    ...
}

Проверено v2 и v3.Только в «index» первое значение:

список: 1 [v2]

Если я создаю форму с тегом spring:

<form:form modelAttribute="testForm">
    <p><form:checkbox path="list" value="v1" /></p>
    <p><form:checkbox path="list" value="v2" /></p>
    <p><form:checkbox path="list" value="v3" /></p>
    <p><form:checkbox path="list" value="v4" /></p>
    <p><input type="submit" value="Отправить" /></p>
</form:form>

TestForm.java:

public class TestForm
{
    private String[] list;

    public String[] getList()
    {
        return list;
    }

    public void setList(String[] list)
    {
        this.list = list;
    }
}

Все в порядке!

Как привязать флажок к @ModelAttribute без тега Spring?

1 Ответ

2 голосов
/ 27 января 2012

Проверка: public String index(@RequestParam("list") List<String> list, ModelMap model)

...