0 Replies Latest reply on Apr 13, 2011 11:44 AM by pechnik

    Loading data for rich:tab only when it is selected.



      I have rich:tabPanel  with four tabs. In each tab I have a very big table.  I want to draw and show tables only when tab with this table is active, and not to fetch data for those tables that are not visible.

      I tried something like this



       <rich:tabPanel switchType="ajax" >
                                <rich:tab header="By Currency" limitRender="true"  onenter ="#{TradersSymbolStats.onBy_currency()}" render="hex" status="waitStatus">
                                      <rich:panel id="hex">
                                          <c:if  test="#{TradersSymbolStats.by_currency}">
                                               <ui:include src="by_currency.xhtml" />
                                 <rich:tab header="By Currency Pair" limitRender="true" onenter="#{TradersSymbolStats.onBy_currency_pair()}"  status="waitStatus">
                                     <!--<ui:include src="by_currency_pair.xhtml" />-->
                                 <rich:tab header="By Positions" limitRender="true" onenter="#{TradersSymbolStats.onClosed_possitions()}" action="#{TradersSymbolStats.reloadClosedPossitions}" status="waitStatus">
                                     <!--<ui:include src="closed_possitions.xhtml" />-->
                                 <rich:tab header="Execution reports" limitRender="true" onenter="#{TradersSymbolStats.onExecution_reports()}" action="#{TradersSymbolStats.reloadExecutionReportByTime}" status="waitStatus">
                                     <!--<ui:include src="execution_reports.xhtml"/>-->


      But on enter is called after the c:if has been called.

      Is it possible to load the content of the tabs dynamicly?

      I am using RichFaces 4