0

私は初心者です。

Primefaces タブがあります (1. 概要 2. 詳細)。

ユーザーがアイテムのリストを検索できるようにしてから、最初のタブで、primefaces データテーブルに結果が表示されます。テーブルに加えて、ユーザーがクリックする追加の列があり、対応するレコードの詳細行を取得し、2 番目のタブに切り替える必要があります。

アクションを使用して余分な列をクリックし、選択した行をログに記録すると、2 番目のタブにも移動します。ただし、2番目のタブにプライムフェイスのデータテーブルが表示されていません。

ただし、2 番目のタブを手動でクリックすると、データテーブルとすべての正しいデータが表示されます。

<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 PM com.warnermusic.wis.util.JsfPhaseListener beforePhase INFO: RENDER_RESPONSE 6 2013 年 3 月 29 日 1:02:04 PM com.sun.faces.context.PartialViewContextImpl$PhaseAwareVisitCallback にアクセス SEVERE: java. lang.NullPointerException 2013 年 3 月 29 日 1:02:04 PM com.warnermusic.wis.util.JsfPhaseListener afterPhase INFO: RENDER_RESPONSE 6

しかし、他のエラーはありません。

コマンドボタンをクリックしているときに2番目のタブにdataTableが表示されない理由を教えてください。しかし、実際に次のタブに手動で移動すると表示されます。

4

1 に答える 1

0

通常、タブには 0 から max-1 までのインデックスが付けられます。投稿したコードから、2 番目のタブにアクセスしようとしているように見えますが、oncomplete="tabViewV.select(1)" を実行する必要があります。

タブがなくなると、通常、この例外がスローされます。

于 2013-10-18T08:34:23.950 に答える