2011-06-09 189 views
1

是否有任何方法來驗證myAction-validation.xml文件中的對象集合?Struts2集合驗證

我有一些JSP:

<s:iterator value="messageTypes" status="status"> 
<tr> 
    <td> <s:property value="messageType" /> </td> 
    <td> <s:checkbox name="messageTypes[%{#status.index}].enabled" value="enabled" label="" /> </td> 
    <td> <s:textfield name="messageTypes[%{#status.index}].reminderDate" value="%{reminderDate}" label="" labelSeparator="" /> </td> 
    <td> 
     <s:select name="messageTypes[%{#status.index}].reminderHour" list="hours" label="Hour" /> 
     <s:select name="messageTypes[%{#status.index}].reminderMinute" list="minutes" label="Minute" /> </td> 
    <td> <s:textfield name="messageTypes[%{#status.index}].reminderTo"       value="%{reminderTo}" label="" labelSeparator="" /> </td> 
</tr> 
</s:iterator> 

,願與例如日期驗證,驗證各個領域,如reminderDate。這可能嗎?請注意,所有字段都是字符串,除了啓用這是一個布爾值。

回答

0

我想你必須使用the visitor field validator(另請參閱:visitor validator)在您的MessageType類本身上應用驗證。或者,您可以通過在操作中覆蓋validate()(只要您延伸ActionSupport)並手動調用addActionErroraddFieldError來進行驗證。

+1

感謝您的回答 - 很遺憾,沒有任何關於如何將訪問驗證器應用於集合的示例? – Tarski 2011-06-10 07:40:26