gpt4 book ai didi

java - 从 Spring 表单获取 Post 请求中的 null 设置值

转载 作者:太空宇宙 更新时间:2023-11-04 09:34:37 25 4
gpt4 key购买 nike

我正在尝试提出问题,有多个选项。我成功获得了问题,但其选项变为空。

<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 代码:-

@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 表单代码:-

<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"/>

最佳答案

尝试在表单中使用以下内容:

<c:forEach 
<c:forEach items="${options}" var="option">
<form:input path="option.mcq"/>
</c:forEach>

关于java - 从 Spring 表单获取 Post 请求中的 null 设置值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56659785/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com