未调用素面选择菜单设置器



我的selectonemenu在选择一个选项后既不调用setter也不调用getter。地图在下拉菜单中正确显示。

下面是我的代码:
      <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也被调用了…

我将非常感激你的帮助。几乎什么都试过了:(一个列表也不能解决我的问题。

只需删除valueListener并替换ajax标签,如下所示

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

这不是问题所在。我有答案了。我只是搞混了getter和setter的类型。我刚刚有一个整数Setter,但需要一个字符串Setter。剩下的代码是正确的。

相关内容

  • 没有找到相关文章

最新更新