В классе «Мой ученик» есть список «Объекты».
public class Student {
private List<Objects> list;
...
}
public class Objects {
private long id;
private String context;
...
}
@GetMapping("signup")
public String showSignUpForm(Model model) {
List<Objects> objectsList = new ArrayList<>();
objectsList.add(new Objects(1, "Math"));
objectsList.add(new Objects(2, "Phys"));
objectsList.add(new Objects(3, "Chem"));
objectsList.add(new Objects(4, "Geom"));
model.addAttribute("objects", objectsList);
model.addAttribute("student", new Student());
return "add-student";
}
@PostMapping("add")
public String addStudent(Student student, BindingResult result, Model model) {
if (result.hasErrors()) {
return "add-student";
}
return "redirect:list";
}
<form action="#" th:action="@{/students/add}" th:object="${student}" method="post">
<div class="group">
<div th:each="obj : ${objects}">
<input id="check" type="checkbox" th:field="*{list}" th:value="${obj}"/>
<label for="check" th:text="${obj.getContext()}"></label>
</div>
<div class="col-md-6">
<input type="submit" class="btn btn-primary" value="Submit">
</div>
</div>
</form>
Поэтому я хочу добавить выбранные объекты в student.list, но получаю эту ошибку:
Не удалось преобразовать значение свойства типа «java.lang.String []» в требуемый тип «java.util.List» для свойства «list»;Вложенное исключение: java.lang.IllegalStateException: невозможно преобразовать значение типа 'java.lang.String' в требуемый тип 'example.Objects' для свойства 'list [0]': не найдено подходящих редакторов или стратегии преобразования
Как это сделать правильно?