Vaadin push and JVx callback
We fully support Vaadin' push support with current JVx *nightly* builds (see JVx with vaadin UI and server-side push). We had some problems with manual push mode because of some strange implementations of atmosphere in vaadin. We found a better solution to be independent of vaadin changes (should work with 7.1.8 and later).
No we automatically push if you use standard threads or threads, created via VaadinFactory. It's also possible to use JVx' callback mechanism for push operations. If you won't use threads in your client application, simply make an async server call. The server implementation automatically starts a new thread and executes the task. The server will notify the client after the task is finished. This is a little bit strange because client and server run on the application server, if you use our vaadin UI. If your JVx client retrieves the result of an async call, it will automatically push the results to the vaadin client. This makes the whole application very smart and live.
It's very easy to work with async calls in JVx. Simply use a callback listener:
{
@Override
public void callBack(CallBackEvent pEvent)
{
butCallBack.setImage(IMAGE_YESNO);
}
},
"asyncServerAction");
The server method in Session LCO:
{
Thread.sleep(5000);
return ++count;
}
We didn't change JVx' APIs to support vaadin push. It works behind the scenes and we simply love it.
Use our nightly builds to see how it works.