Vaadin 8, Spring-vaadin 2.0.0 navigation

When going from one page, to another via Navigator, using SpringViewProvider, i`m getting following error in javascript:

08:53:21.599 Thu Mar 02 08:53:21 GMT+100 2017 com.vaadin.client.ApplicationConfiguration
SEVERE: The given column range (-1…0) was outside of the current number of columns (2)
java.lang.IndexOutOfBoundsException: The given column range (-1…0) was outside of the current number of columns (2)
at Unknown.Dg(http://localhost:8082/over-urad/app#!OverenieView)
at Unknown.Fg(http://localhost:8082/over-urad/app#!OverenieView)
at Unknown.rpd(http://localhost:8082/over-urad/app#!OverenieView)
at Unknown.h8c(http://localhost:8082/over-urad/app#!OverenieView)
at Unknown.s8c(http://localhost:8082/over-urad/app#!OverenieView)
at Unknown._ad(http://localhost:8082/over-urad/app#!OverenieView)
at Unknown.$ad(http://localhost:8082/over-urad/app#!OverenieView)
at Unknown.EMb(http://localhost:8082/over-urad/app#!OverenieView)
at Unknown.PKb(http://localhost:8082/over-urad/app#!OverenieView)
at Unknown.ksb(http://localhost:8082/over-urad/app#!OverenieView)
at Unknown.LEb(http://localhost:8082/over-urad/app#!OverenieView)
at Unknown.EEb(http://localhost:8082/over-urad/app#!OverenieView)
at Unknown.jEb(http://localhost:8082/over-urad/app#!OverenieView)
at Unknown.kEb(http://localhost:8082/over-urad/app#!OverenieView)
at Unknown.hGb(http://localhost:8082/over-urad/app#!OverenieView)
at Unknown.Ks(http://localhost:8082/over-urad/app#!OverenieView)
at Unknown.Xs(http://localhost:8082/over-urad/app#!OverenieView)
at Unknown.onreadystatechange<(http://localhost:8082/over-urad/app#!OverenieView)
at Unknown.Rh(http://localhost:8082/over-urad/app#!OverenieView)
at Unknown.Uh(http://localhost:8082/over-urad/app#!OverenieView)
at Unknown.Th/<(http://localhost:8082/over-urad/app#!OverenieView)
at Unknown.anonymous(Unknown)
1 app:1:24789
cab http://localhost:8082/over-urad/app:1:24789
ZEd http://localhost:8082/over-urad/app:1:243
YEd http://localhost:8082/over-urad/app:135:61
dFd http://localhost:8082/over-urad/app:182:44
Ypb http://localhost:8082/over-urad/app:1:13335
Xh http://localhost:8082/over-urad/app:82:55
Uh http://localhost:8082/over-urad/app:34:101
Th/< http://localhost:8082/over-urad/app:223:46

08:53:21.746 Thu Mar 02 08:53:21 GMT+100 2017 com.vaadin.client.LayoutManager
WARNING: Cannot run layout while processing state change from the server. 1 app:1:24832

Is on the view that you are leaving a hidden column? It sounds like this issue:

https://github.com/vaadin/framework/issues/8714

But to make sure you would have to recompile your Widgetset without obfuscation.

Hello Sebastian,

yes, this is the issue.
Is there a workaround ?

I stopped my migration there and didn’t try to find a workaround.

Adding a detachlistener to the grid and calling setHidden(false) on all columns and setFrozenColumnCount(0) (similar bug when detaching a grid) could do the trick.

Vaadin 8.0.2, no spring, multiple Grids under tabs in a tabsheet. Everything works properly until this line of code is added to the offending Vaadin 8 Grid:

setFrozenColumnCount(5);

The frozen column feature works, but navigating away from the offending Grid by pushing another tab button results in a browser hang and a client side error captured here using debug:

20790ms    Widget is still attached to the DOM after the connector (AbsoluteLayoutConnector (3365)) has been unregistered. Widget was removed.
20790ms    Widget is still attached to the DOM after the connector (AbsoluteLayoutConnector (3367)) has been unregistered. Widget was removed.
20790ms    Widget is still attached to the DOM after the connector (AbsoluteLayoutConnector (3371)) has been unregistered. Widget was removed.
20790ms    Widget is still attached to the DOM after the connector (AbsoluteLayoutConnector (3373)) has been unregistered. Widget was removed.
20791ms    Widget is still attached to the DOM after the connector (AbsoluteLayoutConnector (3375)) has been unregistered. Widget was removed.
20791ms    Widget is still attached to the DOM after the connector (AbsoluteLayoutConnector (3377)) has been unregistered. Widget was removed.
20791ms    Widget is still attached to the DOM after the connector (AbsoluteLayoutConnector (3379)) has been unregistered. Widget was removed.
20802ms    count must be between 0 and the current number of columns (4)
java.lang.IllegalArgumentException: count must be between 0 and the current number of columns (4)
   at Unknown.Yg(ca.demy.widgetset.FossWidgetset-0.js)
   at Unknown.$g(ca.demy.widgetset.FossWidgetset-0.js)
   at Unknown.LUe(ca.demy.widgetset.FossWidgetset-0.js)
   at Unknown.PGd(ca.demy.widgetset.FossWidgetset-0.js)
   at Unknown.sJd(ca.demy.widgetset.FossWidgetset-0.js)
   at Unknown.rJd(ca.demy.widgetset.FossWidgetset-0.js)
   at Unknown.f9b(ca.demy.widgetset.FossWidgetset-0.js)
   at Unknown.o7b(ca.demy.widgetset.FossWidgetset-0.js)
   at Unknown.oRb(ca.demy.widgetset.FossWidgetset-0.js)
   at Unknown.K1b(ca.demy.widgetset.FossWidgetset-0.js)
   at Unknown.D1b(ca.demy.widgetset.FossWidgetset-0.js)
   at Unknown.i1b(ca.demy.widgetset.FossWidgetset-0.js)
   at Unknown.j1b(ca.demy.widgetset.FossWidgetset-0.js)
   at Unknown.Q$b(ca.demy.widgetset.FossWidgetset-0.js)
   at Unknown.eval(ca.demy.widgetset.FossWidgetset-0.js)
   at Unknown.ri(ca.demy.widgetset.FossWidgetset-0.js)
   at Unknown.ui(ca.demy.widgetset.FossWidgetset-0.js)
   at Unknown.eval(ca.demy.widgetset.FossWidgetset-0.js)
   at Unknown._f(http://localhost:8080/fleetcaptain/VAADIN/vaadinPush.debug.js?v=8.0.2)
   at Unknown._invokeFunction(http://localhost:8080/fleetcaptain/VAADIN/vaadinPush.debug.js?v=8.0.2)
   at Unknown._invokeCallback(http://localhost:8080/fleetcaptain/VAADIN/vaadinPush.debug.js?v=8.0.2)
   at Unknown._websocket.onmessage(http://localhost:8080/fleetcaptain/VAADIN/vaadinPush.debug.js?v=8.0.2)
20882ms    Cannot run layout while processing state change from the server.
21075ms    Cannot run layout while processing state change from the server.
24530ms    JSON parsing took 0.075ms
24530ms    Received push (websocket) message: for(;;);[{"syncId": 10, "clientId": 6, "changes" : []
, "state":{"3215":{"text":"17:19"},"3218":{"text":"00:19"}}, "types":{"3214":"3","3215":"5","3217":"3","3218":"5"}, "hierarchy":{"3214":,"3217":}, "rpc" : [["3214","com.vaadin.addon.charts.shared.ChartClientRpc","updatePoint",[0,0,"{\"y\":17.316666666666666,\"id\":\"hour\",\"dial\":{\"backgroundColor\":\"#006CD9\",\"baseLength\":\"95%\",\"baseWidth\":4,\"radius\":\"55%\",\"rearLength\":\"0%\"}}"]
],["3214","com.vaadin.addon.charts.shared.ChartClientRpc","updatePoint",[0,1,"{\"y\":3.8133333333333335,\"id\":\"minute\",\"dial\":{\"backgroundColor\":\"#006CD9\",\"baseLength\":\"95%\",\"rearLength\":\"0%\"}}"]
],["3217","com.vaadin.addon.charts.shared.ChartClientRpc","updatePoint",[0,0,"{\"y\":0.31666666666666665,\"id\":\"hour\",\"dial\":{\"backgroundColor\":\"#006CD9\",\"baseLength\":\"95%\",\"baseWidth\":4,\"radius\":\"55%\",\"rearLength\":\"0%\"}}"]
],["3217","com.vaadin.addon.charts.shared.ChartClientRpc","updatePoint",[0,1,"{\"y\":3.8133333333333335,\"id\":\"minute\",\"dial\":{\"backgroundColor\":\"#006CD9\",\"baseLength\":\"95%\",\"rearLength\":\"0%\"}}"]
]], "meta" : {"async":true}, "resources" : {}, "timings":[9962, 84]
}]
24530ms    Postponing UIDL handling due to lock...
29532ms    WARNING: reponse handling was never resumed, forcibly removing locks...

Removing the frozen column statement restores normal operation. There is no correlation to either hiding or removing columns. Frozen columns ==> error, no frozen columns, no error.

Must be a bug.

Been wondering, why Vaadin support team isn`t reacting on a such critical bug. Was reported here by Sebastian:
https://github.com/vaadin/framework/issues/8712

This has been fixed in 8.0.3.

Can someone confirm that it is solved? I still get this error when a column is hidden (version 8.0.6).

Hi,

Can you please recompile your widgetset with style PRETTY or DETAILED, since the obfuscated version of the stack trace doesn’t really help in debugging. Also if you can post a minimal code example where you get the exception, I can help to debug and fix any issues with this.

//Teemu