vaadin / framework

Vaadin 6, 7, 8 is a Java framework for modern Java web applications.
http://vaadin.com/
Other
1.78k stars 729 forks source link

Grid client side exception when filtering in subwindow (IE10/IE11) #7883

Open vaadin-bot opened 8 years ago

vaadin-bot commented 8 years ago

Originally by drewharvey


Reproduced issue in:

Filtering down to a single item in a grid, contained by a subwindow, can cause a client-side exception. Once the exception is thrown, the grid will continue to throw exceptions and will not display any rows.

I cannot find a way to reproduce this 100% of the time. Sometimes it takes a few times of clearing the filter textbox and re-entering the filter string to get the exception to throw. This does not happen in the latest Chrome or Firefox. Have not tested pre IE10.

-*Repro Steps:**

  1. Create a Vaadin application and use the attached UI class.
  2. Load the application with the ?debug flag set.
  3. Using IE10 or IE11, bring up application UI that contains the subwindow with a contained grid.
  4. Make sure the grid contains at least 3 rows.
  5. In the first column, enter a filter string that will cause only the second row to show. Press 'Enter'.
  6. Result: client side exception is thrown and displayed.

-*Example of exception thrown:**

7411msError performing server to client RPC callscom.google.gwt.core.client.JavaScriptException: (Error) : Unspecified error.
   at Unknown.com_google_gwt_lang_Exceptions_wrap__Ljava_lang_Object_2Ljava_lang_Object_2(http://192.168.101.67:8080/VAADIN/widgetsets/com.example.MyWidgetset/FC8CC77F657201509CBF27671347ACA1.cache.js)
   at Unknown.com_vaadin_client_communication_RpcManager_$applyInvocation__Lcom_vaadin_client_communication_RpcManager_2Lcom_vaadin_shared_communication_MethodInvocation_2Lcom_vaadin_client_ServerConnector_2V(http://192.168.101.67:8080/VAADIN/widgetsets/com.example.MyWidgetset/FC8CC77F657201509CBF27671347ACA1.cache.js)
   at Unknown.com_vaadin_client_communication_RpcManager_$parseAndApplyInvocation__Lcom_vaadin_client_communication_RpcManager_2Lelemental_json_JsonArray_2Lcom_vaadin_client_ApplicationConnection_2Lcom_vaadin_shared_communication_MethodInvocation_2(http://192.168.101.67:8080/VAADIN/widgetsets/com.example.MyWidgetset/FC8CC77F657201509CBF27671347ACA1.cache.js)
   at Unknown.com_vaadin_client_communication_MessageHandler$3_$handleRpcInvocations__Lcom_vaadin_client_communication_MessageHandler$3_2Lcom_vaadin_client_ValueMap_2V(http://192.168.101.67:8080/VAADIN/widgetsets/com.example.MyWidgetset/FC8CC77F657201509CBF27671347ACA1.cache.js)
   at Unknown.com_vaadin_client_communication_MessageHandler$3_$execute__Lcom_vaadin_client_communication_MessageHandler$3_2V(http://192.168.101.67:8080/VAADIN/widgetsets/com.example.MyWidgetset/FC8CC77F657201509CBF27671347ACA1.cache.js)
   at Unknown.com_vaadin_client_communication_MessageHandler_$handleJSON__Lcom_vaadin_client_communication_MessageHandler_2Lcom_vaadin_client_ValueMap_2V(http://192.168.101.67:8080/VAADIN/widgetsets/com.example.MyWidgetset/FC8CC77F657201509CBF27671347ACA1.cache.js)
   at Unknown.com_vaadin_client_communication_MessageHandler_$handleMessage__Lcom_vaadin_client_communication_MessageHandler_2Lcom_vaadin_client_ValueMap_2V(http://192.168.101.67:8080/VAADIN/widgetsets/com.example.MyWidgetset/FC8CC77F657201509CBF27671347ACA1.cache.js)
   at Unknown.com_vaadin_client_communication_XhrConnection$XhrResponseHandler_onResponseReceived__Lcom_google_gwt_http_client_Request_2Lcom_google_gwt_http_client_Response_2V(http://192.168.101.67:8080/VAADIN/widgetsets/com.example.MyWidgetset/FC8CC77F657201509CBF27671347ACA1.cache.js)
   at Unknown.com_google_gwt_http_client_Request_$fireOnResponseReceived__Lcom_google_gwt_http_client_Request_2Lcom_google_gwt_http_client_RequestCallback_2V(http://192.168.101.67:8080/VAADIN/widgetsets/com.example.MyWidgetset/FC8CC77F657201509CBF27671347ACA1.cache.js)
   at Unknown.com_google_gwt_http_client_RequestBuilder$1_onReadyStateChange__Lcom_google_gwt_xhr_client_XMLHttpRequest_2V(http://192.168.101.67:8080/VAADIN/widgetsets/com.example.MyWidgetset/FC8CC77F657201509CBF27671347ACA1.cache.js)
   at Unknown.anonymous(http://192.168.101.67:8080/VAADIN/widgetsets/com.example.MyWidgetset/FC8CC77F657201509CBF27671347ACA1.cache.js)
   at Unknown.com_google_gwt_core_client_impl_Impl_apply__Ljava_lang_Object_2Ljava_lang_Object_2Ljava_lang_Object_2Ljava_lang_Object_2(http://192.168.101.67:8080/VAADIN/widgetsets/com.example.MyWidgetset/FC8CC77F657201509CBF27671347ACA1.cache.js)
   at Unknown.com_google_gwt_core_client_impl_Impl_entry0__Ljava_lang_Object_2Ljava_lang_Object_2Ljava_lang_Object_2Ljava_lang_Object_2(http://192.168.101.67:8080/VAADIN/widgetsets/com.example.MyWidgetset/FC8CC77F657201509CBF27671347ACA1.cache.js)
   at Unknown.anonymous(http://192.168.101.67:8080/VAADIN/widgetsets/com.example.MyWidgetset/FC8CC77F657201509CBF27671347ACA1.cache.js)

7434msServer to client RPC call: 7:com.vaadin.shared.data.DataProviderRpc.setRowData([0, [object Object]])

7723msError performing server to client RPC callscom.google.gwt.core.client.JavaScriptException: (TypeError) : Unable to set property 'colSpan' of undefined or null reference
   at Unknown.com_google_gwt_dom_client_Element_$setPropertyInt__Lcom_google_gwt_dom_client_Element_2Ljava_lang_String_2IV(http://192.168.101.67:8080/VAADIN/widgetsets/com.example.MyWidgetset/FC8CC77F657201509CBF27671347ACA1.cache.js)
   at Unknown.com_vaadin_client_widget_escalator_FlyweightCell_$setup__Lcom_vaadin_client_widget_escalator_FlyweightCell_2Lcom_vaadin_client_widget_escalator_FlyweightRow$CellIterator_2V(http://192.168.101.67:8080/VAADIN/widgetsets/com.example.MyWidgetset/FC8CC77F657201509CBF27671347ACA1.cache.js)
   at Unknown.com_vaadin_client_widget_escalator_FlyweightRow$CellIterator_$next__Lcom_vaadin_client_widget_escalator_FlyweightRow$CellIterator_2Lcom_vaadin_client_widget_escalator_FlyweightCell_2(http://192.168.101.67:8080/VAADIN/widgetsets/com.example.MyWidgetset/FC8CC77F657201509CBF27671347ACA1.cache.js)
   at Unknown.com_vaadin_client_widget_escalator_FlyweightRow$CellIterator_next__Ljava_lang_Object_2(http://192.168.101.67:8080/VAADIN/widgetsets/com.example.MyWidgetset/FC8CC77F657201509CBF27671347ACA1.cache.js)
   at Unknown.com_vaadin_client_widgets_Grid$BodyUpdater_update__Lcom_vaadin_client_widget_escalator_Row_2Ljava_lang_Iterable_2V(http://192.168.101.67:8080/VAADIN/widgetsets/com.example.MyWidgetset/FC8CC77F657201509CBF27671347ACA1.cache.js)
   at Unknown.com_vaadin_client_widgets_Escalator$AbstractRowContainer_$refreshRow__Lcom_vaadin_client_widgets_Escalator$AbstractRowContainer_2Lcom_google_gwt_dom_client_TableRowElement_2ILcom_vaadin_shared_ui_grid_Range_2V(http://192.168.101.67:8080/VAADIN/widgetsets/com.example.MyWidgetset/FC8CC77F657201509CBF27671347ACA1.cache.js)
   at Unknown.com_vaadin_client_widgets_Escalator$BodyRowContainerImpl_refreshCells__Lcom_vaadin_shared_ui_grid_Range_2Lcom_vaadin_shared_ui_grid_Range_2V(http://192.168.101.67:8080/VAADIN/widgetsets/com.example.MyWidgetset/FC8CC77F657201509CBF27671347ACA1.cache.js)
   at Unknown.com_vaadin_client_widgets_Escalator$AbstractRowContainer_$refreshRows__Lcom_vaadin_client_widgets_Escalator$AbstractRowContainer_2IIV(http://192.168.101.67:8080/VAADIN/widgetsets/com.example.MyWidgetset/FC8CC77F657201509CBF27671347ACA1.cache.js)
   at Unknown.com_vaadin_client_widgets_Grid$7_$dataUpdated__Lcom_vaadin_client_widgets_Grid$7_2IIV(http://192.168.101.67:8080/VAADIN/widgetsets/com.example.MyWidgetset/FC8CC77F657201509CBF27671347ACA1.cache.js)
   at Unknown.com_vaadin_client_data_AbstractRemoteDataSource_$setRowData__Lcom_vaadin_client_data_AbstractRemoteDataSource_2ILjava_util_List_2V(http://192.168.101.67:8080/VAADIN/widgetsets/com.example.MyWidgetset/FC8CC77F657201509CBF27671347ACA1.cache.js)
   at Unknown.com_vaadin_client_connectors_RpcDataSourceConnector$RpcDataSource_$setRowData__Lcom_vaadin_client_connectors_RpcDataSourceConnector$RpcDataSource_2ILjava_util_List_2V(http://192.168.101.67:8080/VAADIN/widgetsets/com.example.MyWidgetset/FC8CC77F657201509CBF27671347ACA1.cache.js)
   at Unknown.com_vaadin_client_connectors_RpcDataSourceConnector$RpcDataSource$1_$setRowData__Lcom_vaadin_client_connectors_RpcDataSourceConnector$RpcDataSource$1_2ILelemental_json_JsonArray_2V(http://192.168.101.67:8080/VAADIN/widgetsets/com.example.MyWidgetset/FC8CC77F657201509CBF27671347ACA1.cache.js)
   at Unknown.com_vaadin_client_metadata_ConnectorBundleLoaderImpl$1$1$220_invoke__Ljava_lang_Object_2_3Ljava_lang_Object_2Ljava_lang_Object_2(http://192.168.101.67:8080/VAADIN/widgetsets/com.example.MyWidgetset/FC8CC77F657201509CBF27671347ACA1.cache.js)
   at Unknown.com_vaadin_client_metadata_Method_$invoke__Lcom_vaadin_client_metadata_Method_2Ljava_lang_Object_2_3Ljava_lang_Object_2V(http://192.168.101.67:8080/VAADIN/widgetsets/com.example.MyWidgetset/FC8CC77F657201509CBF27671347ACA1.cache.js)
   at Unknown.com_vaadin_client_communication_RpcManager_$applyInvocation__Lcom_vaadin_client_communication_RpcManager_2Lcom_vaadin_shared_communication_MethodInvocation_2Lcom_vaadin_client_ServerConnector_2V(http://192.168.101.67:8080/VAADIN/widgetsets/com.example.MyWidgetset/FC8CC77F657201509CBF27671347ACA1.cache.js)
   at Unknown.com_vaadin_client_communication_RpcManager_$parseAndApplyInvocation__Lcom_vaadin_client_communication_RpcManager_2Lelemental_json_JsonArray_2Lcom_vaadin_client_ApplicationConnection_2Lcom_vaadin_shared_communication_MethodInvocation_2(http://192.168.101.67:8080/VAADIN/widgetsets/com.example.MyWidgetset/FC8CC77F657201509CBF27671347ACA1.cache.js)
   at Unknown.com_vaadin_client_communication_MessageHandler$3_$handleRpcInvocations__Lcom_vaadin_client_communication_MessageHandler$3_2Lcom_vaadin_client_ValueMap_2V(http://192.168.101.67:8080/VAADIN/widgetsets/com.example.MyWidgetset/FC8CC77F657201509CBF27671347ACA1.cache.js)
   at Unknown.com_vaadin_client_communication_MessageHandler$3_$execute__Lcom_vaadin_client_communication_MessageHandler$3_2V(http://192.168.101.67:8080/VAADIN/widgetsets/com.example.MyWidgetset/FC8CC77F657201509CBF27671347ACA1.cache.js)
   at Unknown.com_vaadin_client_communication_MessageHandler_$handleJSON__Lcom_vaadin_client_communication_MessageHandler_2Lcom_vaadin_client_ValueMap_2V(http://192.168.101.67:8080/VAADIN/widgetsets/com.example.MyWidgetset/FC8CC77F657201509CBF27671347ACA1.cache.js)
   at Unknown.com_vaadin_client_communication_MessageHandler_$handleMessage__Lcom_vaadin_client_communication_MessageHandler_2Lcom_vaadin_client_ValueMap_2V(http://192.168.101.67:8080/VAADIN/widgetsets/com.example.MyWidgetset/FC8CC77F657201509CBF27671347ACA1.cache.js)
   at Unknown.com_vaadin_client_communication_XhrConnection$XhrResponseHandler_onResponseReceived__Lcom_google_gwt_http_client_Request_2Lcom_google_gwt_http_client_Response_2V(http://192.168.101.67:8080/VAADIN/widgetsets/com.example.MyWidgetset/FC8CC77F657201509CBF27671347ACA1.cache.js)
   at Unknown.com_google_gwt_http_client_Request_$fireOnResponseReceived__Lcom_google_gwt_http_client_Request_2Lcom_google_gwt_http_client_RequestCallback_2V(http://192.168.101.67:8080/VAADIN/widgetsets/com.example.MyWidgetset/FC8CC77F657201509CBF27671347ACA1.cache.js)
   at Unknown.com_google_gwt_http_client_RequestBuilder$1_onReadyStateChange__Lcom_google_gwt_xhr_client_XMLHttpRequest_2V(http://192.168.101.67:8080/VAADIN/widgetsets/com.example.MyWidgetset/FC8CC77F657201509CBF27671347ACA1.cache.js)
   at Unknown.anonymous(http://192.168.101.67:8080/VAADIN/widgetsets/com.example.MyWidgetset/FC8CC77F657201509CBF27671347ACA1.cache.js)
   at Unknown.com_google_gwt_core_client_impl_Impl_apply__Ljava_lang_Object_2Ljava_lang_Object_2Ljava_lang_Object_2Ljava_lang_Object_2(http://192.168.101.67:8080/VAADIN/widgetsets/com.example.MyWidgetset/FC8CC77F657201509CBF27671347ACA1.cache.js)
   at Unknown.com_google_gwt_core_client_impl_Impl_entry0__Ljava_lang_Object_2Ljava_lang_Object_2Ljava_lang_Object_2Ljava_lang_Object_2(http://192.168.101.67:8080/VAADIN/widgetsets/com.example.MyWidgetset/FC8CC77F657201509CBF27671347ACA1.cache.js)
   at Unknown.anonymous(http://192.168.101.67:8080/VAADIN/widgetsets/com.example.MyWidgetset/FC8CC77F657201509CBF27671347ACA1.cache.js)

Imported from https://dev.vaadin.com/ issue #20416

vaadin-bot commented 8 years ago

Originally by drewharvey


Attachment added: MyUI.java (3.1 KiB)

vaadin-bot commented 8 years ago

Originally by drewharvey


Attachment added: grid-bug-01.jpg (54.2 KiB) grid-bug-01.jpg https://trac-attachments.vaadin.com/trac/20416/grid-bug-01.jpg

vaadin-bot commented 8 years ago

Originally by drewharvey


Attachment added: grid-bug-02.jpg (40.4 KiB) grid-bug-02.jpg https://trac-attachments.vaadin.com/trac/20416/grid-bug-02.jpg

vaadin-bot commented 8 years ago

Originally by drewharvey


Attachment added: grid-bug-03.jpg (140.5 KiB) grid-bug-03.jpg https://trac-attachments.vaadin.com/trac/20416/grid-bug-03.jpg

vaadin-bot commented 8 years ago

Originally by drewharvey


Repro step images:

[[Image(grid-bug-01.jpg)]]

[[Image(grid-bug-02.jpg)]]

[[Image(grid-bug-03.jpg)]]

drewharvey commented 7 years ago

client-side-exception-video

wbadam commented 7 years ago

Same can be reproduced reliably when using TreeGrid with two root items in a Window in IE 11 (see vaadin/tree-grid/issues/13). Tested with 7.7.7

Issue reliably occurs when clicking on expander button but doesn't when using keyboard navigation.

Also couldn't reproduce with simulating node expansion using Grid and adding items with a button click.

When assertions are enabled, the execution breaks earlier and the following exception is thrown.

Error performing server to client RPC callsjava.lang.AssertionError: The given element isn't a row element in the body
   at Unknown.java_lang_Throwable_$fillInStackTrace__Ljava_lang_Throwable_2Ljava_lang_Throwable_2(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/5A23A84C82165D00BDB4EC354A2AC67F.cache.js)
   at Unknown.java_lang_Throwable_Throwable__Ljava_lang_String_2Ljava_lang_Throwable_2V(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/5A23A84C82165D00BDB4EC354A2AC67F.cache.js)
   at Unknown.java_lang_Error_Error__Ljava_lang_String_2Ljava_lang_Throwable_2V(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/5A23A84C82165D00BDB4EC354A2AC67F.cache.js)
   at Unknown.java_lang_AssertionError_AssertionError__Ljava_lang_Object_2V(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/5A23A84C82165D00BDB4EC354A2AC67F.cache.js)
   at Unknown.com_vaadin_client_widgets_Escalator$BodyRowContainerImpl_$getLogicalRowIndex__Lcom_vaadin_client_widgets_Escalator$BodyRowContainerImpl_2Lcom_google_gwt_dom_client_TableRowElement_2I(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/5A23A84C82165D00BDB4EC354A2AC67F.cache.js)
   at Unknown.com_vaadin_client_widgets_Escalator$BodyRowContainerImpl_$convertToVisual__Lcom_vaadin_client_widgets_Escalator$BodyRowContainerImpl_2Lcom_vaadin_shared_ui_grid_Range_2Lcom_vaadin_shared_ui_grid_Range_2(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/5A23A84C82165D00BDB4EC354A2AC67F.cache.js)
   at Unknown.com_vaadin_client_widgets_Escalator$BodyRowContainerImpl_refreshCells__Lcom_vaadin_shared_ui_grid_Range_2Lcom_vaadin_shared_ui_grid_Range_2V(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/5A23A84C82165D00BDB4EC354A2AC67F.cache.js)
   at Unknown.com_vaadin_client_widgets_Escalator$AbstractRowContainer_$refreshRows__Lcom_vaadin_client_widgets_Escalator$AbstractRowContainer_2IIV(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/5A23A84C82165D00BDB4EC354A2AC67F.cache.js)
   at Unknown.com_vaadin_client_widgets_Grid$6_$dataUpdated__Lcom_vaadin_client_widgets_Grid$6_2IIV(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/5A23A84C82165D00BDB4EC354A2AC67F.cache.js)
   at Unknown.com_vaadin_client_data_AbstractRemoteDataSource_$setRowData__Lcom_vaadin_client_data_AbstractRemoteDataSource_2ILjava_util_List_2V(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/5A23A84C82165D00BDB4EC354A2AC67F.cache.js)
   at Unknown.com_vaadin_client_connectors_RpcDataSourceConnector$RpcDataSource_$setRowData__Lcom_vaadin_client_connectors_RpcDataSourceConnector$RpcDataSource_2ILjava_util_List_2V(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/5A23A84C82165D00BDB4EC354A2AC67F.cache.js)
   at Unknown.com_vaadin_client_connectors_RpcDataSourceConnector$RpcDataSource$1_$setRowData__Lcom_vaadin_client_connectors_RpcDataSourceConnector$RpcDataSource$1_2ILelemental_json_JsonArray_2V(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/5A23A84C82165D00BDB4EC354A2AC67F.cache.js)
   at Unknown.com_vaadin_client_metadata_ConnectorBundleLoaderImpl$1$1$229_invoke__Ljava_lang_Object_2_3Ljava_lang_Object_2Ljava_lang_Object_2(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/5A23A84C82165D00BDB4EC354A2AC67F.cache.js)
   at Unknown.com_vaadin_client_metadata_Method_$invoke__Lcom_vaadin_client_metadata_Method_2Ljava_lang_Object_2_3Ljava_lang_Object_2V(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/5A23A84C82165D00BDB4EC354A2AC67F.cache.js)
   at Unknown.com_vaadin_client_communication_RpcManager_$applyInvocation__Lcom_vaadin_client_communication_RpcManager_2Lcom_vaadin_shared_communication_MethodInvocation_2Lcom_vaadin_client_ServerConnector_2V(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/5A23A84C82165D00BDB4EC354A2AC67F.cache.js)
   at Unknown.com_vaadin_client_communication_RpcManager_$parseAndApplyInvocation__Lcom_vaadin_client_communication_RpcManager_2Lelemental_json_JsonArray_2Lcom_vaadin_client_ApplicationConnection_2Lcom_vaadin_shared_communication_MethodInvocation_2(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/5A23A84C82165D00BDB4EC354A2AC67F.cache.js)
   at Unknown.com_vaadin_client_communication_MessageHandler$3_$handleRpcInvocations__Lcom_vaadin_client_communication_MessageHandler$3_2Lcom_vaadin_client_ValueMap_2V(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/5A23A84C82165D00BDB4EC354A2AC67F.cache.js)
   at Unknown.com_vaadin_client_communication_MessageHandler$3_$execute__Lcom_vaadin_client_communication_MessageHandler$3_2V(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/5A23A84C82165D00BDB4EC354A2AC67F.cache.js)
   at Unknown.com_vaadin_client_communication_MessageHandler_$handleJSON__Lcom_vaadin_client_communication_MessageHandler_2Lcom_vaadin_client_ValueMap_2V(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/5A23A84C82165D00BDB4EC354A2AC67F.cache.js)
   at Unknown.com_vaadin_client_communication_MessageHandler_$handleMessage__Lcom_vaadin_client_communication_MessageHandler_2Lcom_vaadin_client_ValueMap_2V(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/5A23A84C82165D00BDB4EC354A2AC67F.cache.js)
   at Unknown.com_vaadin_client_communication_XhrConnection$XhrResponseHandler_onResponseReceived__Lcom_google_gwt_http_client_Request_2Lcom_google_gwt_http_client_Response_2V(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/5A23A84C82165D00BDB4EC354A2AC67F.cache.js)
   at Unknown.com_google_gwt_http_client_Request_$fireOnResponseReceived__Lcom_google_gwt_http_client_Request_2Lcom_google_gwt_http_client_RequestCallback_2V(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/5A23A84C82165D00BDB4EC354A2AC67F.cache.js)
   at Unknown.com_google_gwt_http_client_RequestBuilder$1_onReadyStateChange__Lcom_google_gwt_xhr_client_XMLHttpRequest_2V(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/5A23A84C82165D00BDB4EC354A2AC67F.cache.js)
   at Unknown.anonymous(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/5A23A84C82165D00BDB4EC354A2AC67F.cache.js)
   at Unknown.com_google_gwt_core_client_impl_Impl_apply__Ljava_lang_Object_2Ljava_lang_Object_2Ljava_lang_Object_2Ljava_lang_Object_2(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/5A23A84C82165D00BDB4EC354A2AC67F.cache.js)
   at Unknown.com_google_gwt_core_client_impl_Impl_entry0__Ljava_lang_Object_2Ljava_lang_Object_2Ljava_lang_Object_2Ljava_lang_Object_2(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/5A23A84C82165D00BDB4EC354A2AC67F.cache.js)
   at Unknown.anonymous(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/5A23A84C82165D00BDB4EC354A2AC67F.cache.js)

It seems that in certain conditions TableRowElement for the first row (given by VisualRowOrder#getFirst()) is not attached to the parent or the right parent during Escalator's body update. https://github.com/vaadin/framework/blob/7.7/client/src/main/java/com/vaadin/client/widgets/Escalator.java#L3528 and https://github.com/vaadin/framework/blob/7.7/client/src/main/java/com/vaadin/client/widgets/Escalator.java#L3482

Edge, Chrome, FF are working as expected.

Without -ea:

Error performing server to client RPC callscom.google.gwt.core.client.JavaScriptException: (TypeError) : Unable to set property 'colSpan' of undefined or null reference
   at Unknown.com_google_gwt_dom_client_Element_$setPropertyInt__Lcom_google_gwt_dom_client_Element_2Ljava_lang_String_2IV(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/0108675DB76E15C033A79339C7F02FB8.cache.js)
   at Unknown.com_vaadin_client_widget_escalator_FlyweightCell_$setup__Lcom_vaadin_client_widget_escalator_FlyweightCell_2Lcom_vaadin_client_widget_escalator_FlyweightRow$CellIterator_2V(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/0108675DB76E15C033A79339C7F02FB8.cache.js)
   at Unknown.com_vaadin_client_widget_escalator_FlyweightRow$CellIterator_$next__Lcom_vaadin_client_widget_escalator_FlyweightRow$CellIterator_2Lcom_vaadin_client_widget_escalator_FlyweightCell_2(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/0108675DB76E15C033A79339C7F02FB8.cache.js)
   at Unknown.com_vaadin_client_widget_escalator_FlyweightRow$CellIterator_next__Ljava_lang_Object_2(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/0108675DB76E15C033A79339C7F02FB8.cache.js)
   at Unknown.com_vaadin_client_widgets_Grid$BodyUpdater_update__Lcom_vaadin_client_widget_escalator_Row_2Ljava_lang_Iterable_2V(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/0108675DB76E15C033A79339C7F02FB8.cache.js)
   at Unknown.com_vaadin_client_widgets_Escalator$AbstractRowContainer_$refreshRow__Lcom_vaadin_client_widgets_Escalator$AbstractRowContainer_2Lcom_google_gwt_dom_client_TableRowElement_2ILcom_vaadin_shared_ui_grid_Range_2V(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/0108675DB76E15C033A79339C7F02FB8.cache.js)
   at Unknown.com_vaadin_client_widgets_Escalator$BodyRowContainerImpl_refreshCells__Lcom_vaadin_shared_ui_grid_Range_2Lcom_vaadin_shared_ui_grid_Range_2V(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/0108675DB76E15C033A79339C7F02FB8.cache.js)
   at Unknown.com_vaadin_client_widgets_Escalator$AbstractRowContainer_$refreshRows__Lcom_vaadin_client_widgets_Escalator$AbstractRowContainer_2IIV(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/0108675DB76E15C033A79339C7F02FB8.cache.js)
   at Unknown.com_vaadin_client_widgets_Grid$6_$dataUpdated__Lcom_vaadin_client_widgets_Grid$6_2IIV(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/0108675DB76E15C033A79339C7F02FB8.cache.js)
   at Unknown.com_vaadin_client_data_AbstractRemoteDataSource_$setRowData__Lcom_vaadin_client_data_AbstractRemoteDataSource_2ILjava_util_List_2V(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/0108675DB76E15C033A79339C7F02FB8.cache.js)
   at Unknown.com_vaadin_client_connectors_RpcDataSourceConnector$RpcDataSource_$setRowData__Lcom_vaadin_client_connectors_RpcDataSourceConnector$RpcDataSource_2ILjava_util_List_2V(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/0108675DB76E15C033A79339C7F02FB8.cache.js)
   at Unknown.com_vaadin_client_connectors_RpcDataSourceConnector$RpcDataSource$1_$setRowData__Lcom_vaadin_client_connectors_RpcDataSourceConnector$RpcDataSource$1_2ILelemental_json_JsonArray_2V(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/0108675DB76E15C033A79339C7F02FB8.cache.js)
   at Unknown.com_vaadin_client_metadata_ConnectorBundleLoaderImpl$1$1$229_invoke__Ljava_lang_Object_2_3Ljava_lang_Object_2Ljava_lang_Object_2(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/0108675DB76E15C033A79339C7F02FB8.cache.js)
   at Unknown.com_vaadin_client_metadata_Method_$invoke__Lcom_vaadin_client_metadata_Method_2Ljava_lang_Object_2_3Ljava_lang_Object_2V(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/0108675DB76E15C033A79339C7F02FB8.cache.js)
   at Unknown.com_vaadin_client_communication_RpcManager_$applyInvocation__Lcom_vaadin_client_communication_RpcManager_2Lcom_vaadin_shared_communication_MethodInvocation_2Lcom_vaadin_client_ServerConnector_2V(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/0108675DB76E15C033A79339C7F02FB8.cache.js)
   at Unknown.com_vaadin_client_communication_RpcManager_$parseAndApplyInvocation__Lcom_vaadin_client_communication_RpcManager_2Lelemental_json_JsonArray_2Lcom_vaadin_client_ApplicationConnection_2Lcom_vaadin_shared_communication_MethodInvocation_2(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/0108675DB76E15C033A79339C7F02FB8.cache.js)
   at Unknown.com_vaadin_client_communication_MessageHandler$3_$handleRpcInvocations__Lcom_vaadin_client_communication_MessageHandler$3_2Lcom_vaadin_client_ValueMap_2V(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/0108675DB76E15C033A79339C7F02FB8.cache.js)
   at Unknown.com_vaadin_client_communication_MessageHandler$3_$execute__Lcom_vaadin_client_communication_MessageHandler$3_2V(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/0108675DB76E15C033A79339C7F02FB8.cache.js)
   at Unknown.com_vaadin_client_communication_MessageHandler_$handleJSON__Lcom_vaadin_client_communication_MessageHandler_2Lcom_vaadin_client_ValueMap_2V(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/0108675DB76E15C033A79339C7F02FB8.cache.js)
   at Unknown.com_vaadin_client_communication_MessageHandler_$handleMessage__Lcom_vaadin_client_communication_MessageHandler_2Lcom_vaadin_client_ValueMap_2V(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/0108675DB76E15C033A79339C7F02FB8.cache.js)
   at Unknown.com_vaadin_client_communication_XhrConnection$XhrResponseHandler_onResponseReceived__Lcom_google_gwt_http_client_Request_2Lcom_google_gwt_http_client_Response_2V(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/0108675DB76E15C033A79339C7F02FB8.cache.js)
   at Unknown.com_google_gwt_http_client_Request_$fireOnResponseReceived__Lcom_google_gwt_http_client_Request_2Lcom_google_gwt_http_client_RequestCallback_2V(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/0108675DB76E15C033A79339C7F02FB8.cache.js)
   at Unknown.com_google_gwt_http_client_RequestBuilder$1_onReadyStateChange__Lcom_google_gwt_xhr_client_XMLHttpRequest_2V(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/0108675DB76E15C033A79339C7F02FB8.cache.js)
   at Unknown.anonymous(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/0108675DB76E15C033A79339C7F02FB8.cache.js)
   at Unknown.com_google_gwt_core_client_impl_Impl_apply__Ljava_lang_Object_2Ljava_lang_Object_2Ljava_lang_Object_2Ljava_lang_Object_2(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/0108675DB76E15C033A79339C7F02FB8.cache.js)
   at Unknown.com_google_gwt_core_client_impl_Impl_entry0__Ljava_lang_Object_2Ljava_lang_Object_2Ljava_lang_Object_2Ljava_lang_Object_2(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/0108675DB76E15C033A79339C7F02FB8.cache.js)
   at Unknown.anonymous(http://192.168.1.34:8080/VAADIN/widgetsets/org.vaadin.treegrid.demo.DemoWidgetSet/0108675DB76E15C033A79339C7F02FB8.cache.js)
buuzta commented 7 years ago

This kind of error happens also while removing one of exactly two grid items in a subwindow. Reproduced issue in:

Browsers: IE11
Vaadin Version: 7.7.10 and 7.7.11

It's not reproducable each time. Sometimes it occurs after 5 page reloads and tests, sometime you'll need only one try.

MyUI.zip

grid-in-subwindow-bug

BTW: It's not reproducable with Vaadin Version 8.1.5

wbadam commented 7 years ago

This is potentially related to https://github.com/vaadin/framework/issues/9850

stale[bot] commented 6 years ago

Hello there!

It looks like this issue hasn't progressed lately. There are so many issues that we just can't deal them all within a reasonable timeframe.

There are a couple of things you could help to get things rolling on this issue (this is an automated message, so expect that some of these are already in use):

Thanks again for your contributions! Even though we haven't been able to get this issue fixed, we hope you to report your findings and enhancement ideas in the future too!

stale[bot] commented 4 years ago

Hello there!

We are sorry that this issue hasn't progressed lately. We are prioritizing issues by severity and the number of customers we expect are experiencing this and haven't gotten around to fix this issue yet.

There are a couple of things you could help to get things rolling on this issue (this is an automated message, so expect that some of these are already in use):

Thanks again for your contributions! Even though we haven't been able to get this issue fixed, we hope you to report your findings and enhancement ideas in the future too!