JabRef version
Latest development branch build (please note build date below)
Operating system
Windows
Details on version and operating system
JabRef 5.4--2021-11-25--7ec4c7e Windows 10 10.0 amd64 Java 16.0.2 JavaFX 17.0.1+1
Checked with the latest development build
Steps to reproduce the behaviour
I found a new reliable method that triggers an java.lang.IndexOutOfBoundsException
How to reproduce the behaviour:
- Open a library with some entries
- Enable or disable
Options>preferences>Import and Export>Remote services>Allow sending pdf files and raw citation strings to a Jabref online service (Grobid) to determine Metadata. This produces better results
- Save the change of preferences
- Delete a few entries from main table.
Error messages appear.
Workaround
Restarting Jabref before deleting an entry will make it so that no error messages appear.
Appendix
...
Log File 1
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 org.jabref@5.4.518/org.jabref.gui.maintable.MainTable.getSelectedEntries(Unknown Source)
at org.jabref@5.4.518/org.jabref.gui.LibraryTab.lambda$createMainTable$15(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.collections.ListListenerHelper$Generic.fireValueChangedEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.collections.ListListenerHelper.fireValueChangedEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ObservableListBase.fireChange(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ListChangeBuilder.commit(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ListChangeBuilder.endChange(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ObservableListBase.endChange(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.scene.control.SelectedItemsReadOnlyObservableList.lambda$new$0(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.collections.ListListenerHelper$Generic.fireValueChangedEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.collections.ListListenerHelper.fireValueChangedEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ObservableListBase.fireChange(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ListChangeBuilder.commit(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ListChangeBuilder.endChange(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ObservableListBase.endChange(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.scene.control.ReadOnlyUnbackedObservableList._endChange(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.scene.control.MultipleSelectionModelBase$SelectedIndicesList._endChange(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.scene.control.ControlUtils.updateSelectedIndices(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.scene.control.TableView$TableViewArrayListSelectionModel.fireCustomSelectedCellsListChangeEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.collections.ListListenerHelper$SingleChange.fireValueChangedEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.collections.ListListenerHelper.fireValueChangedEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ObservableListBase.fireChange(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ListChangeBuilder.commit(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ListChangeBuilder.endChange(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ObservableListBase.endChange(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.transformation.SortedList.sourceChanged(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.transformation.TransformationList.lambda$getListener$0(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.WeakListChangeListener.onChanged(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.collections.ListListenerHelper$SingleChange.fireValueChangedEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.collections.ListListenerHelper.fireValueChangedEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ObservableListBase.fireChange(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ListChangeBuilder.commit(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ListChangeBuilder.endChange(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ObservableListBase.endChange(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ModifiableObservableListBase.add(Unknown Source)
at java.base/java.util.AbstractList.add(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.scene.control.SelectedCellsMap.add(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.scene.control.TableView$TableViewArrayListSelectionModel.select(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.scene.control.TableView$TableViewArrayListSelectionModel.select(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.scene.control.MultipleSelectionModelBase.shiftSelection(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.scene.control.MultipleSelectionModelBase.shiftSelection(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.scene.control.TableView$TableViewArrayListSelectionModel.updateSelection(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.scene.control.TableView$TableViewArrayListSelectionModel.lambda$new$2(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.WeakListChangeListener.onChanged(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.collections.ListListenerHelper$Generic.fireValueChangedEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.collections.ListListenerHelper.fireValueChangedEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ObservableListBase.fireChange(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ListChangeBuilder.commit(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ListChangeBuilder.endChange(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ObservableListBase.endChange(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.transformation.SortedList.sourceChanged(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.transformation.TransformationList.lambda$getListener$0(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.WeakListChangeListener.onChanged(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.collections.ListListenerHelper$Generic.fireValueChangedEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.collections.ListListenerHelper.fireValueChangedEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ObservableListBase.fireChange(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ListChangeBuilder.commit(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ListChangeBuilder.endChange(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ObservableListBase.endChange(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.transformation.FilteredList.sourceChanged(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.transformation.TransformationList.lambda$getListener$0(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.WeakListChangeListener.onChanged(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.collections.ListListenerHelper$SingleChange.fireValueChangedEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.collections.ListListenerHelper.fireValueChangedEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ObservableListBase.fireChange(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ListChangeBuilder.commit(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ListChangeBuilder.endChange(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ObservableListBase.endChange(Unknown Source)
at com.tobiasdiez.easybind@2.2/com.tobiasdiez.easybind.MappedBackedList.sourceChanged(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.transformation.TransformationList.lambda$getListener$0(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.WeakListChangeListener.onChanged(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.collections.ListListenerHelper$SingleChange.fireValueChangedEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.collections.ListListenerHelper.fireValueChangedEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ObservableListBase.fireChange(Unknown Source)
at org.jabref@5.4.518/org.jabref.gui.util.UiThreadList.sourceChanged(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.transformation.TransformationList.lambda$getListener$0(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.WeakListChangeListener.onChanged(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.collections.ListListenerHelper$SingleChange.fireValueChangedEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.collections.ListListenerHelper.fireValueChangedEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ObservableListBase.fireChange(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.FXCollections$UnmodifiableObservableListImpl.lambda$new$0(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.WeakListChangeListener.onChanged(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.collections.ListListenerHelper$Generic.fireValueChangedEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.collections.ListListenerHelper.fireValueChangedEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.FXCollections$SynchronizedObservableList.lambda$new$0(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.WeakListChangeListener.onChanged(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.collections.ListListenerHelper$SingleChange.fireValueChangedEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.collections.ListListenerHelper.fireValueChangedEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ObservableListBase.fireChange(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ListChangeBuilder.commit(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ListChangeBuilder.endChange(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ObservableListBase.endChange(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ModifiableObservableListBase.remove(Unknown Source)
at java.base/java.util.AbstractList$Itr.remove(Unknown Source)
at java.base/java.util.Collection.removeIf(Unknown Source)
at org.jabref@5.4.518/org.jabref.model.database.BibDatabase.removeEntries(Unknown Source)
at org.jabref@5.4.518/org.jabref.model.database.BibDatabase.removeEntries(Unknown Source)
at org.jabref@5.4.518/org.jabref.gui.LibraryTab.delete(Unknown Source)
at org.jabref@5.4.518/org.jabref.gui.LibraryTab.delete(Unknown Source)
at org.jabref@5.4.518/org.jabref.gui.edit.EditAction.lambda$execute$0(Unknown Source)
at java.base/java.util.Optional.ifPresent(Unknown Source)
at org.jabref@5.4.518/org.jabref.gui.edit.EditAction.execute(Unknown Source)
at org.jabref@5.4.518/org.jabref.gui.maintable.MainTable.lambda$setupKeyBindings$11(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.event.CompositeEventHandler$NormalEventHandlerRecord.handleBubblingEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.event.CompositeEventHandler.dispatchBubblingEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.event.CompositeEventDispatcher.dispatchBubblingEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.event.EventUtil.fireEventImpl(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.event.EventUtil.fireEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.event.Event.fireEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.scene.Scene$KeyHandler.process(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.scene.Scene.processKeyEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.scene.Scene$ScenePeerListener.keyEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.tk.quantum.GlassViewEventHandler$KeyEventNotification.run(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.tk.quantum.GlassViewEventHandler$KeyEventNotification.run(Unknown Source)
at java.base/java.security.AccessController.doPrivileged(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.tk.quantum.GlassViewEventHandler.lambda$handleKeyEvent$1(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.tk.quantum.QuantumToolkit.runWithoutRenderLock(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.tk.quantum.GlassViewEventHandler.handleKeyEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.glass.ui.View.handleKeyEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.glass.ui.View.notifyKey(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at org.jabref.merged.module@5.4.518/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 org.jabref.merged.module@5.4.518/javafx.collections.transformation.SortedList.get(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.scene.control.TableView$TableViewSelectionModel.getModelItem(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.scene.control.MultipleSelectionModelBase$1.getModelItem(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.scene.control.SelectedItemsReadOnlyObservableList.get(Unknown Source)
... 149 more
...
Log File 2
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 org.jabref@5.4.518/org.jabref.gui.maintable.MainTable.getSelectedEntries(Unknown Source)
at org.jabref@5.4.518/org.jabref.gui.LibraryTab.lambda$createMainTable$14(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.collections.ListListenerHelper$Generic.fireValueChangedEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.collections.ListListenerHelper.fireValueChangedEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ObservableListBase.fireChange(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ListChangeBuilder.commit(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ListChangeBuilder.endChange(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ObservableListBase.endChange(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.scene.control.SelectedItemsReadOnlyObservableList.lambda$new$0(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.collections.ListListenerHelper$Generic.fireValueChangedEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.collections.ListListenerHelper.fireValueChangedEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ObservableListBase.fireChange(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ListChangeBuilder.commit(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ListChangeBuilder.endChange(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ObservableListBase.endChange(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.scene.control.ReadOnlyUnbackedObservableList._endChange(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.scene.control.MultipleSelectionModelBase$SelectedIndicesList._endChange(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.scene.control.ControlUtils.updateSelectedIndices(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.scene.control.TableView$TableViewArrayListSelectionModel.fireCustomSelectedCellsListChangeEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.collections.ListListenerHelper$SingleChange.fireValueChangedEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.collections.ListListenerHelper.fireValueChangedEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ObservableListBase.fireChange(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ListChangeBuilder.commit(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ListChangeBuilder.endChange(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ObservableListBase.endChange(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.transformation.SortedList.sourceChanged(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.transformation.TransformationList.lambda$getListener$0(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.WeakListChangeListener.onChanged(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.collections.ListListenerHelper$SingleChange.fireValueChangedEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.collections.ListListenerHelper.fireValueChangedEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ObservableListBase.fireChange(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ListChangeBuilder.commit(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ListChangeBuilder.endChange(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ObservableListBase.endChange(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ModifiableObservableListBase.add(Unknown Source)
at java.base/java.util.AbstractList.add(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.scene.control.SelectedCellsMap.add(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.scene.control.TableView$TableViewArrayListSelectionModel.select(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.scene.control.TableView$TableViewArrayListSelectionModel.select(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.scene.control.MultipleSelectionModelBase.shiftSelection(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.scene.control.MultipleSelectionModelBase.shiftSelection(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.scene.control.TableView$TableViewArrayListSelectionModel.updateSelection(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.scene.control.TableView$TableViewArrayListSelectionModel.lambda$new$2(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.WeakListChangeListener.onChanged(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.collections.ListListenerHelper$Generic.fireValueChangedEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.collections.ListListenerHelper.fireValueChangedEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ObservableListBase.fireChange(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ListChangeBuilder.commit(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ListChangeBuilder.endChange(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ObservableListBase.endChange(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.transformation.SortedList.sourceChanged(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.transformation.TransformationList.lambda$getListener$0(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.WeakListChangeListener.onChanged(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.collections.ListListenerHelper$Generic.fireValueChangedEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.collections.ListListenerHelper.fireValueChangedEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ObservableListBase.fireChange(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ListChangeBuilder.commit(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ListChangeBuilder.endChange(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ObservableListBase.endChange(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.transformation.FilteredList.sourceChanged(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.transformation.TransformationList.lambda$getListener$0(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.WeakListChangeListener.onChanged(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.collections.ListListenerHelper$SingleChange.fireValueChangedEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.collections.ListListenerHelper.fireValueChangedEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ObservableListBase.fireChange(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ListChangeBuilder.commit(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ListChangeBuilder.endChange(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ObservableListBase.endChange(Unknown Source)
at com.tobiasdiez.easybind@2.2/com.tobiasdiez.easybind.MappedBackedList.sourceChanged(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.transformation.TransformationList.lambda$getListener$0(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.WeakListChangeListener.onChanged(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.collections.ListListenerHelper$SingleChange.fireValueChangedEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.collections.ListListenerHelper.fireValueChangedEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ObservableListBase.fireChange(Unknown Source)
at org.jabref@5.4.518/org.jabref.gui.util.UiThreadList.sourceChanged(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.transformation.TransformationList.lambda$getListener$0(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.WeakListChangeListener.onChanged(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.collections.ListListenerHelper$SingleChange.fireValueChangedEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.collections.ListListenerHelper.fireValueChangedEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ObservableListBase.fireChange(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.FXCollections$UnmodifiableObservableListImpl.lambda$new$0(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.WeakListChangeListener.onChanged(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.collections.ListListenerHelper$Generic.fireValueChangedEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.collections.ListListenerHelper.fireValueChangedEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.FXCollections$SynchronizedObservableList.lambda$new$0(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.WeakListChangeListener.onChanged(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.collections.ListListenerHelper$SingleChange.fireValueChangedEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.collections.ListListenerHelper.fireValueChangedEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ObservableListBase.fireChange(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ListChangeBuilder.commit(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ListChangeBuilder.endChange(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ObservableListBase.endChange(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.collections.ModifiableObservableListBase.remove(Unknown Source)
at java.base/java.util.AbstractList$Itr.remove(Unknown Source)
at java.base/java.util.Collection.removeIf(Unknown Source)
at org.jabref@5.4.518/org.jabref.model.database.BibDatabase.removeEntries(Unknown Source)
at org.jabref@5.4.518/org.jabref.model.database.BibDatabase.removeEntries(Unknown Source)
at org.jabref@5.4.518/org.jabref.gui.LibraryTab.delete(Unknown Source)
at org.jabref@5.4.518/org.jabref.gui.LibraryTab.delete(Unknown Source)
at org.jabref@5.4.518/org.jabref.gui.edit.EditAction.lambda$execute$0(Unknown Source)
at java.base/java.util.Optional.ifPresent(Unknown Source)
at org.jabref@5.4.518/org.jabref.gui.edit.EditAction.execute(Unknown Source)
at org.jabref@5.4.518/org.jabref.gui.maintable.MainTable.lambda$setupKeyBindings$11(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.event.CompositeEventHandler$NormalEventHandlerRecord.handleBubblingEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.event.CompositeEventHandler.dispatchBubblingEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.event.CompositeEventDispatcher.dispatchBubblingEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.event.EventUtil.fireEventImpl(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.event.EventUtil.fireEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.event.Event.fireEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.scene.Scene$KeyHandler.process(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.scene.Scene.processKeyEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.scene.Scene$ScenePeerListener.keyEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.tk.quantum.GlassViewEventHandler$KeyEventNotification.run(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.tk.quantum.GlassViewEventHandler$KeyEventNotification.run(Unknown Source)
at java.base/java.security.AccessController.doPrivileged(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.tk.quantum.GlassViewEventHandler.lambda$handleKeyEvent$1(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.tk.quantum.QuantumToolkit.runWithoutRenderLock(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.tk.quantum.GlassViewEventHandler.handleKeyEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.glass.ui.View.handleKeyEvent(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.glass.ui.View.notifyKey(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at org.jabref.merged.module@5.4.518/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 org.jabref.merged.module@5.4.518/javafx.collections.transformation.SortedList.get(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.scene.control.TableView$TableViewSelectionModel.getModelItem(Unknown Source)
at org.jabref.merged.module@5.4.518/javafx.scene.control.MultipleSelectionModelBase$1.getModelItem(Unknown Source)
at org.jabref.merged.module@5.4.518/com.sun.javafx.scene.control.SelectedItemsReadOnlyObservableList.get(Unknown Source)
... 149 more
JabRef version
Latest development branch build (please note build date below)
Operating system
Windows
Details on version and operating system
JabRef 5.4--2021-11-25--7ec4c7e Windows 10 10.0 amd64 Java 16.0.2 JavaFX 17.0.1+1
Checked with the latest development build
Steps to reproduce the behaviour
I found a new reliable method that triggers an java.lang.IndexOutOfBoundsException
How to reproduce the behaviour:
Options>preferences>Import and Export>Remote services>Allow sending pdf files and raw citation strings to a Jabref online service (Grobid) to determine Metadata. This produces better resultsError messages appear.
Workaround
Restarting Jabref before deleting an entry will make it so that no error messages appear.
Appendix
...
Log File 1
...
Log File 2