【问题标题】:Problems using Composite JSF with DataTable将 Composite JSF 与 DataTable 一起使用时出现的问题
【发布时间】:2014-04-03 10:51:12
【问题描述】:

嗯,我开始使用 Composite JSF 2.0,但我遇到了以下问题。

这是我的合成:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:ui="http://java.sun.com/jsf/facelets"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:p="http://primefaces.org/ui"
    xmlns:composite="http://java.sun.com/jsf/composite">

<composite:interface>

</composite:interface>

<composite:implementation>
    <p:ajax event="rowSelect" update="@form" />
    <p:ajax event="rowUnselect" update="@form" />
</composite:implementation>

</html>

我正在尝试以这种方式使用这种复合材料:

<p:dataTable rowKey="#{cartao.id}" var="cartao"
                    value="#{cartaoCreditoMB.beans}" paginator="true"
                    emptyMessage="Não foi encontrado nenhum registro" rows="10"
                    id="dataTableCartoesCredito" selection="#{cartaoCreditoMB.bean}"
                    selectionMode="single">

                    <application:rowSelectUnSelect />
 </p:dataTable>

但我收到以下错误:

/resources/application/rowSelectUnSelect.xhtml @14,45 <p:ajax> Unable to attach <p:ajax> to non-ClientBehaviorHolder parent

【问题讨论】:

    标签: jsf jsf-2 primefaces composite-component


    【解决方案1】:

    这两行:

    <p:ajax event="rowSelect" update="@form" />
    <p:ajax event="rowUnselect" update="@form" />
    

    必须嵌套在实现ClientBehaviourHolder 接口的组件中。

    您可能需要将&lt;p:ajax&gt; 嵌套在&lt;p:dataTable&gt; 中:

    <p:dataTable ...>
       <p:ajax ... /> 
       ...
    </p:dataTable>
    

    因为DataTable 类确实实现了ClientBehaviourInterface

    【讨论】:

    • 但是我在我的页面中使用了 ,正如我在帖子中所展示的那样。如果我在复合材料中再次使用 ,我将有 2 个 ,对吗?像这样:...composite...
    • 是的。从组合中移除 &lt;p:ajax&gt; 并仅使用 &lt;p:dataTable&gt; 组件。
    • 是否有某种方式可以按我的意愿使用
    • 没有。正如我提到的,&lt;p:ajax&gt; 必须嵌套在实现特定接口的组件中。这就是为什么你不能放在任何你想要的地方。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-03-15
    • 2011-05-27
    • 1970-01-01
    • 1970-01-01
    • 2023-04-07
    • 2010-10-26
    • 2020-06-17
    相关资源
    最近更新 更多