[Seasar-user:21567] Re: 繰り返しと条件分岐について

2013年 2月 27日 (水) 12:46:14 JST

Mr. Kobayashi

Thanks for your reply.

I've tried this according to your advice. It reduces the time by half
during a round trip from the client to the server. Unfortunately the
performance is still not satisfactory. I guess the processing time of
the information stored in PageScope is also significant. Besides, I have
many such pages distributed in different packages and they would mess up
web.xml if I apply this to all of them.

Actually I've implemented a very simple and lightweight conditional
component which just control the display of its child components and no
more extra work. I replace te:condition with this component and a round
trip to the server can be done within 100ms, compared to 40s when using
te:condition, and about 20s when avoiding <input type="hidden"

I'm wondering if there are similar lightweight components provided by
Teeda, or I can customize te:condition to have it not do much extra work
resulting in performance penalty.


On 2013-02-27 2:59 AM, Koichi Kobayashi wrote:
> Hi Weiming,
> Can you try to add the following to your web.xml?
> This avoids <input type="hidden" name="te-conditions" />. 
> <context-param>
>   <param-name>teeda.JAVASCRIPT_NOT_PERMITTED_PATH</param-name>
>   <param-value>/path/to/yourBig.html</param-value>
> </context-param>
> http://teeda.seasar.org/ja/extension_customize.html#javascript
> On Tue, 26 Feb 2013 10:28:32 +0800, Weiming Zhou <zhou_w at worksap.co.jp> wrote:
>> Greetings,
>>    This is Weiming Zhou. I'd like to ask a few questions about loop and 
>> te:condition.
>>    I tried to display a list of items with ' <table><tbody 
>> id="xxxItems">... ', and I placed several te:condition within the table 
>> to control whether some of the columns are displayed or not, for 
>> instance, <te:condition rendered="#{xxxPage.showColumn1}" 
>> omittag="true">,etc. I find it extremely slow when it rediects to other 
>> pages from this page if there are up to several thousand items and I 
>> want to control the display of up to 20 columns.
>>    I read log and find something like 
>> PageScope={org.seasar.teeda.extension.Condition={Form:fakeItems:0:showColumn1=true,Form:fakeItems:1:showColumn1=true,...}
>>    Moreover, Teeda seems to encode the information for te:condition in 
>> the web page using a hidden input field named "te:condition", whose 
>> value is so long that it makes HTTP requests extremely large, which 
>> might be the reason of the pool performance my project suffers but I'm 
>> not sure. I guess the information stored in the server side and the 
>> client side might be redundant.
>>    Q1. Is there any way to make Teeda store all this information in 
>> server side in order not to make the HTTP requests so large?
>>    Q2. If I don't care about the value of Booleans like showColumn1 when 
>> posting back, is there any way to avoid the performance penalty for both 
>> the server side and client side? I mean I don't want Teeda to store 
>> these things in PageScope or a hidden field in the web page.
>> Thanks

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://ml.seasar.org/archives/seasar-user/attachments/20130227/7b367e0d/attachment.html>

Seasar-user メーリングリストの案内