You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I have a TableView2 with multi selection and cell selection enabled. (version 11.1.2)
Select cells in multiple rows
Clear table data
Watch IndexOutOfBoundsExceptions being thrown
This exception is not thrown back into the user code, but having a lot of cells selected will result in a lot of exceptions. This creates a huge load, especially if these exceptions are logged to disk.
Exception in thread "JavaFX Application Thread" java.lang.IndexOutOfBoundsException: Index 6 out of bounds for length 0
at java.base/jdk.internal.util.Preconditions.outOfBounds(Preconditions.java:64)
at java.base/jdk.internal.util.Preconditions.outOfBoundsCheckIndex(Preconditions.java:70)
at java.base/jdk.internal.util.Preconditions.checkIndex(Preconditions.java:266)
at java.base/java.util.Objects.checkIndex(Objects.java:361)
at java.base/java.util.ArrayList.get(ArrayList.java:427)
at javafx.base/com.sun.javafx.collections.ObservableListWrapper.get(ObservableListWrapper.java:88)
at javafx.controls/javafx.scene.control.TableView$TableViewSelectionModel.getModelItem(TableView.java:2192)
at javafx.controls/javafx.scene.control.MultipleSelectionModelBase$1.getModelItem(MultipleSelectionModelBase.java:74)
at javafx.controls/com.sun.javafx.scene.control.SelectedItemsReadOnlyObservableList.lambda$new$0(SelectedItemsReadOnlyObservableList.java:88)
at javafx.base/com.sun.javafx.collections.ListListenerHelper$SingleChange.fireValueChangedEvent(ListListenerHelper.java:162)
at javafx.base/com.sun.javafx.collections.ListListenerHelper.fireValueChangedEvent(ListListenerHelper.java:71)
at javafx.base/javafx.collections.ObservableListBase.fireChange(ObservableListBase.java:238)
at javafx.base/javafx.collections.ListChangeBuilder.commit(ListChangeBuilder.java:482)
at javafx.base/javafx.collections.ListChangeBuilder.endChange(ListChangeBuilder.java:541)
at javafx.base/javafx.collections.ObservableListBase.endChange(ObservableListBase.java:210)
at javafx.controls/com.sun.javafx.scene.control.ReadOnlyUnbackedObservableList._endChange(ReadOnlyUnbackedObservableList.java:55)
at javafx.controls/javafx.scene.control.MultipleSelectionModelBase$SelectedIndicesList._endChange(MultipleSelectionModelBase.java:917)
at javafx.controls/javafx.scene.control.ControlUtils.updateSelectedIndices(ControlUtils.java:218)
at javafx.controls/javafx.scene.control.TableView$TableViewArrayListSelectionModel.fireCustomSelectedCellsListChangeEvent(TableView.java:3186)
at javafx.controls/javafx.scene.control.TableView$TableViewArrayListSelectionModel.lambda$new$1(TableView.java:2272)
at javafx.base/com.sun.javafx.collections.ListListenerHelper$SingleChange.fireValueChangedEvent(ListListenerHelper.java:162)
at javafx.base/com.sun.javafx.collections.ListListenerHelper.fireValueChangedEvent(ListListenerHelper.java:71)
at javafx.base/javafx.collections.ObservableListBase.fireChange(ObservableListBase.java:238)
at javafx.base/javafx.collections.ListChangeBuilder.commit(ListChangeBuilder.java:482)
at javafx.base/javafx.collections.ListChangeBuilder.endChange(ListChangeBuilder.java:541)
at javafx.base/javafx.collections.ObservableListBase.endChange(ObservableListBase.java:210)
at javafx.base/javafx.collections.transformation.SortedList.sourceChanged(SortedList.java:111)
at javafx.base/javafx.collections.transformation.TransformationList.lambda$getListener$0(TransformationList.java:105)
at javafx.base/javafx.collections.WeakListChangeListener.onChanged(WeakListChangeListener.java:88)
at javafx.base/com.sun.javafx.collections.ListListenerHelper$SingleChange.fireValueChangedEvent(ListListenerHelper.java:162)
at javafx.base/com.sun.javafx.collections.ListListenerHelper.fireValueChangedEvent(ListListenerHelper.java:71)
at javafx.base/javafx.collections.ObservableListBase.fireChange(ObservableListBase.java:238)
at javafx.base/javafx.collections.ListChangeBuilder.commit(ListChangeBuilder.java:482)
at javafx.base/javafx.collections.ListChangeBuilder.endChange(ListChangeBuilder.java:541)
at javafx.base/javafx.collections.ObservableListBase.endChange(ObservableListBase.java:210)
at javafx.base/javafx.collections.ModifiableObservableListBase.remove(ModifiableObservableListBase.java:190)
at javafx.base/javafx.collections.ModifiableObservableListBase.remove(ModifiableObservableListBase.java:178)
at javafx.controls/com.sun.javafx.scene.control.SelectedCellsMap.remove(SelectedCellsMap.java:194)
at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1625)
at java.base/java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:762)
at javafx.controls/javafx.scene.control.TableView$TableViewArrayListSelectionModel.clearSelection(TableView.java:2939)
at javafx.controls/javafx.scene.control.TableView$TableViewArrayListSelectionModel.clearSelection(TableView.java:2913)
at javafx.controls/javafx.scene.control.TableView$TableViewArrayListSelectionModel.clearSelection(TableView.java:2908)
at impl.org.controlsfx.tableview2.RowHeader.lambda$init$12(RowHeader.java:210)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1511)
at java.base/java.util.Collections$UnmodifiableCollection.forEach(Collections.java:1092)
at impl.org.controlsfx.tableview2.RowHeader.lambda$init$14(RowHeader.java:210)
at javafx.base/com.sun.javafx.collections.ListListenerHelper$SingleChange.fireValueChangedEvent(ListListenerHelper.java:162)
at javafx.base/com.sun.javafx.collections.ListListenerHelper.fireValueChangedEvent(ListListenerHelper.java:71)
at javafx.base/javafx.collections.ObservableListBase.fireChange(ObservableListBase.java:238)
at javafx.base/javafx.collections.ListChangeBuilder.commit(ListChangeBuilder.java:482)
at javafx.base/javafx.collections.ListChangeBuilder.endChange(ListChangeBuilder.java:541)
at javafx.base/javafx.collections.ObservableListBase.endChange(ObservableListBase.java:210)
at javafx.base/javafx.collections.ModifiableObservableListBase.setAll(ModifiableObservableListBase.java:98)
at impl.org.controlsfx.tableview2.TableView2Skin.updateHeaders(TableView2Skin.java:965)
at impl.org.controlsfx.tableview2.TableView2Skin.lambda$init$9(TableView2Skin.java:532)
at javafx.base/com.sun.javafx.binding.ExpressionHelper$Generic.fireValueChangedEvent(ExpressionHelper.java:360)
at javafx.base/com.sun.javafx.binding.ExpressionHelper.fireValueChangedEvent(ExpressionHelper.java:80)
at javafx.base/javafx.beans.property.ReadOnlyIntegerPropertyBase.fireValueChangedEvent(ReadOnlyIntegerPropertyBase.java:78)
at javafx.base/javafx.beans.property.ReadOnlyIntegerWrapper.fireValueChangedEvent(ReadOnlyIntegerWrapper.java:102)
at javafx.base/javafx.beans.property.IntegerPropertyBase.markInvalid(IntegerPropertyBase.java:114)
at javafx.base/javafx.beans.property.IntegerPropertyBase.set(IntegerPropertyBase.java:148)
at javafx.controls/javafx.scene.control.SelectionModel.setSelectedIndex(SelectionModel.java:69)
at javafx.controls/javafx.scene.control.TableView$TableViewArrayListSelectionModel.updateSelectedIndex(TableView.java:3163)
at javafx.controls/javafx.scene.control.TableView$TableViewArrayListSelectionModel.clearSelection(TableView.java:2953)
at javafx.controls/javafx.scene.control.TableView$TableViewArrayListSelectionModel.updateDefaultSelection(TableView.java:3147)
at javafx.controls/javafx.scene.control.TableView$TableViewArrayListSelectionModel.lambda$new$3(TableView.java:2340)
at javafx.base/javafx.collections.WeakListChangeListener.onChanged(WeakListChangeListener.java:88)
at javafx.base/com.sun.javafx.collections.ListListenerHelper$Generic.fireValueChangedEvent(ListListenerHelper.java:327)
at javafx.base/com.sun.javafx.collections.ListListenerHelper.fireValueChangedEvent(ListListenerHelper.java:71)
at javafx.base/javafx.collections.ObservableListBase.fireChange(ObservableListBase.java:238)
at javafx.base/javafx.collections.ListChangeBuilder.commit(ListChangeBuilder.java:482)
at javafx.base/javafx.collections.ListChangeBuilder.endChange(ListChangeBuilder.java:541)
at javafx.base/javafx.collections.ObservableListBase.endChange(ObservableListBase.java:210)
at javafx.base/com.sun.javafx.collections.ObservableListWrapper.clear(ObservableListWrapper.java:156)
at TableView2TestBed.lambda$start$1(TableView2TestBed.java:29)
/* ... */
The text was updated successfully, but these errors were encountered:
I have a
TableView2
with multi selection and cell selection enabled. (version 11.1.2)This exception is not thrown back into the user code, but having a lot of cells selected will result in a lot of exceptions. This creates a huge load, especially if these exceptions are logged to disk.
SSCCE:
Console
The text was updated successfully, but these errors were encountered: