Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/jsf/5.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
Java 如何通过jsf动态地为复选框赋值?_Java_Jsf - Fatal编程技术网

Java 如何通过jsf动态地为复选框赋值?

Java 如何通过jsf动态地为复选框赋值?,java,jsf,Java,Jsf,我尝试了以下方法: <h:form> <h:selectManyCheckbox value="#{example.allValues}"> <f:selectItems value="#{example.values}" /> </h:selectManyCheckbox> </h:form> 但它并没有显示价值观 这是我的豆子: public class Example { privat

我尝试了以下方法:

<h:form>
    <h:selectManyCheckbox value="#{example.allValues}">
        <f:selectItems value="#{example.values}" />
    </h:selectManyCheckbox>
</h:form>

但它并没有显示价值观

这是我的豆子:

public class Example {
    private List<String> allValues;
    private List<String> values;

    public void init() {
        System.out.println("Inside INIT");
        values = new ArrayList<String>();
        values.add("ABC");
        values.add("XYZ");
        values.add("PQR");
    }

    public List<String> getValues() {
        return values;
    }

    public List<String> getAllValues() {
        return allValues;
    }

    public void setAllValues(List<String> allValues) {
        this.allValues = allValues;
    }
}
公共类示例{
私有列表所有值;
私有列表值;
公共void init(){
System.out.println(“内部初始化”);
值=新的ArrayList();
增加(“ABC”);
添加(“XYZ”);
添加(“PQR”);
}
公共列表getValues(){
返回值;
}
公共列表getAllValues(){
返回所有值;
}
public void setAllValues(列出所有值){
this.allValues=allValues;
}
}

请告诉我我做错了什么。。谢谢

您必须注释
init()
方法
PostConstruct
,否则它将不会被调用。此外,必须使用
@ManagedBean
对该类进行注释:

@ManagedBean
public class Example {
    //..     

    @PostConstruct
    public void init() {
       //..
    }
}

如何调用
init()
方法?它是由
@PostConstruct
注释的还是您打算使用
?@学员请标记此答案已接受以结束此问题。我们在这里是如何相互感谢的