0
我正在使用JSF 1.2和Seam框架编写Java EE应用程序。我有一个表格这需要输入从单选按钮这样的:接受表单提交时未选择任何单选按钮
<h:selectOneRadio value="#{testAction.selectedOptionId}"
id="selectedQuestionOption"
layout="pageDirection">
<s:selectItems var="selectedOption" value="#{currentQuestion.options}"
label="#{selectedOption.optionString}"
itemValue="#{selectedOption.optionId}"/>
</h:selectOneRadio>
<h:commandButton id="goToNextQuestion" value="Submit"
action="#{testAction.postAnswer}"/>
我想的是,如果有人提交表单,而不选择一个单选按钮,我会接受的结果,但它不工作。因为在验证阶段,jsf拒绝提交并导致验证错误。我试图为它写一个自定义的验证器,不幸的是,这也没有为我工作。
有什么建议吗?
什么是验证错误。我看不到你在这里使用验证。你能否提供来自堆栈跟踪的相关行和'setSelectedOptionId()'方法的签名。 – prageeth
以jsf(这被称为回发)提交表单后,将包含不同的生命周期事件,如绑定值,验证。并且这些阶段事件在任何正常流程中执行,然后再调用我们的应用程序逻辑代码驻留的应用程序阶段。事情是单选按钮验证器拒绝值,当没有单选按钮被选中并重新导向到窗体。 –
所描述的问题只会在''有'required ='true''时出现,但是你没有。代码看起来很好。这对我来说可以。这个问题在其他地方引起。 SSCCE会有很大的帮助。 –
BalusC