Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.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
Jsf PrimeFaces数据表头中的输入不更新支持bean-解决方案?_Jsf_Jsf 2_Primefaces - Fatal编程技术网

Jsf PrimeFaces数据表头中的输入不更新支持bean-解决方案?

Jsf PrimeFaces数据表头中的输入不更新支持bean-解决方案?,jsf,jsf-2,primefaces,Jsf,Jsf 2,Primefaces,如果我将一个输入组件放在数据表之外,那么支持bean将用输入更新,搜索工作正常,在数据表中正确显示结果 <h:form> <!-- ------- Calendar input component outside dataTable ------- --> <p:calendar id="selectHireDate" value="#{backingBean.hireDateToSearch}" /> <p:dataTable id=

如果我将一个输入组件放在数据表之外,那么支持bean将用输入更新,搜索工作正常,在数据表中正确显示结果

<h:form>
<!-- ------- Calendar input component outside dataTable ------- -->
    <p:calendar id="selectHireDate" value="#{backingBean.hireDateToSearch}" />

    <p:dataTable id="employeeDataTable"
        value="#{backingBean.employeeDataModel}" var="employee">
        <p:columnGroup type="header">
            <p:row>
                <p:column>                           
                        <f:facet name="header">
                            Lorem Ipsum
                        </f:facet>                          
                </p:column>
            </p:row>
        </p:columnGroup>

        <p:column>
            <h:outputText value="#{employee.hireDate}" />
        </p:column>     
    </p:dataTable>

    <p:commandButton value="Submit"
    actionListener="#{backingBean.searchEmployees}"
    update="employeeDataTable" />
</h:form>

乱数假文
但是,如果我将该输入组件放在数据表的头中,那么备份bean将突然不再更新。(我在backingBean.setHireDateToSearch上放置了一个断点,该断点会被上面的代码绊倒,但不会被下面的代码绊倒。)



为什么会这样?有没有办法让后一种设置生效?

我可以重现您的问题,当我去掉
周围的
时,问题就解决了,而
本身在这个构造中没有多大意义

<p:dataTable id="employeeDataTable" value="#{backingBean.employeeDataModel}" var="employee">
    <f:facet name="header">
        <p:calendar id="selectHireDate" value="#{backingBean.hireDateToSearch}" />
    </f:facet>                          
    <p:column>
        <h:outputText value="#{employee.hireDate}" />
    </p:column>     
</p:dataTable>

(这只显示了第二行空的
标题,您可以通过一点CSS将其隐藏起来)


不确定这是由设计还是由与
关联的
decode()
方法中的某个错误引起的。当然,我会把它交给PrimeFaces的家伙。

不过,我想保留标题中的行,因为我的表将有两个标题行。我看不到消除columnGroup和保留行的方法。你看到解决方案了吗?@Kiwi你找到这个问题的解决方案了吗?我对p:selectBooleanCheckbox有类似的问题。。。此处描述:这些问题是否相关?缺陷附言:我们使用的是PF 3.5.25@巴卢斯克:你还记得你报告的是哪一个bug吗?
<p:dataTable id="employeeDataTable" value="#{backingBean.employeeDataModel}" var="employee">
    <f:facet name="header">
        <p:calendar id="selectHireDate" value="#{backingBean.hireDateToSearch}" />
    </f:facet>                          
    <p:column>
        <h:outputText value="#{employee.hireDate}" />
    </p:column>     
</p:dataTable>