Modify

Opened 7 weeks ago

Closed 8 days ago

#20188 closed defect (fixed)

NPE at FancySourceEntryTableCellRenderer.getTableCellRendererComponent

Reported by: JeroenHoek Owned by: team
Priority: normal Milestone: 21.01
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 (6)

comment:1 Changed 7 weeks ago by JeroenHoek

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 Changed 7 weeks ago by JeroenHoek

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 7 weeks ago by JeroenHoek (previous) (diff)

comment:3 Changed 7 weeks ago by JeroenHoek

Running this just works though:

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

comment:4 Changed 8 days ago by Don-vip

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

comment:5 Changed 8 days ago by Don-vip

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

comment:6 Changed 8 days ago by Don-vip

Resolution: fixed
Status: newclosed

In 17450/josm:

fix #20188 - NPE

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.

Add Comment


E-mail address and name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.