A couple of basic techniques for debugging speed:
1- Servoy developer profiler tab. Turn it on and then run your method. It will show the whole the whole thread of methods that were called, how many times and how long they took. Great way to find that one calculation that gets called a bazillion times.
profiler.png
2- Load your web page with Network tab open in Chrome developer tools. More requests means slower.
network monitor.png
A Servoy web client issue: Servoy generates a lot of markup for objects. A simple text area field for example is created with multiple nested div's, some inline styling, and lot's javascript event code. Some Servoy objects generate even more nested markup including table markup. There are two issues with Servoy's approach to producing markup with an outdated version of the Wicket engine:
1- Sheer amount of data that has to go across the wire.
2- Time it takes for the browser to render so many nested divs.
See this post:
viewtopic.php?f=13&t=18772#p103603With all that said, a major issue you have (from what I can see of your solution model code): you're individually styling, positioning and sizing all of your objects. Instead, assign classes and use one style sheet to define all your styles. With 2000+ objects, the sheer amount of markup you are pushing out must be crazy. And I suspect (which you will see with the Network tab) you have css spread across a bunch of style sheet resources instead of just using one style sheet.
Another trick we would probably employ is "hiding" all but the first section then showing each successive section in intervals with web client utils plugin and some client-side code. This way the browser doesn't compute the whole layout at once before showing.
So I think there are ways to make your layout a lot faster. But to be fair, complex layouts such as what you're going for can be problematic speed-wise with any web client technology and can take a lot of expertise to optimise no matter how you approach it. You're pretty much doing it the slowest way possible right now.
You do not have the required permissions to view the files attached to this post.