Hello. 
Well after 2 months of using the first app I deployed and its being used,  some 
times I realize that app slow down considerably when working with more than 
1000 EO inserted into a NSMutableArray to be displayed in a AjaxSelectionList.

So what Im doing is:.. Fetching the EO's from a selected project, this are 
assigned to a NSMutableArray<TranslationSets>, then the list bidning of the 
AjasSelectionList its bound to that array, but this AjaxSelectionList its 
wraped inside an AjaxUpdateContainer.  So when I select an item in the list I 
update another container in the bottom, so I can edit/modify the slovak 
translation of the selected TranslationSet. Then when I click update  
AjaxSubmit, I send the new value of the sk translation and make the 
relationship with the selection of the AjaxSelectionList (above mentioned),  
then I update the whole ajaxUpdateContainer which wraps the AjaxSelectionList. 

Ok here I see a fail, is that Im updating the whole list again ,( even it will 
not re fetch because the EO are already in the EC), but it will send again the 
data back and forth client to server, and this is where its taking longer.

I would only Update the Selected Item int he AjaxselectionList.

so this roughly what I have i the html in  the uuper part whcih contains the 
AjaxSelectionList,

<wo:AjaxUpdateContainer id="WGInfomation" 
onRefreshComplete="colorList('contentsSelectionList','li')">
       <wo:form  multipleSubmit = "$true" id="formAdmin">       
         <div id ="WGContents">
        
         <webobject name = "ContentsRepetition">                                
                
           <li>
             <div class="fDivC"><div class = "plabel">
               <webobject name = "ProjectName">
                <wo:WOString value = "$projectNames.projectName"/>
               </webobject>
             </div>                                               
             </div>                                             
             <div class = "sDivC">                                              
                                
                <div class="sLabel">
                  <span class="baseL"><webobject name = "pName" /></span><br />
                  <wo:AjaxUpdateContainer id = "innerContainerList">
                      <webobject name = "trans"><div class="transL" id = 
"topList"><wo:string value = "$trasnFromBaseItem.tran"/></div></webobject>
                  </wo:AjaxUpdateContainer>  
                </div>                                                  
             </div>                                             
             <wo:AjaxSubmitButton functionName="ajax2SubmitAndUpdate" 
updateContainerID="PhraseDetails" action = "$performPhraseSearch"/>
           </li>                                        
        </webobject>

</wo:AjaxUpdateContainer>

so as you can see, inside the big AjaxUpdateContianer I have another one, which 
in fact that inner one is the one Im interested in refreshing, but If I put to 
refresh that one instead, then it will not update due that the external 
AjaxSelectionlist item binding still holds the old value.. thats why Im 
refreshing the whole AjaxSelectionList... 

What a mess I have..


 here aree the WOD:\
ContentsRepetition:AjaxSelectionList{
        focus = true;
        elementName = "ul";
        containerElementName="div";     
        list = contentsList;
        item = contentsItem;
        id="contentsSelectionList";
        selection = contentsSelection;
        class = "plist2";
        onchange = "ajax2SubmitAndUpdate()";
        onselect ="compareStrings();";
}

trans :WORepetition{

        list =  contentsItem.toTransFromBases;
        item = trasnFromBaseItem;
        
}

Any ideas.. ?
 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      ([email protected])
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to [email protected]

Reply via email to