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
Validation 即使验证失败也要更新JSFbean吗?_Validation_Jsf_Primefaces - Fatal编程技术网

Validation 即使验证失败也要更新JSFbean吗?

Validation 即使验证失败也要更新JSFbean吗?,validation,jsf,primefaces,Validation,Jsf,Primefaces,当验证失败时,JSF bean通常不会更新,这在某些情况下会导致非常糟糕的效果,例如,在使用p:inplace的facet=“output”时: #{test.myBooleanText} 输出方面定义了就地标签,这些标签应本地化,而不是标准标签: 私有布尔myBoolean; 公共字符串getMyBooleanText(){ 返回myBoolean?“Ja”:“不”; } 但是,当验证失败时,inplace输出方面显示复选框的旧值,而不是实际值。如果单击它,将显示一个实际值 如何解决这个

当验证失败时,JSF bean通常不会更新,这在某些情况下会导致非常糟糕的效果,例如,在使用
p:inplace
facet=“output”
时:


#{test.myBooleanText}
输出方面定义了就地标签,这些标签应本地化,而不是标准标签:

私有布尔myBoolean;
公共字符串getMyBooleanText(){
返回myBoolean?“Ja”:“不”;
}
但是,当验证失败时,inplace输出方面显示复选框的旧值,而不是实际值。如果单击它,将显示一个实际值


如何解决这个问题并正确实现输出?将值提交给bean将是最好的,因为只要没有实际执行任何操作(由验证断言),我对客户端和服务器上的值的一致状态没有问题

我自己还没试过,但给我一个机会:

<p:inplace id="checkboxInplace" effect="none">
    <f:facet name="output">#{test.myBoolean ? 'Ja' : 'Nein'}</f:facet>
    <f:facet name="input">
        <h:selectBooleanCheckbox value="#{test.myBoolean}" immediate="true">
            <p:ajax update="@parent" />
        <h:selectBooleanCheckbox />
    </f:facet>
</p:inplace>

#{test.myBoolean'Ja':'Nein'}

都是一样的。EL不会重新执行,但输入的值会保留在客户端。如果删除facet会发生什么?只有inplace中的select布尔值。实际上,如果没有切面,它将无法正常工作。它总是显示空标签。。。