Modify

Opened 6 years ago

Closed 6 years ago

#18491 closed defect (needinfo)

NPE at MapWithAIDataUtils.getAddedObjectsSource

Reported by: sowmya.neena90@… Owned by: sowmya.neena90@…
Priority: normal Milestone:
Component: Plugin mapwithai Version:
Keywords: template_report Cc:

Description

What steps will reproduce the problem?

  1. After Adding the roads from mapwithai layer to our layer
  2. while uploading the data to OSM
  3. If we click on source from "Obtain from current layers" then this bug pop ups

What is the expected result?

It should get the Imagery and mapwithai as source

What happens instead?

It throws a bug

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: 2019-12-01 23:10:15 +0100 (Sun, 01 Dec 2019)
Build-Date:2019-12-02 02:30:57
Revision:15553
Relative:URL: ^/trunk

Identification: JOSM/1.5 (15553 en) Windows 8.1 64-Bit
OS Build number: Windows 8.1 Pro (9600)
Memory Usage: 514 MB / 989 MB (201 MB allocated, but free)
Java version: 1.8.0_181-b13, Oracle Corporation, Java HotSpot(TM) Client VM
Screen: \Display0 1920x1080, \Display1 1920x1080
Maximum Screen Size: 1920x1080
Dataset consistency test: No problems found

Plugins:
+ BuildingGeneralization (23)
+ FastDraw (34977)
+ Mapillary (1.5.20)
+ apache-commons (35092)
+ apache-http (34908)
+ buildings_tools (35171)
+ conflation (0.6.4)
+ ejml (35122)
+ geochat (35163)
+ geotools (35169)
+ gridify (1556174547)
+ jaxb (35014)
+ jna (34908)
+ jts (35122)
+ mapwithai (0.2.4)
+ measurement (35221)
+ opendata (35179)
+ reverter (35226)
+ todo (30306)
+ utilsplugin2 (35238)

Tagging presets:
+ %UserProfile%\Documents\JOSM\FB\FB_presets.xml
+ %UserProfile%\Documents\JOSM\FB_RMSI_Highway_Preset.xml

Map paint styles:
- %UserProfile%\Documents\JOSM\FB_style.mapcss
- %UserProfile%\Documents\JOSM\VLDEdits.mapcss
- R:\OSM Project\Mis\Documents\1. Client Training Material\JOSM set up\JOSM set up\FB_style.mapcss
+ R:\OSM Project\Mis\1 AI Project Documents\Documents\1. Client Training Material\JOSM set up\JOSM set up\MYS_josm_files\FB_style.mapcss
- https://josm.openstreetmap.de/josmfile?page=Styles/MapWithAI&zip=1
- R:\OSM Project\Mis\1 AI Project Documents\Documents\1. Client Training Material\JOSM set up\JOSM set up\MYS_josm_files\rainbow_roads.mapcss

Validator rules:
+ R:\OSM Project\Mis\Documents\1. Client Training Material\JOSM set up\JOSM set up\MYS JOSM_files\FB_rules5.11.validator.mapcss

Last errors/warnings:
- E: Current id: -4,609,993,754,932,953,794 (wants -972,615,059,776,034)
- E: Current id: -4,609,993,754,932,953,796 (wants -585,582,592,001,862)
- E: Current id: -4,609,993,754,932,953,798 (wants -704,147,009,994,877)
- E: Current id: -4,609,993,754,932,953,800 (wants -429,189,808,003,346)
- E: Current id: -4,609,993,754,932,953,802 (wants -2,331,660,063,766,070)
- E: Current id: -4,609,993,754,932,953,804 (wants -2,973,905,832,637,118)
- E: Current id: -4,609,993,754,932,953,806 (wants -2,376,912,469,222,278)
- E: Current id: -4,609,993,754,932,953,808 (wants -576,110,183,155,533)
- E: Current id: -4,609,993,754,932,953,809 (wants -839,278,143,181,777)
- E: Handled by bug report queue: java.lang.NullPointerException. Cause: java.lang.NullPointerException. Cause: java.lang.NullPointerException


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

Warning issued by: BugReportExceptionHandler#handleException

