如何为不同的bean重用相同的数据表?

时间:2012-02-14 08:05:09

标签: jsf-2 primefaces

是否可以使用具有多个数据源的相同数据表?如果是,那怎么样?有人可以给我一个例子吗? 更准确地说,我们可以将不同的源绑定/取消绑定到数据表programaticaly吗?

3 个答案:

答案 0 :(得分:2)

是的,这是可能的。通常,您将数据表的value属性设置为List<MyClass>,其中MyClass可以是pojo或实体。该列表是您的支持bean的实例变量,当然变量可以在运行时更改。

答案 1 :(得分:1)

答案 2 :(得分:1)

为清楚起见,下面给出了一些示例代码......

<p:selectOneRadio id="myRadio" value="#{beanProductDetails.selectedtype}">
    <f:selectItems value="#{bean.types}"/>
    <f:ajax event="valueChange" update="panel_CATALOG" listener="#{bean.typeChanged}" />
</p:selectOneRadio>


<h:panelGrid id="panel_CATALOG">
    <p:dataTable id="table_Details" value="#{bean.list_Details}">
        ........
    </p:dataTable>
</h:panelGrid>

提供selectOneRadio以决定使用哪个数据源。在这里,在bean的typeChanged方法中,根据所选类型决定list_Details应该是什么。