当前位置: 首页 > 知识库问答 >
问题:

始终将backing bean布尔属性设置为false

杭泉
2023-03-14

我有一个项目列表,我在网页上显示其内容。每个项目都有一个布尔值来表示它是否已被选中。下面给出了. xhtml文件和后备bean项目。问题是每次我选择或取消选择网页中的布尔按钮时,它总是将后备bean中的布尔属性设置为false。

.xhtml

<p:outputPanel layout="inline">
  <p:repeat id="projectSelect" 
            value="#{checkoutRulesBean.projectList}" 
            var="project">
    <p:selectBooleanButton id="project"
                            value="#{project.selected}"
                            onLabel="#{project.name}" 
                            offLabel="#{project.name}" 
                            onIcon="fa fa-check"
                            offIcon="fa fa-square-o"
                            style="margin: 5px; padding: 5px;" >

       <p:ajax listener="#{checkoutRulesBean.toggleProjectSelection()}"
             process="@this"
             update="@(.project-boards-table)"/>

    </p:selectBooleanButton>
  </p:repeat>
</p:outputPanel>

Project.java(背豆)

public class Project implements Serializable{
    
    private List<BoardCheckoutRules> boardCheckoutList = new ArrayList<>();
    private Boolean selected = true;
    private String name;
    
    /**
     * Creates a new instance of Project
     */
    public Project() {
    }
    
    public Project(String name){
        this.name = name;
    }


    public List<BoardCheckoutRules> getBoardCheckoutList() {
        return boardCheckoutList;
    }

    public void setBoardCheckoutList(List<BoardCheckoutRules> boardCheckoutList) {
        this.boardCheckoutList = boardCheckoutList;
    }

    public Boolean getSelected() {
        return selected;
    }

    public void setSelected(Boolean clicked) {
        PayaraLogger.logDebug(this.name + " has been " + ((clicked) ? "selected" : "unselected"));
        this.selected = clicked;
    }
   
    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }    
}

共有1个答案

黄磊
2023-03-14

我发现了问题所在。selectBooleanButton应该包装在一个

 类似资料:
  • 我有以下代码: 我的问题是在onCreate函数中,我有以下两行代码: 工作完美无瑕。但是m\u TrackDriver总是正确的。不管我按什么按钮。有人能解释为什么会这样吗? 提前感谢您的帮助。

  • 问题内容: 我下面有这段代码。如何初始化每个元素= false? 我看到了类似的问题。但是,第二行对我来说没有意义(您能解释第二行吗?)。 问题答案: a中元素的默认值为false。您不需要做任何事情。 之所以需要这样做是因为默认值为。 要初始化为true,使用过载的一个接受。 看到它在线上工作:ideone

  • 我正在Android Studio中构建一个库,并希望有一个名为性能的布尔值设置为true。但是,它返回false,我需要修复它。 我按照正常步骤创建字段。当,但java代码执行时就好像它是假的一样。库构建变量为,应用程序变量为。 下面是Java代码,它在库文件中将

  • 问题内容: 现在,我的JTable的值显示为。通常这没问题,但我想将它们显示为替代String或图像。我可以将它们显示为true / false,但如果为true,则希望将其显示为选中标记(✔),如果为false,则不显示任何内容。可能是一张图片,但首先要做一个字符串… 问题答案: 创建一个自定义渲染器。扩展DefaultTableCellRenderer并添加您自己的代码以显示所需的内容。它可以

  • 问题内容: 为什么会出现错误或未捕获的TypeError:无法将属性’innerHTML’设置为null?我以为我了解innerHTML并在以前使用过。 问题答案: 您必须将div放在脚本之前,以便在加载脚本时该div存在。

  • 我正在使用JSTL标签。我有下面的代码。 现在变量refreshSent有布尔值还是字符串? 谢谢