=== STACK TRACE ===
Thread: AWT-EventQueue-0 (15) of main
java.lang.NullPointerException
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
	at java.lang.reflect.Constructor.newInstance(Unknown Source)
	at java.util.concurrent.ForkJoinTask.getThrowableException(Unknown Source)
	at java.util.concurrent.ForkJoinTask.reportException(Unknown Source)
	at java.util.concurrent.ForkJoinTask.invoke(Unknown Source)
	at java.util.stream.ReduceOps$ReduceOp.evaluateParallel(Unknown Source)
	at java.util.stream.DistinctOps$1.reduce(Unknown Source)
	at java.util.stream.DistinctOps$1.opEvaluateParallelLazy(Unknown Source)
	at java.util.stream.AbstractPipeline.sourceSpliterator(Unknown Source)
	at java.util.stream.AbstractPipeline.evaluate(Unknown Source)
	at java.util.stream.ReferencePipeline.collect(Unknown Source)
	at org.openstreetmap.josm.plugins.mapwithai.backend.MapWithAIDataUtils.getAddedObjectsSource(MapWithAIDataUtils.java:449)
	at org.openstreetmap.josm.plugins.mapwithai.backend.MapWithAILayer.getChangesetSourceTag(MapWithAILayer.java:60)
	at org.openstreetmap.josm.gui.MapView.lambda$getLayerInformationForSourceTag$2(MapView.java:819)
	at java.util.stream.ReferencePipeline$2$1.accept(Unknown Source)
	at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(Unknown Source)
	at java.util.stream.AbstractPipeline.copyInto(Unknown Source)
	at java.util.stream.AbstractPipeline.wrapAndCopyInto(Unknown Source)
	at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(Unknown Source)
	at java.util.stream.AbstractPipeline.evaluate(Unknown Source)
	at java.util.stream.ReferencePipeline.collect(Unknown Source)
	at org.openstreetmap.josm.gui.MapView.getLayerInformationForSourceTag(MapView.java:820)
	at org.openstreetmap.josm.gui.io.BasicUploadSettingsPanel.lambda$buildUploadCommentPanel$0(BasicUploadSettingsPanel.java:88)
	at javax.swing.JEditorPane.fireHyperlinkUpdate(Unknown Source)
	at javax.swing.text.html.HTMLEditorKit$LinkController.activateLink(Unknown Source)
	at javax.swing.text.html.HTMLEditorKit$LinkController.mouseClicked(Unknown Source)
	at java.awt.AWTEventMulticaster.mouseClicked(Unknown Source)
	at java.awt.Component.processMouseEvent(Unknown Source)
	at javax.swing.JComponent.processMouseEvent(Unknown Source)
	at java.awt.Component.processEvent(Unknown Source)
	at java.awt.Container.processEvent(Unknown Source)
	at java.awt.Component.dispatchEventImpl(Unknown Source)
	at java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.awt.Component.dispatchEvent(Unknown Source)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
	at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
	at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
	at java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.awt.Window.dispatchEventImpl(Unknown Source)
	at java.awt.Component.dispatchEvent(Unknown Source)
	at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
	at java.awt.EventQueue.access$500(Unknown Source)
	at java.awt.EventQueue$3.run(Unknown Source)
	at java.awt.EventQueue$3.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.awt.EventQueue$4.run(Unknown Source)
	at java.awt.EventQueue$4.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.awt.EventQueue.dispatchEvent(Unknown Source)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
	at java.awt.WaitDispatchSupport$2.run(Unknown Source)
	at java.awt.WaitDispatchSupport$4.run(Unknown Source)
	at java.awt.WaitDispatchSupport$4.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.awt.WaitDispatchSupport.enter(Unknown Source)
	at java.awt.Dialog.show(Unknown Source)
	at java.awt.Component.show(Unknown Source)
	at java.awt.Component.setVisible(Unknown Source)
	at java.awt.Window.setVisible(Unknown Source)
	at java.awt.Dialog.setVisible(Unknown Source)
	at org.openstreetmap.josm.gui.io.UploadDialog.setVisible(UploadDialog.java:415)
	at org.openstreetmap.josm.actions.UploadAction.uploadData(UploadAction.java:246)
	at org.openstreetmap.josm.actions.UploadAction.actionPerformed(UploadAction.java:294)
	at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
	at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
	at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
	at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
	at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
	at java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
	at java.awt.Component.processMouseEvent(Unknown Source)
	at javax.swing.JComponent.processMouseEvent(Unknown Source)
	at java.awt.Component.processEvent(Unknown Source)
	at java.awt.Container.processEvent(Unknown Source)
	at java.awt.Component.dispatchEventImpl(Unknown Source)
	at java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.awt.Component.dispatchEvent(Unknown Source)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
	at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
	at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
	at java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.awt.Window.dispatchEventImpl(Unknown Source)
	at java.awt.Component.dispatchEvent(Unknown Source)
	at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
	at java.awt.EventQueue.access$500(Unknown Source)
	at java.awt.EventQueue$3.run(Unknown Source)
	at java.awt.EventQueue$3.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.awt.EventQueue$4.run(Unknown Source)
	at java.awt.EventQueue$4.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.awt.EventQueue.dispatchEvent(Unknown Source)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.run(Unknown Source)
