this.binding = binding;
}
public void processValueChange(ValueChangeEvent event)
throws AbortProcessingException {
ValueChangeListener instance = null;
FacesContext faces = FacesContext.getCurrentInstance();
if (faces == null) {
return;
}
if (this.binding != null) {
instance = (ValueChangeListener) binding
.getValue(faces.getELContext());
}
if (instance == null && this.type != null) {
try {
instance = (ValueChangeListener) ReflectionUtil
.forName(this.type).newInstance();
} catch (Exception e) {
throw new AbortProcessingException(
"Couldn't Lazily instantiate ValueChangeListener",
e);
}
if (this.binding != null) {
binding.setValue(faces.getELContext(), instance);
}
}
if (instance != null) {
instance.processValueChange(event);
}
}