6 Replies Latest reply on Dec 15, 2010 11:11 AM by Vladimir Nikolic

    rich:listShuttle getters

    Vladimir Nikolic Newbie

      Is there any way for listShuttle not to call get methods every second or so?

        • 1. Re: rich:listShuttle getters
          Nick Belaevski Master

          Hi Vladimir,

           

          It shouldn't do that out of the box - it's solely client-side component. Please post your page code.

          • 2. Re: rich:listShuttle getters
            Vladimir Nikolic Newbie

            here is the part of code. When i comment this server is acting normal:

             

             

                         <h:form id="form">
                                <rich:listShuttle sourceValue="#{izmenaKonkretnihKursevaController.profesori}"
                                    targetValue="#{izmenaKonkretnihKursevaController.izabraniProfesori}" var="items" listsHeight="150"
                                    sourceListWidth="130" targetListWidth="130" sourceCaptionLabel="Available Items"
                                    targetCaptionLabel="Currently Active Items">
                                        <rich:column>
                                            <h:outputText value="#{items}"></h:outputText>
                                        </rich:column>
                                 </rich:listShuttle>
                          </h:form>

            • 3. Re: rich:listShuttle getters
              Nick Belaevski Master

              This should not be calling these methods by itself. Are you updating component periodically using poll or similar component?

              • 4. Re: rich:listShuttle getters
                Vladimir Nikolic Newbie

                Here is the whole page:

                 

                <!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:f="http://java.sun.com/jsf/core"
                    xmlns:h="http://java.sun.com/jsf/html"
                    xmlns:ui="http://java.sun.com/jsf/facelets"
                    xmlns:sf="http://www.springframework.org/tags/faces"
                    xmlns:a4j="http://richfaces.org/a4j"
                    xmlns:rich="http://richfaces.org/rich">
                <head>
                <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
                <title>ECIS</title>

                 

                </head>
                <body>
                <f:view>

                 

                    <ui:composition template="/WEB-INF/layouts/standard.jspx">

                 

                        <ui:define name="content">
                            <rich:tabPanel switchType="client">
                             
                                <rich:tab label="Izaberi profesore">
                                    <h:form id="form">
                                        <h:panelGrid columns="2" id="unesiProf">
                                            <rich:listShuttle
                                                sourceValue="#{izmenaKonkretnihKursevaController.profesori}"
                                                targetValue="#{izmenaKonkretnihKursevaController.izabraniProfesori}"
                                                var="items" listsHeight="150" sourceListWidth="130"
                                                targetListWidth="130" sourceCaptionLabel="Available Items"
                                                targetCaptionLabel="Currently Active Items">
                                                <rich:column>
                                                    <h:outputText value="#{items}"></h:outputText>
                                                </rich:column>
                                            </rich:listShuttle>
                                            <h:commandButton value="udri" action="#{izmenaKonkretnihKursevaController.unesiProfesore}" />
                                        </h:panelGrid>
                                    </h:form>
                                </rich:tab>

                                <rich:tab label="Izaberi datume casova">
                                    <h:form id="form2">
                                        <rich:messages />
                                        <a4j:jsFunction name="ajaxSubmit"
                                            oncomplete="#{rich:component('panel')}.show()"/>
                                        <rich:calendar
                                            value="#{izmenaKonkretnihKursevaController.izabraniDatum}"
                                            popup="false" showApplyButton="false" cellWidth="40px"
                                            cellHeight="40px"
                                            onchanged="if (event.rich.date) {ajaxSubmit();}"
                                            oncurrentdateselect="return false" id="organizer"
                                            valueChangeListener="#{izmenaKonkretnihKursevaController.promenaVrednosti}"
                                            showFooter="false">
                                            <f:facet name="header">
                                                <h:panelGroup>
                                                    <h:outputText value="Current Month" styleClass="header" />
                                                </h:panelGroup>
                                            </f:facet>

                 

                                        </rich:calendar>
                                    </h:form>
                                    <rich:modalPanel id="panel" resizeable="false">
                                        <f:facet name="header">Edit Day:</f:facet>
                                        <f:facet name="controls">
                                            <h:panelGroup>
                                                <h:graphicImage value="/images/modal/close.png" id="hidelink"
                                                    styleClass="hidelink" />
                                                <rich:componentControl for="panel" attachTo="hidelink"
                                                    operation="hide" event="onclick" />
                                            </h:panelGroup>
                                        </f:facet>
                                        <h:form id="form3">
                                            <h:panelGrid columns="2" id="editContent">
                                                <h:outputText value="Zauzeti termini:" />
                                                <h:outputText value="Zauzeti termini:" />
                                                <h:outputText value="Izaberi vreme:" />
                                                <h:panelGrid columns="2" id="vremena" width="200px">
                                                    <f:facet name="header">
                                                        <rich:columnGroup id="vremenaHeader">
                                                            <rich:column>
                                                                <h:outputText value="Pocetak" style="100px" />
                                                            </rich:column>
                                                            <rich:column>
                                                                <h:outputText value="Kraj" style="100px" />
                                                            </rich:column>
                                                        </rich:columnGroup>
                                                    </f:facet>
                                                    <rich:inputNumberSpinner id="satiPocetak" minValue="0"
                                                        maxValue="23" step="1"
                                                        value="#{izmenaKonkretnihKursevaController.satiPocetak}" />
                                                    <rich:inputNumberSpinner id="minutiPocetak" minValue="0"
                                                        maxValue="45" step="15"
                                                        value="#{izmenaKonkretnihKursevaController.minutiPocetak}" />
                                                    <rich:inputNumberSpinner id="satiKraj" minValue="0"
                                                        maxValue="23" step="1"
                                                        value="#{izmenaKonkretnihKursevaController.satiKraj}" />
                                                    <rich:inputNumberSpinner id="minutiKraj" minValue="0"
                                                        maxValue="45" step="15"
                                                        value="#{izmenaKonkretnihKursevaController.minutiKraj}" />
                                                    <a4j:commandButton value="Store"
                                                        action="#{izmenaKonkretnihKursevaController.sacuvajDan}"
                                                        id="storebutton"
                                                        oncomplete="#{rich:component('panel')}.hide()"
                                                        reRender="organizer" />
                                                    <button type="button" id="cancelbutton"
                                                        onclick="#{rich:component('panel')}.hide()">Cancel</button>
                                                </h:panelGrid>
                                            </h:panelGrid>
                                        </h:form>
                                    </rich:modalPanel>
                                </rich:tab>
                            </rich:tabPanel>

                 

                    <h:form>
                        <a4j:outputPanel id="progressPanel">
                            <rich:progressBar value="#{izmenaKonkretnihKursevaController.progresBar}"
                                interval="2000" label="#{izmenaKonkretnihKursevaController.progresBar} %">
                            </rich:progressBar>
                        </a4j:outputPanel>
                    </h:form>

                 


                        </ui:define>
                    </ui:composition>

                 

                </f:view>

                 

                </body>

                 

                </html>

                The method getProfesori() (getter for sourceValue for listShuttle) is called every few seconds.

                The part of server log that is repeating lookes like this ("aaaaaaa" is system.out in getProfesori):

                 

                 

                Dec 15, 2010 2:20:44 PM org.apache.catalina.core.ApplicationContext log
                INFO: BEFORE - RESTORE_VIEW 1
                Dec 15, 2010 2:20:44 PM org.apache.catalina.core.ApplicationContext log
                INFO: AFTER - RESTORE_VIEW 1
                Dec 15, 2010 2:20:44 PM org.apache.catalina.core.ApplicationContext log
                INFO: BEFORE - APPLY_REQUEST_VALUES 2
                Dec 15, 2010 2:20:44 PM org.apache.catalina.core.ApplicationContext log
                INFO: AFTER - APPLY_REQUEST_VALUES 2
                Dec 15, 2010 2:20:44 PM org.apache.catalina.core.ApplicationContext log
                INFO: BEFORE - PROCESS_VALIDATIONS 3
                Dec 15, 2010 2:20:44 PM org.apache.catalina.core.ApplicationContext log
                INFO: AFTER - PROCESS_VALIDATIONS 3
                Dec 15, 2010 2:20:44 PM org.apache.catalina.core.ApplicationContext log
                INFO: BEFORE - UPDATE_MODEL_VALUES 4
                Dec 15, 2010 2:20:44 PM org.apache.catalina.core.ApplicationContext log
                INFO: AFTER - UPDATE_MODEL_VALUES 4
                Dec 15, 2010 2:20:44 PM org.apache.catalina.core.ApplicationContext log
                INFO: BEFORE - INVOKE_APPLICATION 5
                Dec 15, 2010 2:20:44 PM org.apache.catalina.core.ApplicationContext log
                INFO: AFTER - INVOKE_APPLICATION 5
                Dec 15, 2010 2:20:44 PM org.apache.catalina.core.ApplicationContext log
                INFO: BEFORE - RENDER_RESPONSE 6
                aaaaaaa
                Dec 15, 2010 2:20:44 PM org.apache.catalina.core.ApplicationContext log
                INFO: AFTER - RENDER_RESPONSE 6

                • 5. Re: rich:listShuttle getters
                  Nick Belaevski Master

                  I think it's caused by https://issues.jboss.org/browse/RF-3341, so try setting limitToList="true" for progressBar.

                  • 6. Re: rich:listShuttle getters
                    Vladimir Nikolic Newbie

                    It worked, thank you very much