Caused by: java.lang.NullPointerException
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
	at java.lang.reflect.Constructor.newInstance(Unknown Source)
	at java.util.concurrent.ForkJoinTask.getThrowableException(Unknown Source)
	at java.util.concurrent.ForkJoinTask.reportException(Unknown Source)
	at java.util.concurrent.ForkJoinTask.invoke(Unknown Source)
	at java.util.stream.Nodes.collect(Unknown Source)
	at java.util.stream.ReferencePipeline.evaluateToNode(Unknown Source)
	at java.util.stream.AbstractPipeline.evaluate(Unknown Source)
	at java.util.stream.SortedOps$OfRef.opEvaluateParallel(Unknown Source)
	at java.util.stream.AbstractPipeline.opEvaluateParallelLazy(Unknown Source)
	at java.util.stream.AbstractPipeline.sourceSpliterator(Unknown Source)
	at java.util.stream.AbstractPipeline.evaluate(Unknown Source)
	at java.util.stream.ReferencePipeline.collect(Unknown Source)
	at org.openstreetmap.josm.plugins.mapwithai.commands.MapWithAIAddCommand.getSourceTags(MapWithAIAddCommand.java:165)
	at org.openstreetmap.josm.plugins.mapwithai.backend.MapWithAIDataUtils.lambda$getAddedObjectsSource$20(MapWithAIDataUtils.java:449)
	at java.util.stream.ReferencePipeline$7$1.accept(Unknown Source)
	at java.util.stream.ReferencePipeline$3$1.accept(Unknown Source)
	at java.util.stream.ReferencePipeline$2$1.accept(Unknown Source)
	at java.util.Spliterators$ArraySpliterator.forEachRemaining(Unknown Source)
	at java.util.stream.AbstractPipeline.copyInto(Unknown Source)
	at java.util.stream.AbstractPipeline.wrapAndCopyInto(Unknown Source)
	at java.util.stream.ReduceOps$ReduceTask.doLeaf(Unknown Source)
	at java.util.stream.ReduceOps$ReduceTask.doLeaf(Unknown Source)
	at java.util.stream.AbstractTask.compute(Unknown Source)
	at java.util.concurrent.CountedCompleter.exec(Unknown Source)
	at java.util.concurrent.ForkJoinTask.doExec(Unknown Source)
	at java.util.concurrent.ForkJoinPool$WorkQueue.execLocalTasks(Unknown Source)
	at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(Unknown Source)
	at java.util.concurrent.ForkJoinPool.runWorker(Unknown Source)
	at java.util.concurrent.ForkJoinWorkerThread.run(Unknown Source)
