How to reset old value on selectOneMenu

32 views Asked by At

when I choose a value from my dropdown list I have to check if this value exists in a map, if it exists, I have to reset the dropdown list with the old value. How can I do this please.

This is my code :

<h:selectOneMenu value="#{item}"
valueChangeListener="#{bean.changeType}">
<a4j:support event="onchange" ajaxSingle="true"
reRender="panelEns_#{suff}" />
<f:selectItems
value="#{bean.form.listeSelectType}" />
</h:selectOneMenu>

And the method changerType :

public void changeTypeAide(ValueChangeEvent event) throws ServiceException {
        Long idType = (Long) event.getNewValue();
        Long idTypeOld = (Long) event.getOldValue();
        
        Long typeSelected = (Long) ((HtmlDataTable) event.getComponent()
                .getParent().getParent()).getRowData();

        int indexItem = form.getListeIdsTypes()
                .indexOf(typeSelected);
        form.getListeIdsTypes().set(indexItem, idType);
        
        if (form.getMapSelectType.containsKey(idType)) {
                addMessage(Severity.SEVERITY_ERROR, "Erreur ....");
                form.setExistType(true);
                form.setidTypeOld(idTypeOld);
                return;
            }
            
            //code
}
0

There are 0 answers