无法为布尔型变量[duplicate]设置真假值

问题描述 投票:-1回答:1
我无法将布尔值设置为false值我有以下代码

Form.xhtml

<ui:composition xmlns="http://www.w3.org/1999/xhtml"> <h:form> <p:panel id="work" styleClass="panelNoBorder"> <p:fieldset toggleable="true" toggleSpeed="500" legend="Core"> <h:panelGrid columns="2" styleClass="panelNoBorder" rendered="#{javaMB.formNotComplete and !javaMB.formRejected}"> <p:outputLabel value="Form Number"/> <p:row> <p:inputText id="formNumber" value="#{javaMB.formNumber}" maxlength="10"> </p:inputText> </p:row> <p:outputLabel value="Result"/> <p:row> <p:inputText id="result" maxlength="10" value="#{javaMB.result}"> </p:inputText> </p:row> </h:panelGrid> </p:fieldset> </p:panel> </h:form> </ui:composition>

public class JavaMB {

    private boolean formRejected = false;
    private boolean formNotComplete = true;

    public boolean isFormRejected() {
        return formRejected;
    }

    public void setFormRejected(boolean formRejected) {
        this.formRejected = formRejected;
    }

    public boolean isFormNotComplete() {
        return formNotComplete;
    }

    public void setFormNotComplete(boolean formNotComplete) {
        this.formNotComplete = formNotComplete;
    }

    public void initializeWorkFlow() {
        logger.debug("Form: " + FormEntity.getFormId());
        if (workflow.getActionType().getActionTypeId() == '5') {
            this.setFormNotComplete(false);
        } else if (workflow.getActionType().getActionTypeId() == '7') {
            this.setFormRejected(true);
        } else {

        }

    }
}
设置值放置在if语句内,if语句工作得很好

问题是我无法正确显示布尔值。控制台中没有错误,

this.setFormNotComplete(false); this.setFormRejected(true);

任何想法如何解决此问题?

数据库具有“已批准”和“未批准”的值,因此,如果记录的值为5或7,则它必须达到这些值,并且不显示面板。>

在数据库中,我们有一个表工作流程和操作类型ID

设置为要记录的操作类型ID的5个被批准或7个被拒绝

基于这些值,setFormNotComplete(如果setFormRejected(true必须起作用,则为false 7)>

<h:panelGrid rendered="#{javaMB.formNotComplete and !javaMB.formRejected}"> if (workflow.getActionType().getActionTypeId() == '5') { this.setFormNotComplete(false); } else if (workflow.getActionType().getActionTypeId() == '7') { this.setFormRejected(true); } else {

我无法将布尔值设置为false,我有以下代码Form.xhtml  

>
jsf
1个回答
0
投票
对于布尔字段,getter方法名称应为is<First letter capitalised field name>,但您的不是。

[public boolean isformRejected()应为public boolean isFormRejected()public boolean isformNotComplete()应为public boolean isFormNotComplete()

所以您的课程应该如下。

public class JavaMB { private boolean formRejected = false; private boolean formNotComplete = true; public boolean isFormRejected() { return formRejected; } public void setFormRejected(boolean formRejected) { this.formRejected = formRejected; } public boolean isFormNotComplete() { return formNotComplete; } public void setFormNotComplete(boolean formNotComplete) { this.formNotComplete = formNotComplete; } public void initializeWorkFlow() { logger.debug("Form: " + FormEntity.getFormId()); if (workflow.getActionType().getActionTypeId() == '5') { this.setFormNotComplete(false); } else if (workflow.getActionType().getActionTypeId() == '7') { this.setFormRejected(true); } else { } } }

© www.soinside.com 2019 - 2024. All rights reserved.