Frequently Updating Table is 'jumpy'

I have a Table where I update the rows a few times a second. I first load the table with the given # of rows, and then after it’s loaded, I merely iterate over the Table’s items and update the properties, which causes a table redisplay.

[font=Courier New]

                    // for-loop over # items in the table, then update like this....
                    Item item =_table.getItem(Integer.valueOf(itemID));
                    Property property = item.getItemProperty(FIRST_COL);
                    property.setValue(newValue);

                    Item item =_table.getItem(Integer.valueOf(itemID));
                    Property property = item.getItemProperty(FIRST_COL);
                    property.setValue(newValue);
                    // and so on.....

[/font]

However, when I do this, the table gets very ‘jumpy’. The scroll bar jumps around, the table flickers, and if I try to scroll down it works, but the scroll bar and table get even ‘jumpier’. I would just like the table to update cleanly without it jumping around. I have set

[font=Courier New]

    _table.setSelectable(false);
    _table.setImmediate(false);
    _table.setEditable(false);

[/font]

But those don’t help.

Has anyone else experienced this, and is there a workaround? Do I need to display frequently updating data in some other widget (other than Table) to avoid the jumpiness?

Anyone? Anyone else experience ‘jumpy’ table display when the data is updating frequently? I really hope there’s a fix, because this table is unusable the way it’s currently jumping around, and the scroll bar is moving up/down a tiny bit every update.

Updating the table several times per second is very fast for an application running in a browser over a network, especially if you have some latency between the server and the client.

Here, maybe some lazy update request from the browser is still waiting for reply when another one is sent, and some internal state gets updated incorrectly. If you can create a small test application that reproduces the problem, please
create a bug report
including that application.

However, if you really need update speeds that fast, I would consider not using e.g. Refresher but a special custom component (client side widget) for the data that needs fast updates, and sending the refresh requests from that component (even though other data may “piggy-back” from the server to the client on the refreshes). That way, it could make sure there are no overlapping update requests for it and also probably handle the data content more efficiently if it can be optimized for your application. If the data itself is not updated that often but you want to see the updates immediately, some push solution might be more appropriate.

Alternative approaches could also include constructing an HTML table out of the data with e.g. a CustomLayout - or even a Label in XHTML mode.

Hi,
I’m facing the same problem with Vaadin 6.7.6. My table is being updated now on the server side 1 - 50 times per second. For the GUI update I use the Refresher with the update rate 1 x Sec. Earlier I used DontPush. I replaced DontPush with the Refresher hoping to get rid of this problem - this was in vain…
This happens also when I only change an Item property, I think it has nothing to do with adding or removing items. On the moment when the table is being refreshed the scrollbar is getting longer and then imediately shorter. So the table lines are always moving and most of the time I cannot select the items I want.
Is this bug reported? When it will be fixed? I need the fix soon…
Thank you,
Sabina