号码:dataTable中与转换器/验证器。 行被editted其他比第一页没有在编辑模式停留在

2019-10-21 03:20发布

考虑任何简单<p:dataTable>与任何JSF验证器(S)/转换器(S)。 下面给出一个简化版本为例来降低复杂性。

<p:column>
    <p:cellEditor>
        <f:facet name="output">
            <h:outputText value="#{row.value}"/>
        </f:facet>
        <f:facet name="input">
            <p:inputText value="#{row.value}" required="true"/>
        </f:facet>
    </p:cellEditor>
</p:column>

给定的<p:inputText>是强制性的。 自然地,如果一个<p:row>被编辑(使用<p:rowEditor>和给定的验证被违反上点击链接(通过默认勾号指示),则该行应该留在编辑模式,除非验证通过。 此正确地只发生的第一页上<p:dataTable>

如果表页, 如果一个页面变更成其他比第一页 ,然后行正在编辑将在显示模式走,即使曾经的编辑链接按下确认并不满意。

实际上,验证内部正确地执行,但编辑的行不停留在编辑模式下,如果任何验证(S)为侵犯。 它只要编辑链接被点击进去显示模式。 这当然是不应该的。

回来的第一页从另一个页面<p:dataTable>要再次令人惊讶的神色如常(总之,预期的行为只发生的第一页上<p:dataTable> )。

有针对这个的解决方法吗?

鉴于它PrimeFaces 5.0和5.1或者(社区发行版)一试。


更新:这不会发生在PrimeFaces 5.2最终太(社区发行版)。

Answer 1:

这个问题不再重现的PrimeFaces 5.3最终 (社区发行版)。

因此,我认为这是不考虑的问题状态(这是“回顾”)在固定 冻结问题跟踪 。

比其他的唯一解决方案是修改的源代码,如果使用(或更高)的版本不是一个选项。



文章来源: p:dataTable with converters/validators. Rows being editted on other than the first page do not stay in edit mode on conversion/validation violation