1 Reply Latest reply on Apr 5, 2011 5:30 AM by ilya_shaikovsky

    Richfaces 4.0: <rich:tabPanel/> reRendered automatically...

    jolacitrouille

      Hi,

       

      The component <rich:tabPanel/> in richfaces 4.0 doesn't seem to behave the same as in richfaces 3.3. Indeed the content of a <rich:tabPanel/> is systematically rerender using richfaces 4.0, which wasn't the case in 3.3 and I am not able to disable this behavior. There are no attributes such as ajaxRendered (actually even when I set limitRender on my a4j:commandButton, the tab content is still rendered). Following is a little example showing this behavior. When the page gets loaded both OUTSIDE and INSIDE popup are displayed (which is the expected behavior), but when the button is pressed INSIDE popup is display (which isn't the case with richfaces 3.3).

       

      <?xml version='1.0' encoding='UTF-8' ?>

      <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

      <html xmlns="http://www.w3.org/1999/xhtml"

            xmlns:h="http://java.sun.com/jsf/html"

            xmlns:a4j="http://richfaces.org/a4j"

            xmlns:rich="http://richfaces.org/rich">

       

          <h:head>

              <title>Test</title>

              <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

       

          </h:head>

          <h:body>

                 <h:form id="mainForm">

                  <script type="text/javascript">

                      alert("OUTSIDE Tab!");

                  </script>

       

                  <rich:tabPanel switchType="client">

                      <rich:tab>

                          <script type="text/javascript">

                              alert("INSIDE Tab!");

                          </script>

                      </rich:tab>

                  </rich:tabPanel>

       

                  <a4j:commandButton value="CLICK HERE" immediate="true"/>

              </h:form>

          </h:body>

      </html>

       

      Am I missing something? Somebody could give me a hint?

       

      Thanks