Jsf2 - Richfaces4 - 数据滚动器actionListener未使用datatable调用

时间:2014-03-24 13:43:48

标签: jsf-2 richfaces

为了简短起见,在jsf页面中,我有2个rich:dataTable。

第一个加载在页面的onLoad事件中。

在第一行中单击一行时会加载第二行。

两个表都有一个rich:dataScroller。

除了我没有找到如何使用dataScroller的actionListener之外,一切正常。

示意我有

<rich:collapsiblePanel>
<h:form>
    <h:panelGroup id="table1">
        <rich:dataTable>
            <f:facet name="header">
            </f:facet>
            <rich:column>
            </rich:column>
            <f:facet name="footer">
                <rich:dataScroller reRender="table1,table2" page="1" actionListener="#{mybean.ac}"/>
            </f:facet>
        </rich:dataTable>
    </h:panelGroup>
    <h:panelGroup id="table2">
        <rich:dataTable rendered="#{myBean.rowSelected != null}">
            <f:facet name="header">
            </f:facet>      
            <rich:column>
            </rich:column>
            <f:facet name="footer">
                <rich:dataScroller reRender="table1" page="1" />
            </f:facet>
        </rich:dataTable>
    </h:panelGroup>
</h:form>
</rich:collapsiblePanel>

我的豆子里有

Long rowSelected;

public void ac()
{
rowSelected = null;
System.out.println("xxxxxxxxxxxxxxxxxxxxxxxxxx");
}

但无所事事,从未成功使其发挥作用。

我也尝试过没有任何差异

public void ac(ActionEvent ae)    -  using javax.faces.event.ActionEvent

action="#{mybean.ac}"

1 个答案:

答案 0 :(得分:1)

<rich:dataScroller>既没有action也没有actionListener属性。如果您使用的是RichFaces 4.3,则可以使用scrollListener。请参阅docs