-
-
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
Right clicking a group and choosing "remove selected entries from this group" leads to error when {}Bibtex source is selected #8012
Comments
Very likely related to #7999 |
This is interesting, seems like the wrong list is updated:
|
Okay, I debugged a bit and I think the problem is that When the entry is removed from the group some FieldChangeEvent is fired.
|
I appreciate your effort. I would help you, but i have zero knowledge about Java. I am having fun posting bugs so far though xD |
Maybe JavaFX17 has this fixed? IndexOutOfBoundsException when sorting a TreeTableView: https://bugs.openjdk.java.net/browse/JDK-8256283 |
Actually no. Bug still persists in JabRef 5.4--2021-09-10--6c145fc BUT there seem to be quite a few JavaFX bugs out there in regards to tree-table-view selection issues, so there is a high chance it might be one of the other ones.
|
I am not familiar enough with coding to judge if it is a Java issue or actual Jabref code. |
I think this bug is more related to JabRef, coming from saving/replacing the old entry editor's source tab content with the new one.
|
Unfortunately can still be reproduced in JabRef 5.4--2021-11-07--d11ba36 ... Log File
|
Can still be reproduced even after the sidepane refactor. JabRef 5.4--2021-12-18--1c7da01 |
Hello, I'd like to have a try to solve this problem. Could you give me some suggestions? |
If you manage to solve this issue, I will be very happy! Not sure if this is the best issue for beginners, but if you think you will manage or your course (I assume you are a student) requires you to solve something similar, sure go ahead! As a general advice: check out https://github.com/JabRef/jabref/blob/main/CONTRIBUTING.md for a start. Also, https://devdocs.jabref.org/getting-into-the-code/guidelines-for-setting-up-a-local-workspace is also worth checking out. Feel free to ask if you have any questions here on GitHub or also at JabRef's Gitter chat. Try to open a (draft) pull request early on, so that people can see you are working on the issue and so that they can see the direction the pull request is heading towards. This way, you will likely receive valuable feedback. |
Still an issue. One of the underlying problems from debugging. Problem with deleting from Observable lists
|
…at object does not have
Short summary of issue: Status: Issue is not fixed.
|
New debugging info was mentioned in #8859, but a solution or a proposal how this could be dealt with has not yet been found. Quoting #8859 (comment) here for convencience:
Quoting #8859 (comment) here for convencience:
|
JabRef version
Latest development branch build
JabRef 5.4--2021-08-21--644e48d
Windows 10 10.0 amd64
Java 16.0.2
JavaFX 16+8
Operating system
Windows
Details on version and operating system
Windows 10 21H1
Checked with the latest development build
Steps to reproduce the behaviour
What happens
Additional notes
Appendix
error 1 after delete.txt
error 2 when clicking on another group.txt
Log File
``` Uncaught exception occured in Thread[JavaFX Application Thread,5,main]java.lang.UnsupportedOperationException
at java.base/java.util.Collections$UnmodifiableList.add(Unknown Source)
at [email protected]/javafx.collections.ListChangeBuilder.nextRemove(Unknown Source)
at [email protected]/javafx.collections.ObservableListBase.nextRemove(Unknown Source)
at [email protected]/javafx.collections.transformation.SortedList.removeFromMapping(Unknown Source)
at [email protected]/javafx.collections.transformation.SortedList.addRemove(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.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.FilteredList.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$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.tobiasdiez.easybind.MappedBackedList.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$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]/org.jabref.gui.util.UiThreadList.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$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.FXCollections$UnmodifiableObservableListImpl.lambda$new$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.FXCollections$SynchronizedObservableList.lambda$new$0(Unknown Source)
at [email protected]/javafx.collections.WeakListChangeListener.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.collections.ObservableListWrapper.access$200(Unknown Source)
at [email protected]/com.sun.javafx.collections.ObservableListWrapper$1$1.invalidated(Unknown Source)
at [email protected]/com.sun.javafx.collections.MapListenerHelper$Generic.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.model.entry.BibEntry.setField(Unknown Source)
at [email protected]/org.jabref.model.entry.BibEntry.setField(Unknown Source)
at [email protected]/org.jabref.gui.entryeditor.SourceTab.storeSource(Unknown Source)
at [email protected]/org.jabref.gui.entryeditor.SourceTab.bindToEntry(Unknown Source)
at [email protected]/org.jabref.gui.entryeditor.EntryEditorTab.notifyAboutFocus(Unknown Source)
at [email protected]/org.jabref.gui.entryeditor.EntryEditor.setEntry(Unknown Source)
at java.base/java.util.Optional.ifPresent(Unknown Source)
at [email protected]/org.jabref.gui.LibraryTab.lambda$createMainTable$15(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]/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.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$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.add(Unknown Source)
at java.base/java.util.AbstractList.add(Unknown Source)
at [email protected]/com.sun.javafx.scene.control.SelectedCellsMap.add(Unknown Source)
at [email protected]/javafx.scene.control.TableView$TableViewArrayListSelectionModel.select(Unknown Source)
at [email protected]/javafx.scene.control.TableView$TableViewArrayListSelectionModel.select(Unknown Source)
at [email protected]/javafx.scene.control.MultipleSelectionModelBase.shiftSelection(Unknown Source)
at [email protected]/javafx.scene.control.MultipleSelectionModelBase.shiftSelection(Unknown Source)
at [email protected]/javafx.scene.control.TableView$TableViewArrayListSelectionModel.updateSelection(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.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.FilteredList.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$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.tobiasdiez.easybind.MappedBackedList.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$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]/org.jabref.gui.util.UiThreadList.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$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.FXCollections$UnmodifiableObservableListImpl.lambda$new$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.FXCollections$SynchronizedObservableList.lambda$new$0(Unknown Source)
at [email protected]/javafx.collections.WeakListChangeListener.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.collections.ObservableListWrapper.access$200(Unknown Source)
at [email protected]/com.sun.javafx.collections.ObservableListWrapper$1$1.invalidated(Unknown Source)
at [email protected]/com.sun.javafx.collections.MapListenerHelper$Generic.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.model.entry.BibEntry.setField(Unknown Source)
at [email protected]/org.jabref.model.entry.BibEntry.setField(Unknown Source)
at [email protected]/org.jabref.model.groups.WordKeywordGroup.remove(Unknown Source)
at [email protected]/org.jabref.model.groups.GroupTreeNode.removeEntriesFromGroup(Unknown Source)
at [email protected]/org.jabref.gui.groups.GroupTreeViewModel.removeSelectedEntries(Unknown Source)
at [email protected]/org.jabref.gui.groups.GroupTreeView.lambda$createContextMenuForGroup$27(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.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.control.MenuItem.fire(Unknown Source)
at [email protected]/com.sun.javafx.scene.control.ContextMenuContent$MenuItemContainer.doSelect(Unknown Source)
at [email protected]/com.sun.javafx.scene.control.ContextMenuContent$MenuItemContainer.lambda$createChildren$12(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.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)
The text was updated successfully, but these errors were encountered: