2015-07-10 2 views
0

мой selectonemenu не вызывает сеттер или приемник после выбора опции. Карта отображается правильно в выпадающем меню.primefaces selectonemenu - setter не называется

Вот мой код:

 <p:selectOneMenu id="filter" value="#{myPatientsBean.selectedFilter}" 
     valueChangeListener="#{myPatientsBean.activateDefaultFilter}"> 
     <f:selectItems value="#{myPatientsBean.defaultFilterEntries.entrySet()}" var="map" itemValue="#{map.value}" itemLabel="#{map.key}"/> 
     <p:ajax update="patientdata" event="change" /> 
     </p:selectOneMenu> 

и вот бэк Bean:

public Map<String, String> getDefaultFilterEntries() { 
     return getPatientForFilter().getDefaultFilterEntries(getCurrentUser().hasRight(UserRight.PATIENTVIEWALL)); 
    } 


    public void setSelectedFilter(String index) { 
     selectedFilter = Integer.parseInt(index); 
     if (selectedFilter == -1) { 
      setUseDefaultFilter(false); 
     } 
    } 

    public String getSelectedFilterString() { 
     return Integer.toString(selectedFilter); 
    } 

ValueChangeListener называется тоже ..

Был бы очень благодарен за помощь. Попробовал почти все :( список не решает мою проблему ни.

ответ

0

, которая не была проблема. Я получил решение. я просто запутался с типами геттер и сеттер ... Я только что целое сеттер, но нуждался для String. остальная часть кода является правильным.

ти на всех

+0

Итак, вы можете закрыть вопрос. –

0

Просто удалите valueListener и заменить АЯКС тег, как показано ниже

<p:ajax listener=#{myPatientsBean.activateDefaultFilter}" update="patientdata" /> 
+0

valuechangelistener работает правильно. Это не проблема. – Lule

Смежные вопросы