i have a question concerning the performance of the Ext Grid when loading big datasets from the GeoExt WMSCapabilitiesStore.

My application loads about 2500 layer records in an Ext Grid Panel. Once the records are loaded the application works very well, thanks to the Buffered Grid View plugin. But the problem is, that the initial load takes a very long time (about 10 seconds) which is not very responsive.

I understand that it takes quite a while to generate layer records from a XML file. But since it is not possible to receive WMS Capabilities as JSON (which is recommented for huge datasets in Ext), maybe there is an other way.
I assume that most of the time is used to provide an array from the XML request. It seems not very clever, that this process should be repeated every time someone opens the page, especially because the data is static.

Maybe there is some way to create an array with all the layer records once and load it into the grid, instead of transforming the data every time?

1 Answer
1

You might store your data in the LocalStorage. It allows you have the data stored in the browser. You'll need a data model which you fill with data from XML and store in the browser. The next time you just check if the data is stored and download it if not.

The Ext Grid will work with these data well.

Have you considered paging the data in grid (you probably don't display all the rows at once)?

Thanks for your response Peter, I forgot to mention that I have to use Ext 3.4 and GeoExt 1, because of other dependencies. As far as I know there is no LocalStorage option in Ext 3.4. Moreover paging seems not to work with GeoExt: geoext.org/pipermail/users/2010-November/001558.html Any other ideas maybe?
– edefritzJan 10 '14 at 11:30