2010-03-09 22 views
4

我有一個要求驗證JSF/ADF輸入字段只有如果該字段的值由用戶更改。如果頁面上的值與模型中的值相同,則跳過該字段的驗證。如何從JSF/ADF驗證器獲取舊值?

我使用JSF和Oracle ADF Faces,我知道JSF的生命週期,我可以製作自己的轉換器或驗證器,但我無法在任何地方找到舊值。

回答

5

在驗證過程中,舊值應該可用UIInput#getValue()

public void validate(FacesContext context, UIComponent component, Object value) throws ValidatorException { 
    Object oldValue = ((UIInput) component).getValue(); 
    // ... 
} 
+0

我需要將UIcomponent轉換爲CoreInputText而不是UIIput,但除此之外,它可以工作。 – 2010-03-13 00:18:29

+0

ddi你真的不得不提一提嗎? :)反正謝謝@BalusC它適合我! – 2015-06-11 21:47:35