Important Notice - Forums is archived
To simplify things and help our users to be more productive, we have archived the current forum and focus our efforts on helping developers on Stack Overflow. You can post new questions on Stack Overflow or join our Discord channel.

Vaadin lets you build secure, UX-first PWAs entirely in Java.
Free ebook & tutorial.
Null Pointer exception in removeUnregisteredConnectors(ConnectorTracker.jav
This code works in tomcat perfectly.
But when it is deployed in GAE/Jetty, it does not work.
I get the following error, This is in the vaadin library.
I do not see my code on the stack.
Any help is appreciated.
I was using vaadin 7.6.16, there it had a different symptom.
Now it crashes this way.
Using the most recent Vaadin 7.6.3
Although in the debug view it shows it is using the old theme.
Not sure how to change that. The vaadin-themes-7.6.3.jar is present in the web-inf/lib directory.
Debug view window content:
---------------------------------
Client engine version7.6.3
Server engine version7.6.3
Theme version7.1.6
Widget setcom.vaadin.DefaultWidgetSet
Themeatcaaui
Communication methodClient to server: XHR, server to client: - (poll interval 3000ms)
Heartbeat300s
[java] Add Row [0] Acid=image1-1456969686453, Savings=0.00, Route=dfw..sfo ItemId=1
[java] Playing Caching sound from file...
[java] Table size:1
[java] Before msg poller is starting...
[java] Mar 03, 2016 4:51:42 PM gov.nasa.arc.af.ctas.dwr.vaadin.atc.SimpleLoginView buttonClick
[java] INFO: Success: log in, displaying main view.
[java] Mar 03, 2016 4:51:42 PM com.vaadin.server.DefaultErrorHandler doDefault
[java] SEVERE:
[java] java.lang.NullPointerException
[java] at com.vaadin.ui.ConnectorTracker.removeUnregisteredConnectors(ConnectorTracker.java:433)
[java] at com.vaadin.ui.ConnectorTracker.cleanConnectorMap(ConnectorTracker.java:289)
[java] at com.vaadin.server.communication.UidlWriter.write(UidlWriter.java:335)
[java] at com.vaadin.server.communication.UidlRequestHandler.writeUidl(UidlRequestHandler.java:113)
[java] at com.vaadin.server.communication.UidlRequestHandler.synchronizedHandleRequest(UidlRequestHandler.java:81)
[java] at com.vaadin.server.SynchronizedRequestHandler.handleRequest(SynchronizedRequestHandler.java:41)
[java] at com.vaadin.server.VaadinService.handleRequest(VaadinService.java:1409)
[java] at com.vaadin.server.VaadinServlet.service(VaadinServlet.java:364)
[java] at com.vaadin.server.GAEVaadinServlet.service(GAEVaadinServlet.java:254)
[java] at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
[java] at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
[java] at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1166)
[java] at com.google.appengine.api.socket.dev.DevSocketFilter.doFilter(DevSocketFilter.java:74)
[java] at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
[java] at com.google.appengine.tools.development.ResponseRewriterFilter.doFilter(ResponseRewriterFilter.java:128)
[java] at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
[java] at com.google.appengine.tools.development.HeaderVerificationFilter.doFilter(HeaderVerificationFilter.java:34)
[java] at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
[java] at com.google.appengine.api.blobstore.dev.ServeBlobFilter.doFilter(ServeBlobFilter.java:63)
[java] at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
[java] at com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:43)
[java] at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
[java] at com.google.appengine.tools.development.StaticFileFilter.doFilter(StaticFileFilter.java:125)
[java] at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
[java] at com.google.appengine.tools.development.DevAppServerModulesFilter.doDirectRequest(DevAppServerModulesFilter.java:366)
[java] at com.google.appengine.tools.development.DevAppServerModulesFilter.doDirectModuleRequest(DevAppServerModulesFilter.java:349)
[java] at com.google.appengine.tools.development.DevAppServerModulesFilter.doFilter(DevAppServerModulesFilter.java:116)
[java] at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
[java] at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388)
[java] at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
[java] at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
[java] at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
[java] at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418)
[java] at com.google.appengine.tools.development.DevAppEngineWebAppContext.handle(DevAppEngineWebAppContext.java:98)
[java] at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
[java] at com.google.appengine.tools.development.JettyContainerService$ApiProxyHandler.handle(JettyContainerService.java:512)
[java] at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
[java] at org.mortbay.jetty.Server.handle(Server.java:326)
[java] at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
[java] at org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:938)
[java] at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:755)
[java] at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:218)
[java] at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
[java] at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409)
[java] at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)
[java]
[java] Msg poller has started.
[java] AtcAaWebappUI:beforeViewChange:
This looks like related to the a closed bug 14773
https://dev.vaadin.com/ticket/14773
YOU NEED BETTER DEBUGGING SUPPORT for Vaadin framework.
Vaadin code crashes in vaadin module, and does not even tell the user how the user code is making it crash.
Now you figure out if it is the bug in user code or a vaadin bug.
Well it works on tomcat server, fine, so it could be a configuration problem.
The code is here from the current vaadin repo.
https://github.com/vaadin/vaadin/blob/master/server/src/com/vaadin/ui/ConnectorTracker.java
<code>
private void removeUnregisteredConnectors()
{
GlobalResourceHandler globalResourceHandler = uI.getSession() .getGlobalResourceHandler(false);
for (ClientConnector connector : unregisteredConnectors) {
ClientConnector removedConnector = connectorIdToConnector .remove(connector.getConnectorId());
assert removedConnector == connector;
if (globalResourceHandler != null)
{
globalResourceHandler.unregisterConnector(connector);
}
uninitializedConnectors.remove(connector);
diffStates.remove(connector);
}
unregisteredConnectors.clear();
}
</code>