#21515 closed defect (fixed)
NoSuchMethodError: 'void org.openstreetmap.josm.gui.widgets.HistoryComboBox.setPossibleItems(java.util.Collection)'
Reported by: | skyper | Owned by: | Upliner |
---|---|---|---|
Priority: | blocker | Milestone: | |
Component: | Plugin reverter | Version: | |
Keywords: | template_report combo box | Cc: |
Description (last modified by )
What steps will reproduce the problem?
- Try to use reverter (
Ctrl+Shift+T
)
What is the expected result?
The reverter dialog is displayed
What happens instead?
NoSuchMethodError
Please provide any additional information below. Attach a screenshot if possible.
Another plugin which needs an update. I thought we have a jenkins test for this if the core classes change.
Maybe removing the @deprecated code with this little timespane was a bit too fast.
Relative:URL: ^/trunk Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b Last:Changed Date: 2021-11-04 00:56:52 +0100 (Thu, 04 Nov 2021) Revision:18309 Build-Date:2021-11-04 02:31:03 URL:https://josm.openstreetmap.de/svn/trunk Identification: JOSM/1.5 (18309 en) Linux Debian GNU/Linux 11 (bullseye) Java version: 17-ea+19-Debian-1, Debian, OpenJDK 64-Bit Server VM Plugins: + reverter (35732) + utilsplugin2 (35842) Last errors/warnings: - 00689.419 E: Handled by bug report queue: java.lang.NoSuchMethodError: 'void org.openstreetmap.josm.gui.widgets.HistoryComboBox.setPossibleItems(java.util.Collection)' === REPORTED CRASH DATA === BugReportExceptionHandler#handleException: No data collected. Warning issued by: BugReportExceptionHandler#handleException === STACK TRACE === Thread: AWT-EventQueue-0 (21) of main java.lang.NoSuchMethodError: 'void org.openstreetmap.josm.gui.widgets.HistoryComboBox.setPossibleItems(java.util.Collection)' at reverter.ChangesetIdQuery.restoreChangesetsHistory(ChangesetIdQuery.java:164) at reverter.ChangesetIdQuery.<init>(ChangesetIdQuery.java:82) at reverter.RevertChangesetAction.actionPerformed(RevertChangesetAction.java:26) at java.desktop/javax.swing.SwingUtilities.notifyAction(SwingUtilities.java:1809) at java.desktop/javax.swing.JComponent.processKeyBinding(JComponent.java:2947) at java.desktop/javax.swing.KeyboardManager.fireBinding(KeyboardManager.java:311) at java.desktop/javax.swing.KeyboardManager.fireKeyboardAction(KeyboardManager.java:266) at java.desktop/javax.swing.JComponent.processKeyBindingsForAllComponents(JComponent.java:3040) at java.desktop/javax.swing.JComponent.processKeyBindings(JComponent.java:3032) at java.desktop/javax.swing.JComponent.processKeyEvent(JComponent.java:2909) at java.desktop/java.awt.Component.processEvent(Component.java:6396) at java.desktop/java.awt.Container.processEvent(Container.java:2267) at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:4995) at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2325) at java.desktop/java.awt.Component.dispatchEvent(Component.java:4827) at java.desktop/java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1950) at java.desktop/java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:878) at java.desktop/java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:1145) at java.desktop/java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:1015) at java.desktop/java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:843) at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:4876) at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2325) at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2775) at java.desktop/java.awt.Component.dispatchEvent(Component.java:4827) at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:772) at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721) at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715) at java.base/java.security.AccessController.doPrivileged(AccessController.java:391) at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85) at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:95) at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:745) at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:743) at java.base/java.security.AccessController.doPrivileged(AccessController.java:391) at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85) at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:742) at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203) at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124) at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113) at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109) at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
Attachments (0)
Change History (15)
comment:1 by , 3 years ago
follow-ups: 5 8 comment:2 by , 3 years ago
Yes, would have been better to adapt the plugins first:
I think HistoryComboBox.setPossibleItems()
occurs in
- DirectUpload
- FastDraw
- reverter
- utilsplugin2
- wikipedia
comment:3 by , 3 years ago
Description: | modified (diff) |
---|
follow-up: 9 comment:5 by , 3 years ago
Replying to GerdP:
Yes, would have been better to adapt the plugins first:
I thinkHistoryComboBox.setPossibleItems()
occurs in
- DirectUpload
- FastDraw
- reverter
- utilsplugin2
- wikipedia
I've got a test for GitLab CI that also looks for stuff like this. But in all plugins, not just plugins in JOSM svn. I only run it when I'm looking at changing method signatures though.
follow-up: 7 comment:6 by , 3 years ago
Problem is not to find the plugins which should be changed, but what to change. Now one has to look into svn history to find out what the code did.
follow-up: 10 comment:7 by , 3 years ago
Replying to GerdP:
Problem is not to find the plugins which should be changed, but what to change. Now one has to look into svn history to find out what the code did.
Fair enough. I just went through that with areaselector. It was easier there since the original author was instantiating the AutoCompletingComboBox
variables prior to calling setPossibleAcItems
.
EDIT: r18173
comment:8 by , 3 years ago
Replying to GerdP:
Yes, would have been better to adapt the plugins first:
Ah, sorry, I was pretty sure to have updated all plugins already. Seems I missed a few.
comment:9 by , 3 years ago
Replying to taylor.smock:
I've got a test for GitLab CI that also looks for stuff like this. But in all plugins, not just plugins in JOSM svn. I only run it when I'm looking at changing method signatures though.
I disabled integration for external plugins for two reasons:
- it massively improves test performance
- 99% of authors do not respond to issues we create. Many of them don't even merge our PRs, so it's not worth wasting our Jenkins time for them
follow-up: 11 comment:10 by , 3 years ago
Replying to taylor.smock:
Replying to GerdP:
Problem is not to find the plugins which should be changed, but what to change. Now one has to look into svn history to find out what the code did.
Fair enough. I just went through that with areaselector. It was easier there since the original author was instantiating the
AutoCompletingComboBox
variables prior to callingsetPossibleAcItems
.
EDIT: r18173
Reg. areaselector: Any idea why I get these messages when I do svn up?
Fetching external item into 'plugins\areaselector': Skipped 'plugins\areaselector\src' -- An obstructing working copy was found svn: warning: W200004: Could not convert '' into a number
comment:11 by , 3 years ago
Replying to GerdP:
Replying to taylor.smock:
Replying to GerdP:
Problem is not to find the plugins which should be changed, but what to change. Now one has to look into svn history to find out what the code did.
Fair enough. I just went through that with areaselector. It was easier there since the original author was instantiating the
AutoCompletingComboBox
variables prior to callingsetPossibleAcItems
.
EDIT: r18173
Reg. areaselector: Any idea why I get these messages when I do svn up?
Fetching external item into 'plugins\areaselector': Skipped 'plugins\areaselector\src' -- An obstructing working copy was found svn: warning: W200004: Could not convert '' into a number
I've been doing some stuff with areaselector
recently. Specifically, updating dependencies to work with newer versions of Java. Note: areaselector is one of the plugins in JOSM git, so it might be a git -> svn difference (I have a similar problem with svn -> git, with MicrosoftStreetside -- the gradlew.bat is constantly "different").
I'll see if I can reproduce.
Replying to skyper:
Ah, JOSM-Plugins and Java-EarlyAccess-JOSM-Plugins failed.