Open vaadin-bot opened 8 years ago
Originally by drewharvey
Attachment added: grid-bug-01.jpg
(54.2 KiB)
https://trac-attachments.vaadin.com/trac/20416/grid-bug-01.jpg
Originally by drewharvey
Attachment added: grid-bug-02.jpg
(40.4 KiB)
https://trac-attachments.vaadin.com/trac/20416/grid-bug-02.jpg
Originally by drewharvey
Attachment added: grid-bug-03.jpg
(140.5 KiB)
https://trac-attachments.vaadin.com/trac/20416/grid-bug-03.jpg
Originally by drewharvey
Repro step images:
[[Image(grid-bug-01.jpg)]]
[[Image(grid-bug-02.jpg)]]
[[Image(grid-bug-03.jpg)]]
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)
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.
BTW: It's not reproducable with Vaadin Version 8.1.5
This is potentially related to https://github.com/vaadin/framework/issues/9850
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!
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!
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:**
-*Example of exception thrown:**
Imported from https://dev.vaadin.com/ issue #20416