1
我想在使用struts的彈簧窗體上做一些半複雜的驗證。Struts驗證器validwhen(* this * == null)不能按預期工作
根據struts用戶指南,在validwhen子句中測試null值爲空字符串或空值。
因此,我期望以下檢查只有當test是空字符串或null時才能成功。
<field property="test" depends="validwhen">
<msg name="validwhen" key="error.test"/>
<arg position="0" key="testForm.test"/>
<var>
<var-name>test</var-name>
<var-value>(*this* == null)</var-value>
</var>
</field>
我看到它在輸入值爲空時工作。但如果我從表單刪除輸入(我認爲這將然後映射到一個空值),它會失敗...
有誰知道如何使用struts驗證器來測試沒有字段提交的表單?
我在Struts 1.3.8上。
如果有人想知道爲什麼我需要測試這一點,我要尋找結束的邏輯是這樣的:
if(radio fieldA is present and true){
fieldB is required
}else{
fieldB not required
}
感謝
是的,原來在窗體支持對象上的字段是布爾型的主要類型,因此永遠不能爲空! – Chris 2010-11-11 09:00:43