Caused by: java.lang.NullPointerException
	at org.openstreetmap.josm.plugins.mapwithai.commands.MapWithAIAddCommand.lambda$getSourceTags$5(MapWithAIAddCommand.java:164)
	at java.util.stream.ReferencePipeline$2$1.accept(Unknown Source)
	at java.util.HashMap$EntrySpliterator.forEachRemaining(Unknown Source)
	at java.util.stream.AbstractPipeline.copyInto(Unknown Source)
	at java.util.stream.AbstractPipeline.wrapAndCopyInto(Unknown Source)
	at java.util.stream.StreamSpliterators$WrappingSpliterator.forEachRemaining(Unknown Source)
	at java.util.stream.StreamSpliterators$DistinctSpliterator.forEachRemaining(Unknown Source)
	at java.util.stream.AbstractPipeline.copyInto(Unknown Source)
	at java.util.stream.AbstractPipeline.wrapAndCopyInto(Unknown Source)
	at java.util.stream.Nodes$CollectorTask.doLeaf(Unknown Source)
	at java.util.stream.Nodes$CollectorTask.doLeaf(Unknown Source)
	at java.util.stream.AbstractTask.compute(Unknown Source)
	at java.util.concurrent.CountedCompleter.exec(Unknown Source)
	at java.util.concurrent.ForkJoinTask.doExec(Unknown Source)
	... 3 more

Attachments (1)

Mapwithai.JPG (116.5 KB ) - added by sowmya.neena90@… 6 years ago.
MapwithAi bug

Download all attachments as: .zip

Change History (9)

by sowmya.neena90@…, 6 years ago

Attachment: Mapwithai.JPG added

MapwithAi bug

comment:1 by stoecker, 6 years ago

Component: CorePlugin mapwithai
Owner: changed from team to taylor.smock

comment:2 by Klumbumbus, 6 years ago

Milestone: Longterm

comment:3 by Klumbumbus, 6 years ago

Version: tested

comment:4 by Don-vip, 6 years ago

Priority: majornormal
Summary: Bug in the MapwithAI pluginNPE at MapWithAIDataUtils.getAddedObjectsSource

comment:5 by taylor.smock, 6 years ago

Owner: changed from taylor.smock to sowmya.neena90@…
Status: newneedinfo

Can you please update the MapWithAI plugin (you are using v0.2.4, and the current version is either v0.2.7 or v0.3.5, depending upon which version of JOSM you are using -- you should be using v0.3.5 with JOSM 15553, if you update).

I probably fixed this in v0.3.2. I'll go ahead and backport it to the v0.2.x series for older versions of JOSM.

That being said, I cannot reproduce with v0.2.4 with JOSM 15553, but when I fixed it I think I noted that I fixed a possible NPE.

Can you update your plugins and see if it still occurs?

in reply to:  5 ; comment:6 by Don-vip, 6 years ago

Replying to taylor.smock:

I'll go ahead and backport it to the v0.2.x series for older versions of JOSM.

Don't waste too much effort in maintaining compatibility for older versions. The vast majority of users keep their JOSM up to date.

in reply to:  6 comment:7 by taylor.smock, 6 years ago

Replying to Don-vip:

Don't waste too much effort in maintaining compatibility for older versions. The vast majority of users keep their JOSM up to date.

I'm trying to keep compatibility for the last 3 versions, just because I know that some people/distributions don't update JOSM regularly, and if there is a game-breaking bug, its easier to fix that way. I broke that with my v0.3.x series (r15542, which means that I'm currently only supporting the current version, which is why I'm also back porting simple fixes to the 0.2.x series).

My reasoning:
I ran some statistics on the current 'latest' weekly changeset (191223) file (using editor-stats + a custom script) and 45.6% were using JOSM 15553+, 71.4% were using JOSM 15492+, 78.3% were using JOSM 15390, and 86.4% were using JOSM 15238+. This has probably changed a bit in the past week, but it gives me a general idea of what people are using.

If I were to only fix my v0.3.x series, ~47% of the people with access to the plugin will have issues (the minimum version originally supported was r15233). I'd prefer it if they updated JOSM though.

In this case, it was a fairly simple git cherry-pick operation.

comment:8 by Don-vip, 6 years ago

Resolution: needinfo
Status: needinfoclosed

Modify Ticket

Change Properties
Set your email in Preferences
Action
as closed The owner will remain sowmya.neena90@….
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.