The main page of our webapp consists of the tree on one side and a
scorecard type table on the other.  The tree represents a hierarchical
display of the departments within the firm.  The user navigates through the
tree to get to the department they are interested in, then clicks on the
department name to display the report for that department.

We had originally planned to load the entire tree at the time that the page
is loaded, but the sheer scope of the data involved makes this impractical.
Instead, we load only the top-level departments and use AJAX to add on
nodes as they are needed.

We are currently running into two problems with flowscript:

1) The user is unable to navigate through the tree until the current report
has finished loading.  Depending on the department the report is being
generated for, this can be quite time consuming
2) When adding nodes to the tree, the nodes are added synchronously,
increasing the perceived time required to add all of the nodes, thereby
defeating the Asynchronous nature of AJAX.

At this stage we are using flowscript to access the domain objects used by
the web app (both by the tree and by the report), and this seems to be the
main bottleneck.

I take it that JavaFlow operates under the same synchronization scheme as
flowscript?  If so, then I'm thinking the best approach would be to
re-implement the webapp so that it avoids the use of flowscript/JavaFlow.


Thanks,
Ian

It's better to be hated for who you are
than loved for who you are not

Ian D. Stewart
Appl Dev Analyst-Advisory, DCS Automation
JPMorganChase Global Technology Infrastructure
Phone: (614) 244-2564
Pager: (888) 260-0078


                                                                                
                                                       
                      Sylvain Wallez                                            
                                                       
                      <[EMAIL PROTECTED]        To:       
[email protected]                                                       
                      rg>                      cc:                              
                                                       
                                               Subject:  Re: CForms + 
Flowscript + AJAX                                                
                      01/11/2006 11:26                                          
                                                       
                      AM                                                        
                                                       
                      Please respond to                                         
                                                       
                      users                                                     
                                                       
                                                                                
                                                       




[EMAIL PROTECTED] wrote:
> Dear List,
>
> We have a CHS (Cocoon-Hibernate-Spring) application that uses a binary
tree
> implemented as an AJAX component.  Since porting this app to Cocoon (it
was
> previously implemented using Spring MVC), we have been experiencing
> difficulties with the tree.  Specifically, the app doesn't respond to
user
> interaction with the tree until Cocoon has completed processing the
current
> request.
>

What do you mean by "current request"? Do you mean the user clicks on
the tree before the current page is fully loaded?
> In researching this issue, I ran across the following from Sylvain Wallez
> in the Cocoon-Users archive:
>
>    Execution of a flowscript is synchronized on the global variable
scope,
>    which is bound to the session. Although this shouldn't be a problem in
>    real world as a single user is not very likely to send parallel
>    requests, you should verify that your load testing engine uses
different
>
>    sessions (or no session at all) for the simulated concurrent users.
That
>
>    may explain these numbers.
>
> At this point, I'm trying to evaluate my options, which as I see it are:
>
> 1) Refactor flow control to use JavaFlow instead of flowscript (this is
> assuming that JavaFlow isn't subject to the same synchronization as
> flowscript)
> 2) Refactor the app to minimize the use of flow control
> 3) Host the AJAX component under a seperate servlet
>
> Can someone tell me if JavaFlow suffers from the same synchronization
> issues as flowscript?  Also any recommendations for alternate approaches
> would be welcome.
>

Would it be possible to have the tree data be stored in a session
attribute so that accessing it doesn't go through synchronization?

Sylvain

--
Sylvain Wallez                        Anyware Technologies
http://bluxte.net                     http://www.anyware-tech.com
Apache Software Foundation Member     Research & Technology Director


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]