Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jsf 2 ValueChangeListener不使用包含空值的_Jsf 2_Selectonemenu_Valuechangelistener - Fatal编程技术网

Jsf 2 ValueChangeListener不使用包含空值的

Jsf 2 ValueChangeListener不使用包含空值的,jsf-2,selectonemenu,valuechangelistener,Jsf 2,Selectonemenu,Valuechangelistener,我有一个对象列表,第一个为null以允许无选择选项,问题是当选择无选择选项时,中设置的valueChangeListener不会被激发 我希望它能够从数据表的内容中清除数据表: 1选择1对象,不为空->在菜单中显示相关数据 2如果选择了“无选择”选项,请清除表格 这是我的密码: <h:selectOneMenu id="flowSelectionFilter" value="#{errorController.flow

我有一个对象列表,第一个为null以允许无选择选项,问题是当选择无选择选项时,中设置的valueChangeListener不会被激发

我希望它能够从数据表的内容中清除数据表:

1选择1对象,不为空->在菜单中显示相关数据 2如果选择了“无选择”选项,请清除表格

这是我的密码:

                <h:selectOneMenu id="flowSelectionFilter"
                    value="#{errorController.flowSelectionFilter}" onchange="submit()"
                    valueChangeListener="#{errorController.changeFlow}">
                    <f:selectItems
                        value="#{errorController.flowSelectionFilterValues}"
                        var="flowFilter" itemLabel="#{flowFilter}" />
                </h:selectOneMenu>
当选择除null以外的任何其他对象时,将激发该方法


谢谢您的帮助

您能不能添加一些非空的内容,并将其作为无选择?比如一个空字符串?好的,我改变了对象的toString,当它为null且有效时,返回的不是空字符串。非常感谢。
public String changeFlow(ValueChangeEvent event) throws Glossat2Exception {

    if (glossaryVersionSelectionFilter == null) {
        glossaryVersionSelectionFilter = new GlossaryVersionSelectionFilter(this.errorBean.getSelectedGlossaryVersion());
    }
    flowSelectionFilter = flowSelectionFilterMap.get(event.getNewValue());
    errorBean.setSelectedFlow(flowSelectionFilter.getFlowWithAction());
    return loadErrorsList(glossaryVersionSelectionFilter.getGlossaryVersion(), flowSelectionFilter.getFlowWithAction(), errorBean.getSelectedData());
}