Modify

Opened 3 years ago

Closed 3 years ago

Last modified 3 years ago

#20188 closed defect (fixed)

NPE at FancySourceEntryTableCellRenderer.getTableCellRendererComponent

Reported by: JeroenHoek Owned by: team
Priority: normal Milestone: 21.02
Component: Core Version: latest
Keywords: template_report Cc:

Description (last modified by Don-vip)

What steps will reproduce the problem?

  1. Open the Tagging Presets settings page
  2. Click on any of the available presets

What is the expected result?

No NPE.

What happens instead?

NPE.

Please provide any additional information below. Attach a screenshot if possible.

URL:https://josm.openstreetmap.de/svn/trunk
Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2020-11-21 14:56:29 +0100 (Sat, 21 Nov 2020)
Build-Date:2020-11-22 02:30:52
Revision:17329
Relative:URL: ^/trunk

Identification: JOSM/1.5 (17329 en_GB) Linux Ubuntu 18.04.5 LTS
Memory Usage: 622 MB / 1820 MB (283 MB allocated, but free)
Java version: 1.8.0_275-8u275-b01-0ubuntu1~18.04-b01, Private Build, OpenJDK 64-Bit Server VM
Look and Feel: javax.swing.plaf.metal.MetalLookAndFeel
Screen: :0.0 2560x1440 (scaling 1.0x1.0)
Maximum Screen Size: 2560x1440
Best cursor sizes: 16x16 -> 16x16, 32x32 -> 32x32
Desktop environment: ubuntu:GNOME
Java package: openjdk-8-jre:amd64-8u275-b01-0ubuntu1~18.04
WebStart package: icedtea-netx:amd64-1.8-0ubuntu8~18.04
Java ATK Wrapper package: libatk-wrapper-java:all-0.33.3-20ubuntu0.1
Environment variable LANG: en_GB.UTF-8
libcommons-logging-java: libcommons-logging-java:-
fonts-noto: fonts-noto:-
VM arguments: [-Dicedtea-web.bin.name=javaws, -Dicedtea-web.bin.location=/usr/lib/icedtea-web/bin/javaws]
Dataset consistency test: No problems found

Plugins:
+ ImportImagePlugin (35567)
+ PicLayer (2a9aa7a)
+ apache-commons (35524)
+ ejml (35458)
+ geotools (35458)
+ gridify (1606242219)
+ jts (35458)
+ log4j (35458)
+ reverter (35640)
+ utilsplugin2 (35640)

Last errors/warnings:
- 00024.940 E: Handled by bug report queue: java.lang.NullPointerException
- 00090.687 E: Handled by bug report queue: java.lang.NullPointerException
- 00106.885 E: Handled by bug report queue: java.lang.NullPointerException
- 00120.328 E: Handled by bug report queue: java.lang.NullPointerException


=== REPORTED CRASH DATA ===
BugReportExceptionHandler#handleException:
No data collected.

Warning issued by: BugReportExceptionHandler#handleException

