【发布时间】:2019-11-01 17:28:31
【问题描述】:
我正在尝试提出问题,它有多种选择。我正在成功提问,但它的选项变为空。
<c:forEach begin="0" end="${optionsCount}" varStatus="loop">
<form:input path="options[${loop.index}].mcq"/>
</c:forEach>
public class OnlineTestQuestionBean {
private String optionsCount;
private Long questionId;
private String question;
private Set<QuestionOptionBean> options;
//setter getter
}
public class QuestionOptionBean {
private Long optionId;
private String mcq;
//setter getter
}
以下是控制器代码:-
@Controller
public class OnlineTestController {
@RequestMapping(value = "/savequestion", method = RequestMethod.GET)
public String addQuestion(Model model) {
model.addAttribute("OnlineTestQuestionBean", onlineTestQuestionBean);
return "addquestion";
}
@RequestMapping(value = "/savequestion", method = RequestMethod.POST)
public String saveQuestion(@ModelAttribute("OnlineTestQuestionBean")OnlineTestQuestionBean onlineTestQuestionBean, Model model) {
return null;
}
}
以下是 Spring Form 代码:-
<c:forEach begin="0" end="${optionsCount}" varStatus="loop">
<form:input path="options[${loop.index}].mcq"/>
</c:forEach>
当我提交那个时间时,我得到“无法从大小为 0 的集合中获取索引为 0 的元素,使用属性路径访问”这个异常,
假设我使用下面的代码我得到了空集值。
<input type="text" path="options.mcq"/>
【问题讨论】:
标签: java spring-boot jpa spring-form