UIInput input = (UIInput) component;
input.setRendererType(null);
UIViewRoot root = facesContext.getApplication().getViewHandler().createView(facesContext, null);
root.getChildren().add(input);
ValueChangeEvent event = null;
// Register three listeners
input.addValueChangeListener
(new TestValueChangeListener("ARV"));
input.addValueChangeListener
(new TestValueChangeListener("PV"));
input.addValueChangeListener
(new TestValueChangeListener("AP"));
TestValueChangeListener.trace(null);
event = new ValueChangeEvent(input, null, null);
event.setPhaseId(PhaseId.APPLY_REQUEST_VALUES);
input.queueEvent(event);
event = new ValueChangeEvent(input, null, null);
event.setPhaseId(PhaseId.PROCESS_VALIDATIONS);
input.queueEvent(event);
event = new ValueChangeEvent(input, null, null);
event.setPhaseId(PhaseId.INVOKE_APPLICATION);
input.queueEvent(event);
// Fire events and evaluate results
root.processDecodes(facesContext);
root.processValidators(facesContext);