2010-03-09 18 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