=== STACK TRACE ===
Thread: AWT-EventQueue-2 (25) of JOSM
java.lang.NullPointerException
	at org.openstreetmap.josm.gui.preferences.SourceEditor$FancySourceEntryTableCellRenderer.getTableCellRendererComponent(SourceEditor.java:1337)
	at javax.swing.JTable$AccessibleJTable.getAccessibleChild(JTable.java:7037)
	at javax.swing.JTable$AccessibleJTable.getAccessibleAt(JTable.java:7424)
	at javax.swing.JTable$AccessibleJTable.valueChanged(JTable.java:6939)
	at javax.swing.DefaultListSelectionModel.fireValueChanged(DefaultListSelectionModel.java:184)
	at javax.swing.DefaultListSelectionModel.fireValueChanged(DefaultListSelectionModel.java:164)
	at javax.swing.DefaultListSelectionModel.fireValueChanged(DefaultListSelectionModel.java:211)
	at javax.swing.DefaultListSelectionModel.changeSelection(DefaultListSelectionModel.java:405)
	at javax.swing.DefaultListSelectionModel.changeSelection(DefaultListSelectionModel.java:415)
	at javax.swing.DefaultListSelectionModel.setSelectionInterval(DefaultListSelectionModel.java:459)
	at javax.swing.JTable.changeSelectionModel(JTable.java:2392)
	at javax.swing.JTable.changeSelection(JTable.java:2461)
	at javax.swing.plaf.basic.BasicTableUI$Handler.adjustSelection(BasicTableUI.java:1115)
	at javax.swing.plaf.basic.BasicTableUI$Handler.mousePressed(BasicTableUI.java:1038)
	at java.awt.AWTEventMulticaster.mousePressed(AWTEventMulticaster.java:280)
	at java.awt.AWTEventMulticaster.mousePressed(AWTEventMulticaster.java:279)
	at java.awt.Component.processMouseEvent(Component.java:6536)
	at javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
	at java.awt.Component.processEvent(Component.java:6304)
	at java.awt.Container.processEvent(Container.java:2239)
	at java.awt.Component.dispatchEventImpl(Component.java:4889)
	at java.awt.Container.dispatchEventImpl(Container.java:2297)
	at java.awt.Component.dispatchEvent(Component.java:4711)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4904)
	at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4532)
	at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4476)
	at java.awt.Container.dispatchEventImpl(Container.java:2283)
	at java.awt.Window.dispatchEventImpl(Window.java:2746)
	at java.awt.Component.dispatchEvent(Component.java:4711)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:760)
	at java.awt.EventQueue.access$500(EventQueue.java:97)
	at java.awt.EventQueue$3.run(EventQueue.java:709)
	at java.awt.EventQueue$3.run(EventQueue.java:703)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:84)
	at java.awt.EventQueue$4.run(EventQueue.java:733)
	at java.awt.EventQueue$4.run(EventQueue.java:731)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:730)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:109)
	at java.awt.WaitDispatchSupport$2.run(WaitDispatchSupport.java:190)
	at java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:235)
	at java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:233)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.awt.WaitDispatchSupport.enter(WaitDispatchSupport.java:233)
	at java.awt.Dialog.show(Dialog.java:1084)
	at java.awt.Component.show(Component.java:1671)
	at java.awt.Component.setVisible(Component.java:1623)
	at java.awt.Window.setVisible(Window.java:1014)
	at java.awt.Dialog.setVisible(Dialog.java:1005)
	at org.openstreetmap.josm.gui.preferences.PreferenceDialog.setVisible(PreferenceDialog.java:145)
	at org.openstreetmap.josm.actions.PreferencesAction.run(PreferencesAction.java:119)
	at org.openstreetmap.josm.actions.PreferencesAction.actionPerformed(PreferencesAction.java:104)
	at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
	at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
	at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
	at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
	at javax.swing.AbstractButton.doClick(AbstractButton.java:376)
	at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:842)
	at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:886)
	at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:289)
	at java.awt.Component.processMouseEvent(Component.java:6539)
	at javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
	at java.awt.Component.processEvent(Component.java:6304)
	at java.awt.Container.processEvent(Container.java:2239)
	at java.awt.Component.dispatchEventImpl(Component.java:4889)
	at java.awt.Container.dispatchEventImpl(Container.java:2297)
	at java.awt.Component.dispatchEvent(Component.java:4711)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4904)
	at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4535)
	at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4476)
	at java.awt.Container.dispatchEventImpl(Container.java:2283)
	at java.awt.Window.dispatchEventImpl(Window.java:2746)
	at java.awt.Component.dispatchEvent(Component.java:4711)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:760)
	at java.awt.EventQueue.access$500(EventQueue.java:97)
	at java.awt.EventQueue$3.run(EventQueue.java:709)
	at java.awt.EventQueue$3.run(EventQueue.java:703)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:84)
	at java.awt.EventQueue$4.run(EventQueue.java:733)
	at java.awt.EventQueue$4.run(EventQueue.java:731)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:730)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

Attachments (0)

Change History (7)

comment:1 by JeroenHoek, 3 years ago

I'm not seeing this with current SVN build and the josm-latest.jar download run directly with JDK 8 java -jar. It looks like an issue with the jnlp distribution method.

comment:2 by JeroenHoek, 3 years ago

Running javaws from JDK 8 with the downloaded jnlp file works as well.

It seems to fail specifically with this command, which is run automatically on Ubuntu when the jnlp on the website is clicked:

/usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java \
  -Xmx2048m \
  -splash:/usr/share/icedtea-web/javaws_splash.png \
  -Xbootclasspath/a:/usr/share/icedtea-web/javaws.jar:/usr/share/java/js.jar:/usr/share/java/tagsoup.jar:/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/ext/nashorn.jar: \
  -classpath /usr/lib/jvm/java-8-openjdk-amd64/jre/lib/rt.jar:/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/ext/jfxrt.jar: \
  -Dicedtea-web.bin.name=javaws \
  -Dicedtea-web.bin.location=/usr/lib/icedtea-web/bin/javaws net.sourceforge.jnlp.runtime.Boot \
  -Xnofork \
  https://josm.openstreetmap.de/download/josm.jnlp
Last edited 3 years ago by JeroenHoek (previous) (diff)

comment:3 by JeroenHoek, 3 years ago

Running this just works though:

/usr/lib/icedtea-web/bin/javaws https://josm.openstreetmap.de/download/josm.jnlp

comment:4 by Don-vip, 3 years ago

Ticket #20357 has been marked as a duplicate of this ticket.

comment:5 by Don-vip, 3 years ago

Description: modified (diff)
Milestone: 21.01
Summary: NPE clicking on any available preset in the tagging presets menuNPE at FancySourceEntryTableCellRenderer.getTableCellRendererComponent

comment:6 by Don-vip, 3 years ago

Resolution: fixed
Status: newclosed

In 17450/josm:

fix #20188 - NPE

comment:7 by stoecker, 3 years ago

Milestone: 21.0121.02

Milestone renamed

Modify Ticket

Change Properties
Set your email in Preferences
Action
as closed The owner will remain team.
as The resolution will be set.
The resolution will be deleted. Next status will be 'reopened'.

Add Comment


E-mail address and name can be saved in the Preferences .
 
Note: See TracTickets for help on using tickets.