如何使用valueChangeListener获取bean中的selectManyCheckbox值?

时间:2014-04-21 12:21:07

标签: java netbeans jsf-2 primefaces xhtml

我试图让用户选择值到我的支持bean。我在下面发布了我的XHTML代码:

<p:selectManyCheckbox  style="z-index: 1000" id="gencount" layout="grid" columns="1" valueChangeListener="#{subUserBean.degreeFilter}">
    <p:ajax event="click"/>
    <f:selectItem itemValue="All" itemLabel="All"/>
    <f:selectItem itemValue="BE" itemLabel="BE"/>
    <f:selectItem itemValue="B.TECH" itemLabel="B.TECH"/>
    <f:selectItem itemValue="MCA" itemLabel="MCA"/>
</p:selectManyCheckbox>

我的bean中的值更改侦听器:

public void degreeFilter(ValueChangeEvent dege) {
    System.out.println("Select degree-->"+dege.getNewValue().toString());
}

我只得到对象值为“[Ljava.lang.String; @ a33ca7”,但我需要选择值为“BE”。

1 个答案:

答案 0 :(得分:1)

public void degreeFilter(ValueChangeEvent dege) {  
    Object[] objArr = (Object[])dege.getNewValue();
    for (int x = 0; x < objArr.length; x++)
    {
        Object obj = objArr[x]; 
        System.out.println(obj.toString());
        degree=obj.toString();
    }
}