[jboss-user] [JBoss Seam] - Re: getter method called hundereds of times

terryb do-not-reply at jboss.com
Sat Oct 27 13:15:46 EDT 2007


Pete, it came down to 113 calls (half of as in my initial post), after I removed a4j:support call from form submission button (h:commandButton ...). but removing other a4j calls didn't make difference. 113 calls still seems too many. application im working towards  will be used by hundereds of users at one time.


  | organisation-user-activity-log-list.xhtml
  | <!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
  |                              "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  | 
  | <ui:composition xmlns="http://www.w3.org/1999/xhtml"
  |                 xmlns:s="http://jboss.com/products/seam/taglib"
  |                 xmlns:ui="http://java.sun.com/jsf/facelets"
  |                 xmlns:f="http://java.sun.com/jsf/core"
  |                 xmlns:h="http://java.sun.com/jsf/html"
  |                 xmlns:a4j="http://richfaces.org/a4j" 
  |                 xmlns:rich="http://richfaces.org/rich"
  |                 template="layout/template.xhtml">
  |                        
  | <ui:define name="content">
  |     
  |     <div class="section">
  | 
  |     <h1>Organisation User Activity Log - Search
  |          <a4j:status><f:facet name="start"><h:graphicImage value="/img/dinkus/spinner.gif"/></f:facet></a4j:status>    
  |     </h1>
  |     <p/>
  |     <div>
  |         <h:messages id="globalMessages" globalOnly="true" layout="table" styleClass="message-error" rendered="#{!empty facesContext.maximumSeverity}"/>
  |     </div>
  |      
  |     <h:form id="organisationUserActivityLog" styleClass="edit">
  |     
  |         <div class="dialog">
  |             <h:panelGrid columns="2" rowClasses="prop" columnClasses="name,value">
  | 
  |               <h:outputLabel for="organisationUserId">Oranisation user</h:outputLabel>            
  |               <h:selectOneMenu value="#{organisationUserActivityLogList.selectedOrgUserId}" id="organisationUserId">
  |                   <f:selectItem itemLabel="All users" itemValue=""/>
  |                   <f:selectItems value="#{organisationUserListAll}"/>
  |               </h:selectOneMenu>
  |             
  |                 <h:outputLabel for="action">Activity</h:outputLabel>
  |                 <h:inputText id="action" value="#{organisationUserActivityLogList.organisationUserActivityLog.action}">
  |                     <a4j:support event="onkeyup" requestDelay="1000" reRender="organisationUserActivityLogSearchResults"/>           
  |                 </h:inputText>
  | 
  |                 <h:outputLabel for="description">Description</h:outputLabel>
  |                 <h:inputText id="description" value="#{organisationUserActivityLogList.organisationUserActivityLog.description}">
  |                     <a4j:support  event="onkeyup" requestDelay="1000" reRender="organisationUserActivityLogSearchResults"/>          
  |                 </h:inputText>
  | 
  |                 <h:outputLabel for="ipaddress">IP Address</h:outputLabel>
  |                 <h:inputText id="ipaddress" value="#{organisationUserActivityLogList.organisationUserActivityLog.ipaddress}">
  |                     <a4j:support event="onkeyup" requestDelay="1000" reRender="organisationUserActivityLogSearchResults"/>          
  |                 </h:inputText>
  |                 <h:outputLabel for="selectedInsertDateFrom">Log date from</h:outputLabel>
  |                 <h:panelGrid id="selectedInsertDateFromPanel" columns="2"  width="100%" rowClasses="calendar-row" columnClasses="ecol1, ecol2">
  |                   <a4j:outputPanel id="selectedInsertDateFrom" layout="block">
  |                     <rich:calendar value="#{organisationUserActivityLogList.selectedInsertDateFrom}"
  |                         popup="true" datePattern="dd/MM/yyyy" enableManualInput="false"/>
  |                   </a4j:outputPanel>
  |               </h:panelGrid>
  | 
  |                 <h:outputLabel for="selectedInsertDateTo">Log date to</h:outputLabel>
  |                 <h:panelGrid id="selectedInsertDateToPanel" columns="2"  width="100%" rowClasses="calendar-row" columnClasses="ecol1, ecol2">
  |                     <a4j:outputPanel id="selectedInsertDateTo" layout="block">
  |                       <rich:calendar value="#{organisationUserActivityLogList.selectedInsertDateTo}"
  |                           popup="true" datePattern="dd/MM/yyyy" enableManualInput="false"/>
  |                     </a4j:outputPanel>
  |                 </h:panelGrid>
  |             </h:panelGrid>
  |             
  |             <table>
  |                <tr class="prop"> 
  |                    <td class="name"> </td>
  |                    <td class="value">
  |                         <div class="actionButtons">
  |                             <h:commandButton id="search" value="Search" action="/organisation-user-activity-log-list.xhtml"/>
  |                             <h:commandButton value="Reset" onclick="resetForm(document.organisationUserActivityLog); return false;">
  |                                 <a4j:support event="onmouseup" requestDelay="1000" reRender="organisationUserActivityLogSearchResults"/>
  |                             </h:commandButton>                            
  |                             <s:button view="/organisation-user-activity-log-edit.xhtml" id="create" value="Create Organisation User Activity Log" rendered="#{empty from}">
  |                                 <f:param name="organisationUserActivityLogId"/>
  |                             </s:button>
  |                             <s:button id="cancel" value="Cancel" view="/#{from}.xhtml" rendered="#{!empty from}"/>                            
  |                         </div>  
  |                    </td>
  |                </tr>
  |             </table>            
  |         </div>
  |     </h:form>
  |     
  |     <a4j:outputPanel id="organisationUserActivityLogSearchResults">   
  |     <div class="results" id="organisationUserActivityLogList">
  |     <p/>
  |     <h1>Search Results</h1>
  |     <p/>
  |     <h:outputText value="No organisation user activity log exists." rendered="#{empty organisationUserActivityLogList.resultList}"/>
  |     <h:outputText value="Found #{organisationUserActivityLogList.resultCount} records." rendered="#{not empty organisationUserActivityLogList.resultList}"/>
  |         
  |     <h:dataTable id="organisationUserActivityLogList" var="organisationUserActivityLog" value="#{organisationUserActivityLogList.resultList}" 
  |            rendered="#{not empty organisationUserActivityLogList.resultList}" border="1">
  | 
  |         <h:column>
  |             <f:facet name="header">
  |                 <s:link styleClass="columnHeader"
  |                         value="Inserted #{organisationUserActivityLogList.order=='insertDate asc' ? messages.down : ( organisationUserActivityLogList.order=='insertDate desc' ? messages.up : '' )}">
  |                     <f:param name="order" value="#{organisationUserActivityLogList.order=='insertDate asc' ? 'insertDate desc' : 'insertDate asc'}"/>
  |                 </s:link>
  |             </f:facet>
  |             <h:outputText value="#{organisationUserActivityLog.insertDate}"><s:convertDateTime type="both" dateStyle="default"/></h:outputText>
  |         </h:column>
  |         <h:column>
  |             <f:facet name="header">
  |                 <s:link styleClass="columnHeader"
  |                         value="Activity #{organisationUserActivityLogList.order=='action asc' ? messages.down : ( organisationUserActivityLogList.order=='action desc' ? messages.up : '' )}">
  |                     <f:param name="order" value="#{organisationUserActivityLogList.order=='action asc' ? 'action desc' : 'action asc'}"/>
  |                 </s:link>
  |             </f:facet>
  |             #{organisationUserActivityLog.action}
  |         </h:column>
  |         <h:column>
  |             <f:facet name="header">
  |                 <s:link styleClass="columnHeader"
  |                         value="Organisation User #{organisationUserActivityLogList.order=='organisationUser.id asc' ? messages.down : ( organisationUserActivityLogList.order=='organisationUser.id desc' ? messages.up : '' )}">
  |                     <f:param name="order" value="#{organisationUserActivityLogList.order=='organisationUser.id asc' ? 'organisationUser.id desc' : 'organisationUser.id asc'}"/>
  |                 </s:link>
  |             </f:facet>
  |             #{organisationUserActivityLog.organisationUser.username}
  |         </h:column>
  |         <h:column>
  |             <f:facet name="header">
  |                 <s:link styleClass="columnHeader"
  |                         value="Description #{organisationUserActivityLogList.order=='description asc' ? messages.down : ( organisationUserActivityLogList.order=='description desc' ? messages.up : '' )}">
  |                     <f:param name="order" value="#{organisationUserActivityLogList.order=='description asc' ? 'description desc' : 'description asc'}"/>
  |                 </s:link>
  |             </f:facet>
  |             #{organisationUserActivityLog.description}
  |         </h:column>
  |         <h:column>
  |             <f:facet name="header">
  |                 <s:link styleClass="columnHeader"
  |                         value="IP Address #{organisationUserActivityLogList.order=='ipaddress asc' ? messages.down : ( organisationUserActivityLogList.order=='ipaddress desc' ? messages.up : '' )}">
  |                     <f:param name="order" value="#{organisationUserActivityLogList.order=='ipaddress asc' ? 'ipaddress desc' : 'ipaddress asc'}"/>
  |                 </s:link>
  |             </f:facet>
  |             #{organisationUserActivityLog.ipaddress}
  |         </h:column>        
  |         <h:column>
  |             <f:facet name="header">Action</f:facet>
  |             <s:link view="/organisation-user-activity-log.xhtml" value="View" id="organisationUserActivityLog">
  |                 <f:param name="organisationUserActivityLogId" value="#{organisationUserActivityLog.id}"/>
  |             </s:link>
  |         </h:column>
  |     </h:dataTable>
  | 
  |     </div>
  | 
  |     <div class="tableControl">
  |       
  |         <s:link view="/organisation-user-activity-log-list.xhtml" rendered="#{organisationUserActivityLogList.previousExists}" 
  |                 value="#{messages.left}#{messages.left} First Page" id="firstPage">
  |           <f:param name="firstResult" value="0"/>
  |         </s:link>
  |         
  |         <s:link view="/organisation-user-activity-log-list.xhtml" rendered="#{organisationUserActivityLogList.previousExists}" 
  |                 value="#{messages.left} Previous Page" id="previousPage">
  |             <f:param name="firstResult" value="#{organisationUserActivityLogList.previousFirstResult}"/>
  |         </s:link>
  |         
  |         <s:link view="/organisation-user-activity-log-list.xhtml" rendered="#{organisationUserActivityLogList.nextExists}" 
  |                 value="Next Page #{messages.right}" id="nextPage">
  |             <f:param name="firstResult" value="#{organisationUserActivityLogList.nextFirstResult}"/>
  |         </s:link>
  |         
  |         <s:link view="/organisation-user-activity-log-list.xhtml" rendered="#{organisationUserActivityLogList.nextExists}" 
  |                 value="Last Page #{messages.right}#{messages.right}" id="lastPage">
  |             <f:param name="firstResult"  value="#{organisationUserActivityLogList.lastFirstResult}"/>
  |         </s:link>
  |         
  |     </div>
  |     </a4j:outputPanel>
  |     <p/>
  | </div>
  | 
  |     <SCRIPT LANGUAGE="JavaScript">
  |     
  |         function resetForm(form) { 
  |             setValue(form.elements('organisationUserActivityLog:organisationUserId'), '');
  |             setValue(form.elements('organisationUserActivityLog:action'), '');
  |             setValue(form.elements('organisationUserActivityLog:description'), '');
  |             setValue(form.elements('organisationUserActivityLog:ipaddress'), '');
  |             return false;
  |         }
  |     </SCRIPT>  
  | </ui:define>
  | </ui:composition>
  | 


View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4099607#4099607

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4099607




More information about the jboss-user mailing list