我正在尝试使用prime-faces构建一个网页。我想实现一个测验页面。我的bean有问题DTO列表,其中包含Answer DTO列表,我想用单选按钮显示每个问题的答案,因为用户只能选择一个答案而一个问题最多只能有一个正确的答案。我总共有4个问题。我写了以下代码
<h:selectOneRadio id="parkingOptions" value="#{theBean.userAnswer}">
<f:selectItems value="#{quizQuestionDto.quizAnswerList.answer}"/>
</h:selectOneRadio>
我的bean有一个名为getUserAnswer和setUserAnswer的方法来存储接受String的用户选择的答案。我很困惑它是否应该接受字符串或字符串列表,因为我有超过1个问题要问。 我得到了一个例外
java.lang.NumberFormatException:对于输入字符串:“answer”at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65) 在java.lang.Integer.parseInt(Integer.java:492)at java.lang.Integer.parseInt(Integer.java:527)at javax.el.ListELResolver.coerce(ListELResolver.java:163)at at javax.el.ListELResolver.getValue(ListELResolver.java:51)at com.sun.faces.el.DemuxCompositeELResolver._getValue(DemuxCompositeELResolver.java:176) 在 com.sun.faces.el.DemuxCompositeELResolver.getValue(DemuxCompositeELResolver.java:203) 在org.apache.el.parser.AstValue.getValue(AstValue.java:183)at org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:184) 在 com.sun.faces.facelets.el.TagValueExpression.getValue(TagValueExpression.java:109) 在 javax.faces.component.ComponentStateHelper.eval(ComponentStateHelper.java:194) 在 javax.faces.component.ComponentStateHelper.eval(ComponentStateHelper.java:182) 在 javax.faces.component.UISelectItems.getValue(UISelectItems.java:129) 在 com.sun.faces.renderkit.SelectItemsIterator.initializeItems(SelectItemsIterator.java:208) 在 com.sun.faces.renderkit.SelectItemsIterator.hasNext(SelectItemsIterator.java:135) 在 com.sun.faces.renderkit.html_basic.SelectManyCheckboxListRenderer.encodeEnd(SelectManyCheckboxListRenderer.java:133) 在 javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:919) 在javax.faces.component.UIComponent.encodeAll(UIComponent.java:1863) 在 com.sun.faces.facelets.component.RepeatRenderer.encodeChildren(RepeatRenderer.java:104) 在 com.sun.faces.facelets.component.UIRepeat.process(UIRepeat.java:621) 在 com.sun.faces.facelets.component.UIRepeat.encodeChildren(UIRepeat.java:1110) 在javax.faces.component.UIComponent.encodeAll(UIComponent.java:1856) 在javax.faces.component.UIComponent.encodeAll(UIComponent.java:1859) 在javax.faces.component.UIComponent.encodeAll(UIComponent.java:1859) 在 com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:456) 在 com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:133) 在 com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:120) 在com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)... 61更多