0

我是新手。

我有一个 Primefaces 选项卡(1. 摘要 2. 详细信息)。

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

我可以使用操作单击额外的列并记录选定的行,它也会移动到第二个选项卡。但是,它没有在第二个选项卡上显示我的 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 信息:RENDER_RESPONSE 2013 年 3 月 29 日下午 1:02:04 com.sun.faces.context.PartialViewContextImpl$PhaseAwareVisitCallback 访问严重:java。 lang.NullPointerException 2013 年 3 月 29 日下午 1:02:04 com.warnermusic.wis.util.JsfPhaseListener afterPhase 信息:RENDER_RESPONSE 6

但没有其他错误。

您能否帮助我并告诉我为什么在单击命令按钮时我无法在第二个选项卡上看到数据表,但是当我实际手动移动到下一个选项卡时我可以看到。

4

1 回答 1

0

选项卡的索引通常从 0 到 max-1。从您发布的代码看来,您正在尝试访问第二个选项卡,但您应该执行 oncomplete="tabViewV.select(1)"。

如果没有更多选项卡,通常会抛出此异常。

于 2013-10-18T08:34:23.950 回答