您可以設定所有 Faces 輸入元件的進階驗證特性。 比方說,您可以這樣設定「輸入日期/時間」元件的驗證:將它的最小值設為 2003/01/01,將它的最大值設為 "now"。
以下是輸入元件的用戶端和伺服器驗證的基本步驟。請注意,其他輸入元件有類似的驗證標籤。
送出不含值的頁面來測試驗證。 這時應該會執行您建立的驗證,且應該會顯示您建立的任何錯誤訊息。
範例:利用「快速編輯」視圖來執行自訂驗證
以下是對於使用者在網頁欄位中輸入的值執行自訂驗證的範例。 在這個範例中,使用者會填寫使用者登錄表單,並按一下送出按鈕。在送出登錄表單之前,您可以建立驗證,以確定「密碼」欄位和「密碼確認」欄位皆包含相同密碼。 您也可以驗證密碼欄位的長度至少有六個字元。 請遵循下列步驟來建立自訂驗證:String text1Val = (String)getSecret1().getValue(); String text2Val = (String)getSecret2().getValue(); System.out.println("text2Val = " + text1Val + " text2Val = " + text2Val); if(!text1Val.equals(text2Val)){ System.out.println("NOT THE SAME"); FacesMessage message = new FacesMessage(FacesMessage.SEVERITY_ERROR, "Passwords need to be the same", "Values should be the same"); getMessages1().setErrorStyle("color:Red"); getFacesContext().addMessage(null, message); return "errorCondition"; } return "successCondition";FacesMessage 含有下列建構子:
FacesMessage() FacesMessage(FacesMessage.Severity, String summary, String detail) FacesMessage(String summary) FacesMessage(String summary, String detail)