The ICEPush add-on has won the add-on competition for October leaving HbnContainer and CustomField to the second and third places. Here's what the add-on author, Artur Signell, has to say about his successful add-on.
So what's all this about server push? Really simple Vaadin applications does have any need for server push as it follows a event-request-update-response cycle. All changes are initiated by the user e.g. by clicking a button, which causes the browser to send an event to the server. The server performs updates to the application and sends a response to the browser, which accordingly updates the browser with whatever changes the server did. The need for push comes in when you want to break this cycle and initiate updates to the application without an event from the browser.
On the server side the implementation supports thread blocking for older servlet containers and asynchronous request processing for servlet containers supporting the Servlet 3.0 specification. More information about the underlying technology can be found at www.icepush.org and the icefaces wiki.
Using ICEPush is very easy - all you need to take care of is that the component is inside a layout in your application and that you call the push() method whenever you want changes to be sent to the client. As always with Vaadin applications you should synchronize on the application instance when doing changes to it to avoid problems with simultaneous updates."
Congratulations to Artur! We still have two months left, so there are still two chances for you to win an iPad! See the add-on compo page for more details and a real-time top 20 scoreboard.