I’ve got a troubles with new functionality. So I have this annotaion in my app class, but if I’ll refresh application using F5 I’ll get an NPE in PushHandler and I can’t start application after that.
SEVERE:
java.lang.NullPointerException
at com.vaadin.server.communication.PushHandler$3.run(PushHandler.java:161)
at com.vaadin.server.communication.PushHandler.callWithUi(PushHandler.java:282)
at com.vaadin.server.communication.PushHandler.access$200(PushHandler.java:55)
at com.vaadin.server.communication.PushHandler$1.onRequest(PushHandler.java:75)
at org.atmosphere.cpr.AsynchronousProcessor.action(AsynchronousProcessor.java:174)
at org.atmosphere.cpr.AsynchronousProcessor.suspended(AsynchronousProcessor.java:95)
at org.atmosphere.container.Servlet30CometSupport.service(Servlet30CometSupport.java:66)
at org.atmosphere.container.JettyServlet30AsyncSupportWithWebSocket.service(JettyServlet30AsyncSupportWithWebSocket.java:53)
If I’ll remove this annotation - Application will ran normally, but I will still have an exception in console:
Apr 28, 2014 5:07:10 PM com.vaadin.server.DefaultErrorHandler doDefault
SEVERE:
java.lang.NullPointerException
at com.vaadin.ui.UI.push(UI.java:1479)
at com.vaadin.server.VaadinSession.unlock(VaadinSession.java:1019)
at com.vaadin.server.SynchronizedRequestHandler.handleRequest(SynchronizedRequestHandler.java:43)
at com.vaadin.server.VaadinService.handleRequest(VaadinService.java:1402)
at com.vaadin.server.VaadinServlet.service(VaadinServlet.java:237)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)
at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:598)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1367)
This bug you can reproduce in sample app that you can create using Vaadin Plug-in. The problem that after refresh UI losing it Push connection and don’t reconnect.
Transport: LONG_POLLING MushMode: Automatically