I have created my own Table class (say MyDataTable), extending from the
com.vaadin.ui.Table .
In my default constructor, I have set
enableContentRefreshing(true);
Then later on I get some new data for the table & set them. After that I call
myTable.requestRepaint();
All communication between the server and browser goes like this: browser->server->browser. As all your changes are initialized from the server side, nothing gets pushed to the browser before the user clicks something that causes a server roundtrip. You need either the
Refresher component, that updates the view with a certain interval, or
ICEPush component, that will push changes to the browser when you ask it to.