Vaadin Add-on Compo August Update - LazyQueryContainer

Sami Ekblad
On Sep 3, 2010 7:09:00 AM

Tommi LaukkanenA pleasant guest stopped at Vaadin office yesterday as Tommi Laukkanen - the author of LazyQueryContainer visited us. He took the trip here just to see what is it like in our offices - and maybe also to pick up the iPad he won in Vaadin Add-on Compo in August. Congratulations!

The LazyQueryContainer add-on solves the one of a most prominent problem with large datasets: Lazily loading data from database (or a web service) as user browses it, keeping applications fast and smooth while limiting the memory consumption. It relies on Vaadin data-aware components (like Table) with the ability to show only the data needed and introduces a simple API to implement logic for virtually any datasource very easily.

"Vaadin is my favorite web framework and very happy to contribute like this.", told Mr. Laukkanen giving us a a quick tour on the add-on features. "Also, I want to thank Volker Krebs for helping me with the buffered writes. The LazyQueryContainer now supports also buffered in-place editing. In the same sprint I implemented a few built-in QueryFactories for JPA and Java Beans, also building the optimal feature set to make it reach more users."

LazyQueryContainer debug dataAs said the API is very easy and you can easily add new datasources too. Just implement two things: QueryFactory and Query. The first one is used to create a new Query object whenever a data needs to be re-read. For example sorting items is made in the data source. There are also nice built-in debug features showing query meta information. These help you to optimize the data retrieval logic.

Really, that was an earned victory. The add-on itself, source code, supporting wiki tutorial and demo are all there. Check it out!



Sami Ekblad
Sami Ekblad is one of the original members of the Vaadin team. He is now working as a framework advocate, and you can find many add-ons and code samples to help you get started with Vaadin. Follow at – @samiekblad
Other posts by Sami Ekblad