我有一個JSF2應用程序,它使用<ui:repeat />
來呈現多個文本框,每個文本框鏈接到集合中的項目。我需要在單個<h:messages />
標記中顯示輸入後的錯誤消息。用於重複輸入的JSF消息
同時,我有<ui:repeat />
標籤,其 應該有錯誤消息之外的一些其他必填字段旁邊它們的輸入,因此,它們將有一個相應的<h:message />
標籤。這裏的問題在於,每次我觸發外部字段的驗證時,其消息也會出現在<ui:repeat />
的<h:messages />
標記中。
下面是代碼:
<table cellpadding="0" cellspacing="0" width="100%">
<tr>
<td><h:outputLabel value="Items"/></td>
<td>
<ui:repeat var="i" value="#{itemsBean.itemsCount}" id="items">
<h:inputText id="itemTitle" value="#{itemsBean.items[i]}" required="true" />
<h:panelGroup layout="block" styleClass="clear" rendered="#{((i+1) % 10 == 0)}" />
</ui:repeat>
<h:messages id="itemsMessages" showDetail="false" showSummary="true" styleClass="error_list" />
</td>
<td><h:outputLabel value="Required Field" /></td>
<td>
<h:inputText id="requiredField" value="#{itemsBean.requiredField}" />
<h:message for="requiredField" showDetail="false" showSummary="true" styleClass="error_list" />
</td>
</tr>
</table>
我知道,這是JSF的方式驗證工作,但我需要防止出現重複項驗證摘要外部輸入的信息。 在此先感謝。
你有沒有解決過這個問題? – edhedges
@edhedges,恐怕不是。我已經使用了一種解決方法,將消息移出 並設置消息服務器端 –