-
-
Notifications
You must be signed in to change notification settings - Fork 2.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Uncaught exception occured for group change #8175
Comments
the error is coming from a change in the group selection triggering over the state manager a change in the main table. Do you have manual groups or are that somehow automatic groups?
|
Thanks for looking into this! The groups are all manual. It seems to occur mainly after I create a new entry, and then change group or click the search box |
Just a little follow up: this problem doesn't happen anymore; somehow it went away by itself. I have not installed a new version or anything like that. If it returns, I'll report back! |
I installed Jabref recently and I have had several exceptions so far, which I ignored until today, when I decided to actually bother to report the bug, only to see that it's the same as the one which this issue is about.
This dialog was actually shown approximately 5 times and I had to close each of them. System:
|
Thanks for the detailed report. Unfortunately, I was not yet able to reproduce this locally in my environment, but I think the culprit might be somehow this line in the LIbraryTab A group selection event triggers somehow this sselectionListener in the mainTable... jabref/src/main/java/org/jabref/gui/LibraryTab.java Lines 480 to 481 in 222d214
|
I guess something like group selection changes > some of the current entries are not part of the new group > they are not shown and thus deselected. |
Nice guess, I selected an entry, switched to a group which that entry does not belong to and the exception showed. |
JabRef version
Latest development branch build (please note build date below)
Operating system
Windows
Details on version and operating system
JabRef 5.4--2021-10-18--4ffdaf2
Checked with the latest development build
Steps to reproduce the behaviour
Regularly, I have this exception. Cannot really find a way to reproduce it systematically, but happens often when I search/select a group.
java.lang.IndexOutofBoundsException
java.util.NoSuchElementException: java.lang.IndexOutOfBoundsException
at java.base/java.util.AbstractList$Itr.next(Unknown Source)
at java.base/java.util.Iterator.forEachRemaining(Unknown Source)
at java.base/java.util.Spliterators$IteratorSpliterator.forEachRemaining(Unknown Source)
at java.base/java.util.stream.AbstractPipeline.copyInto(Unknown Source)
at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(Unknown Source)
at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(Unknown Source)
at java.base/java.util.stream.AbstractPipeline.evaluate(Unknown Source)
at java.base/java.util.stream.ReferencePipeline.collect(Unknown Source)
at [email protected]/org.jabref.gui.maintable.MainTable.getSelectedEntries(Unknown Source)
at [email protected]/org.jabref.gui.LibraryTab.lambda$createMainTable$14(Unknown Source)
at [email protected]/com.sun.javafx.collections.ListListenerHelper$Generic.fireValueChangedEvent(Unknown Source)
at [email protected]/com.sun.javafx.collections.ListListenerHelper.fireValueChangedEvent(Unknown Source)
at [email protected]/javafx.collections.ObservableListBase.fireChange(Unknown Source)
at [email protected]/javafx.collections.ListChangeBuilder.commit(Unknown Source)
at [email protected]/javafx.collections.ListChangeBuilder.endChange(Unknown Source)
at [email protected]/javafx.collections.ObservableListBase.endChange(Unknown Source)
at [email protected]/com.sun.javafx.scene.control.SelectedItemsReadOnlyObservableList.lambda$new$0(Unknown Source)
at [email protected]/com.sun.javafx.collections.ListListenerHelper$Generic.fireValueChangedEvent(Unknown Source)
at [email protected]/com.sun.javafx.collections.ListListenerHelper.fireValueChangedEvent(Unknown Source)
at [email protected]/javafx.collections.ObservableListBase.fireChange(Unknown Source)
at [email protected]/javafx.collections.ListChangeBuilder.commit(Unknown Source)
at [email protected]/javafx.collections.ListChangeBuilder.endChange(Unknown Source)
at [email protected]/javafx.collections.ObservableListBase.endChange(Unknown Source)
at [email protected]/com.sun.javafx.scene.control.ReadOnlyUnbackedObservableList._endChange(Unknown Source)
at [email protected]/javafx.scene.control.MultipleSelectionModelBase$SelectedIndicesList._endChange(Unknown Source)
at [email protected]/javafx.scene.control.ControlUtils.updateSelectedIndices(Unknown Source)
at [email protected]/javafx.scene.control.TableView$TableViewArrayListSelectionModel.fireCustomSelectedCellsListChangeEvent(Unknown Source)
at [email protected]/javafx.scene.control.TableView$TableViewArrayListSelectionModel.clearSelection(Unknown Source)
at [email protected]/javafx.scene.control.TableView$TableViewArrayListSelectionModel.updateDefaultSelection(Unknown Source)
at [email protected]/javafx.scene.control.TableView$TableViewArrayListSelectionModel.lambda$new$2(Unknown Source)
at [email protected]/javafx.collections.WeakListChangeListener.onChanged(Unknown Source)
at [email protected]/com.sun.javafx.collections.ListListenerHelper$Generic.fireValueChangedEvent(Unknown Source)
at [email protected]/com.sun.javafx.collections.ListListenerHelper.fireValueChangedEvent(Unknown Source)
at [email protected]/javafx.collections.ObservableListBase.fireChange(Unknown Source)
at [email protected]/javafx.collections.ListChangeBuilder.commit(Unknown Source)
at [email protected]/javafx.collections.ListChangeBuilder.endChange(Unknown Source)
at [email protected]/javafx.collections.ObservableListBase.endChange(Unknown Source)
at [email protected]/javafx.collections.transformation.SortedList.sourceChanged(Unknown Source)
at [email protected]/javafx.collections.transformation.TransformationList.lambda$getListener$0(Unknown Source)
at [email protected]/javafx.collections.WeakListChangeListener.onChanged(Unknown Source)
at [email protected]/com.sun.javafx.collections.ListListenerHelper$Generic.fireValueChangedEvent(Unknown Source)
at [email protected]/com.sun.javafx.collections.ListListenerHelper.fireValueChangedEvent(Unknown Source)
at [email protected]/javafx.collections.ObservableListBase.fireChange(Unknown Source)
at [email protected]/javafx.collections.transformation.FilteredList.refilter(Unknown Source)
at [email protected]/javafx.collections.transformation.FilteredList$1.invalidated(Unknown Source)
at [email protected]/javafx.beans.property.ObjectPropertyBase.markInvalid(Unknown Source)
at [email protected]/javafx.beans.property.ObjectPropertyBase$Listener.invalidated(Unknown Source)
at [email protected]/com.sun.javafx.binding.ExpressionHelper$SingleInvalidation.fireValueChangedEvent(Unknown Source)
at [email protected]/com.sun.javafx.binding.ExpressionHelper.fireValueChangedEvent(Unknown Source)
at [email protected]/javafx.beans.binding.ObjectBinding.invalidate(Unknown Source)
at [email protected]/com.sun.javafx.binding.BindingHelperObserver.invalidated(Unknown Source)
at [email protected]/com.sun.javafx.binding.ListExpressionHelper$SingleInvalidation.fireValueChangedEvent(Unknown Source)
at [email protected]/com.sun.javafx.binding.ListExpressionHelper.fireValueChangedEvent(Unknown Source)
at [email protected]/javafx.beans.property.ReadOnlyListPropertyBase.fireValueChangedEvent(Unknown Source)
at [email protected]/javafx.beans.property.ReadOnlyListWrapper.fireValueChangedEvent(Unknown Source)
at [email protected]/javafx.beans.property.ListPropertyBase.markInvalid(Unknown Source)
at [email protected]/javafx.beans.property.ListPropertyBase$Listener.invalidated(Unknown Source)
at [email protected]/com.sun.javafx.binding.ExpressionHelper$SingleInvalidation.fireValueChangedEvent(Unknown Source)
at [email protected]/com.sun.javafx.binding.ExpressionHelper.fireValueChangedEvent(Unknown Source)
at [email protected]/javafx.beans.binding.ObjectBinding.invalidate(Unknown Source)
at [email protected]/com.sun.javafx.binding.BindingHelperObserver.invalidated(Unknown Source)
at [email protected]/com.sun.javafx.collections.MapListenerHelper$SingleInvalidation.fireValueChangedEvent(Unknown Source)
at [email protected]/com.sun.javafx.collections.MapListenerHelper.fireValueChangedEvent(Unknown Source)
at [email protected]/com.sun.javafx.collections.ObservableMapWrapper.callObservers(Unknown Source)
at [email protected]/com.sun.javafx.collections.ObservableMapWrapper.put(Unknown Source)
at [email protected]/org.jabref.gui.StateManager.setSelectedGroups(Unknown Source)
at [email protected]/org.jabref.gui.groups.GroupTreeViewModel.lambda$onSelectedGroupChanged$3(Unknown Source)
at java.base/java.util.Optional.ifPresent(Unknown Source)
at [email protected]/org.jabref.gui.groups.GroupTreeViewModel.onSelectedGroupChanged(Unknown Source)
at [email protected]/com.tobiasdiez.easybind.EasyBind.lambda$subscribe$1(Unknown Source)
at [email protected]/com.sun.javafx.binding.ListExpressionHelper$Generic.notifyListeners(Unknown Source)
at [email protected]/com.sun.javafx.binding.ListExpressionHelper$Generic.fireValueChangedEvent(Unknown Source)
at [email protected]/com.sun.javafx.binding.ListExpressionHelper.fireValueChangedEvent(Unknown Source)
at [email protected]/javafx.beans.property.ListPropertyBase.fireValueChangedEvent(Unknown Source)
at [email protected]/javafx.beans.property.ListPropertyBase.lambda$new$0(Unknown Source)
at [email protected]/com.sun.javafx.collections.ListListenerHelper$SingleChange.fireValueChangedEvent(Unknown Source)
at [email protected]/com.sun.javafx.collections.ListListenerHelper.fireValueChangedEvent(Unknown Source)
at [email protected]/javafx.collections.ObservableListBase.fireChange(Unknown Source)
at [email protected]/javafx.collections.ListChangeBuilder.commit(Unknown Source)
at [email protected]/javafx.collections.ListChangeBuilder.endChange(Unknown Source)
at [email protected]/javafx.collections.ObservableListBase.endChange(Unknown Source)
at [email protected]/javafx.collections.ModifiableObservableListBase.setAll(Unknown Source)
at [email protected]/javafx.beans.binding.ListExpression.setAll(Unknown Source)
at [email protected]/org.jabref.gui.groups.GroupTreeView.updateSelection(Unknown Source)
at [email protected]/org.jabref.gui.util.BindingsHelper$BidirectionalListBinding.onChanged(Unknown Source)
at [email protected]/com.sun.javafx.collections.ListListenerHelper$SingleChange.fireValueChangedEvent(Unknown Source)
at [email protected]/com.sun.javafx.collections.ListListenerHelper.fireValueChangedEvent(Unknown Source)
at [email protected]/javafx.collections.ObservableListBase.fireChange(Unknown Source)
at [email protected]/javafx.collections.ListChangeBuilder.commit(Unknown Source)
at [email protected]/javafx.collections.ListChangeBuilder.endChange(Unknown Source)
at [email protected]/javafx.collections.ObservableListBase.endChange(Unknown Source)
at [email protected]/com.sun.javafx.scene.control.SelectedItemsReadOnlyObservableList.lambda$new$0(Unknown Source)
at [email protected]/com.sun.javafx.collections.ListListenerHelper$Generic.fireValueChangedEvent(Unknown Source)
at [email protected]/com.sun.javafx.collections.ListListenerHelper.fireValueChangedEvent(Unknown Source)
at [email protected]/javafx.collections.ObservableListBase.fireChange(Unknown Source)
at [email protected]/javafx.collections.ListChangeBuilder.commit(Unknown Source)
at [email protected]/javafx.collections.ListChangeBuilder.endChange(Unknown Source)
at [email protected]/javafx.collections.ObservableListBase.endChange(Unknown Source)
at [email protected]/com.sun.javafx.scene.control.ReadOnlyUnbackedObservableList._endChange(Unknown Source)
at [email protected]/javafx.scene.control.MultipleSelectionModelBase$SelectedIndicesList._endChange(Unknown Source)
at [email protected]/javafx.scene.control.ControlUtils.updateSelectedIndices(Unknown Source)
at [email protected]/javafx.scene.control.TreeTableView$TreeTableViewArrayListSelectionModel.fireCustomSelectedCellsListChangeEvent(Unknown Source)
at [email protected]/javafx.scene.control.TreeTableView$TreeTableViewArrayListSelectionModel.clearAndSelect(Unknown Source)
at [email protected]/com.sun.javafx.scene.control.behavior.TableCellBehaviorBase.simpleSelect(Unknown Source)
at [email protected]/com.sun.javafx.scene.control.behavior.TableCellBehaviorBase.doSelect(Unknown Source)
at [email protected]/com.sun.javafx.scene.control.behavior.CellBehaviorBase.mousePressed(Unknown Source)
at [email protected]/com.sun.javafx.scene.control.inputmap.InputMap.handle(Unknown Source)
at [email protected]/com.sun.javafx.event.CompositeEventHandler$NormalEventHandlerRecord.handleBubblingEvent(Unknown Source)
at [email protected]/com.sun.javafx.event.CompositeEventHandler.dispatchBubblingEvent(Unknown Source)
at [email protected]/com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(Unknown Source)
at [email protected]/com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(Unknown Source)
at [email protected]/com.sun.javafx.event.CompositeEventDispatcher.dispatchBubblingEvent(Unknown Source)
at [email protected]/com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(Unknown Source)
at [email protected]/com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(Unknown Source)
at [email protected]/com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(Unknown Source)
at [email protected]/com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(Unknown Source)
at [email protected]/com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(Unknown Source)
at [email protected]/com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(Unknown Source)
at [email protected]/com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(Unknown Source)
at [email protected]/com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(Unknown Source)
at [email protected]/com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(Unknown Source)
at [email protected]/com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(Unknown Source)
at [email protected]/com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(Unknown Source)
at [email protected]/com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(Unknown Source)
at [email protected]/com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(Unknown Source)
at [email protected]/com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(Unknown Source)
at [email protected]/com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(Unknown Source)
at [email protected]/com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(Unknown Source)
at [email protected]/com.sun.javafx.event.EventUtil.fireEventImpl(Unknown Source)
at [email protected]/com.sun.javafx.event.EventUtil.fireEvent(Unknown Source)
at [email protected]/javafx.event.Event.fireEvent(Unknown Source)
at [email protected]/javafx.scene.Scene$MouseHandler.process(Unknown Source)
at [email protected]/javafx.scene.Scene.processMouseEvent(Unknown Source)
at [email protected]/javafx.scene.Scene$ScenePeerListener.mouseEvent(Unknown Source)
at [email protected]/com.sun.javafx.tk.quantum.GlassViewEventHandler$MouseEventNotification.run(Unknown Source)
at [email protected]/com.sun.javafx.tk.quantum.GlassViewEventHandler$MouseEventNotification.run(Unknown Source)
at java.base/java.security.AccessController.doPrivileged(Unknown Source)
at [email protected]/com.sun.javafx.tk.quantum.GlassViewEventHandler.lambda$handleMouseEvent$2(Unknown Source)
at [email protected]/com.sun.javafx.tk.quantum.QuantumToolkit.runWithoutRenderLock(Unknown Source)
at [email protected]/com.sun.javafx.tk.quantum.GlassViewEventHandler.handleMouseEvent(Unknown Source)
at [email protected]/com.sun.glass.ui.View.handleMouseEvent(Unknown Source)
at [email protected]/com.sun.glass.ui.View.notifyMouse(Unknown Source)
at [email protected]/com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at [email protected]/com.sun.glass.ui.win.WinApplication.lambda$runLoop$3(Unknown Source)
at java.base/java.lang.Thread.run(Unknown Source)
Caused by: java.lang.IndexOutOfBoundsException
at [email protected]/javafx.collections.transformation.SortedList.get(Unknown Source)
at [email protected]/javafx.scene.control.TableView$TableViewSelectionModel.getModelItem(Unknown Source)
at [email protected]/javafx.scene.control.MultipleSelectionModelBase$1.getModelItem(Unknown Source)
at [email protected]/com.sun.javafx.scene.control.SelectedItemsReadOnlyObservableList.get(Unknown Source)
... 145 more
Appendix
...
Log File
The text was updated successfully, but these errors were encountered: