Out of Sync error message


I have been encountering Out of Sync messages in my application that is built on Vaadin 6.6.6 (GWT version 2.3). I have read several threads on this Out of Sync issue but I do not have multiple windows (browser tabs) in my application, nor am I using static variables which are two main reasons cited to be behind the Out of Sync problem.

I have actually made the Out of Sync message go away by bringing up the debug console and checking the “Auto Scroll” checkbox. Once “AutoScroll” checbox is clicked, I do not encounter any out of sync errors, if debug window is open and “AutoScroll” isn’t checked then I keep on getting the Out of Sync message just like the normal (non debug) application usage.

Here is what is happening in my application:

  • I have a panel with two Selects (dropdown lists) and a table
  • Initially there is only one select box displayed in the table, when the user selects a value from the select box, table is made visible in the panel. Table contains data retrieved from the database. The second Select box is also displayed at this time and the values in the second Select box act as a filter on the table data. The values in the second Select are not retrieved from the database but I only display the filter items that are relevant to the data in the table.
  • Everything goes well until here but when I change the value in the first Select box, it triggers a database operation and loads new data in the table and everything is fine until I click on the second Select box (contains filter words). The moment I click on the second Select box, I get Out-of-Sync message and it happens consistently.

I was thinking that there is something wrong with the way I have coded the application but turning-on “AutoScrolling” in the debug fixes the problem and that makes me wonder if Out-of-Sync is the being caused because things are happening way to quick in the application? Since auto scrolling of the debug windows does slow down the application.

Any help would be appreciated.

Thank you.