Primefaces CommandButton(在Datatable内) - 在第二个选项卡上刷新Datatable并切换到该选项卡

时间:2013-03-29 04:22:43

标签: primefaces datatable switching

我是新手。

我有一个Primefaces标签(1. Summary 2. Detail)。

我允许用户搜索项目列表,然后在第一个选项卡中,primefaces数据表显示结果。除了表格外,还有一个额外的列,用户点击该列,然后它应该检索相应的记录详细信息行,并切换到第二个选项卡。

我可以使用Action单击额外列并记录所选行,它也会移动到第二个选项卡。但是它没有在第二个选项卡上显示我的primefaces数据表。

但是,当我手动点击第二个标签时,我可以看到数据表和所有正确的数据。

<p:column width="30">  
<p:commandButton id="selectDetailCb" 
                     title="View detail"
                     oncomplete="tabViewV.select(2)"
         action="#itunesAnalysisToolMb.retrieveProductDetailRpt(itunesAnalysisToolSummaryV)}"
   icon="ui-icon-search" 
                                                     update=":itunesAnalysisToolForm:tabView:itunesAnalysisToolDetailDt">
                                    </p:commandButton>      
                                </p:column> 

/*
 * Retrieve the iTunes Analysis Tool detail for the selected product and for the selected time frame.
 */
public void retrieveProductDetailRpt(ItunesAnalysisToolSummary selectedProduct){

    log.debug(selectedProduct.getRank());
    log.debug(selectedProduct.getArtist());
    log.debug(selectedProduct.getTitle());
    log.debug(this.startReportDate);
    log.debug(this.endReportDate);
    log.debug(this.itunesProductTypeCode);

    //return "goToDetail";
}

在后台我收到此消息。

  

2013年3月29日下午1:02:04 com.warnermusic.wis.util.JsfPhaseListener   beforePhase INFO:RENDER_RESPONSE 6 Mar 29,2013 1:02:04 PM   com.sun.faces.context.PartialViewContextImpl $ PhaseAwareVisitCallback   访问SEVERE:java.lang.NullPointerException 2013年3月29日下午1:02:04   com.warnermusic.wis.util.JsfPhaseListener afterPhase INFO:   RENDER_RESPONSE 6

但没有其他错误。

请您帮我解释一下,为什么我在单击命令按钮时无法在第二个选项卡上看到dataTable,但我可以看到我实际上何时手动移动到下一个选项卡。

1 个答案:

答案 0 :(得分:0)

标签通常从0到最大-1索引。您发布的代码似乎是您尝试访问第二个选项卡,但您应该执行oncomplete =“tabViewV.select(1)”。

如果没有更多标签,通常会抛出此异常。