my jsp code is:
<af:selectOneChoice id="soc2"
valueChangeListener="#{welcomeBean.valueChangeSocC hildId}"
autoSubmit="true" partialTriggers="soc1"
binding="#{welcomeBean.childIdSoc}"
visible="false" simple="true"
immediate="true">
<f:selectItems value="#{welcomeBean.selectItemsBasedOnParentId}"
id="si4"/>
</af:selectOneChoice>

and my function code:
public void valueChangeSocChildId(ValueChangeEvent valueChangeEvent) {
valueChangeEvent.getComponent().processUpdates(Fac esContext.getCurrentInstance());
this.qualificationBtn.setVisible(false);
this.qualificationBtn2.setVisible(true);
loanTypeID = valueChangeEvent.getNewValue().toString();
}



what is wrong?