Modify

Opened 3 years ago

Closed 3 years ago

Last modified 3 years ago

#20653 closed defect (fixed)

IAE opening invalid geojson file

Reported by: rolandmwagner Owned by: Don-vip
Priority: normal Milestone: 21.03
Component: Core geojson Version:
Keywords: template_report Cc:

Description (last modified by Don-vip)

What steps will reproduce the problem?

  1. Loaded geojson file with an error in the encoding. In opposite of a linestring, a point does have only one set of [] brackets. When I created a new geojson, I made a mistake and had two sets of brackets. Therefore the file was incorrect and created the JOSM crash.

Incorrect file content:

{"type":"Feature","geometry":{"type":"Point","coordinates":[[15.038451,50.485779]]},"properties":null},

What is the expected result?

report that the file is not correct

What happens instead?

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

Relative:URL: ^/trunk
Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2021-03-17 18:58:40 +0100 (Wed, 17 Mar 2021)
Revision:17580
Build-Date:2021-03-17 17:59:56
URL:https://josm.openstreetmap.de/svn/trunk

Identification: JOSM/1.5 (17580 de) Windows 10 64-Bit
OS Build number: Windows 10 Home 2009 (19042)
Memory Usage: 464 MB / 4028 MB (56 MB allocated, but free)
Java version: 10.0.1+10, Oracle Corporation, Java HotSpot(TM) 64-Bit Server VM
Look and Feel: com.sun.java.swing.plaf.windows.WindowsLookAndFeel
Screen: \Display0 1920×1080 (scaling 1,50×1,50)
Maximum Screen Size: 1920×1080
Best cursor sizes: 16×16→48×48, 32×32→48×48
Dataset consistency test: No problems found

Plugins:
+ apache-commons (35524)
+ apache-http (35589)
+ apolloopendrive (34095)
+ buildings_tools (35669)
+ ejml (35458)
+ geotools (35458)
+ jaxb (35543)
+ jna (35662)
+ jts (35458)
+ measurement (35640)
+ opendata (35640)
+ utilsplugin2 (35691)

Tagging presets:
+ https://josm.openstreetmap.de/josmfile?page=Presets/OpenStationMap&zip=1
+ https://raw.githubusercontent.com/fzi-forschungszentrum-informatik/Lanelet2/master/lanelet2_maps/josm/laneletpresets.xml

Map paint styles:
- https://josm.openstreetmap.de/josmfile?page=Styles/Coloured_buildings&zip=1
- <josm.pref>\styles\sit.mapcss

Last errors/warnings:
- 13811,512 W: org.openstreetmap.josm.io.OsmTransferException: Verbindung zum OSM-Server fehlgeschlagen. Bitte überprüfen Sie Ihre Internetverbindung.. Ursache: java.net.UnknownHostException: api.openstreetmap.org
- 59643,574 W: java.net.UnknownHostException: api.openstreetmap.org
- 59643,574 W: Already here java.net.UnknownHostException: api.openstreetmap.org
- 59643,574 E: java.net.UnknownHostException: api.openstreetmap.org
- 59643,582 W: org.openstreetmap.josm.io.OsmTransferException: Verbindung zum OSM-Server fehlgeschlagen. Bitte überprüfen Sie Ihre Internetverbindung.. Ursache: java.net.UnknownHostException: api.openstreetmap.org
- 60010,505 W: java.net.NoRouteToHostException: No route to host: connect
- 60010,505 W: Already here java.net.UnknownHostException: api.openstreetmap.org
- 60010,505 E: java.net.NoRouteToHostException: No route to host: connect
- 60010,509 W: org.openstreetmap.josm.io.OsmTransferException: Verbindung zum OSM-Server fehlgeschlagen. Bitte überprüfen Sie Ihre Internetverbindung.. Ursache: java.net.NoRouteToHostException: No route to host: connect
- 65216,376 E: Handled by bug report queue: java.lang.IllegalArgumentException: [15.038451,50.485779]



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

Warning issued by: BugReportExceptionHandler#handleException

=== STACK TRACE ===
Thread: main-worker-0 (20) of main
java.lang.IllegalArgumentException: [15.038451,50.485779]
	at org.openstreetmap.josm.io.GeoJSONReader.parseCoordinate(GeoJSONReader.java:224)
	at org.openstreetmap.josm.io.GeoJSONReader.getLatLon(GeoJSONReader.java:214)
	at org.openstreetmap.josm.io.GeoJSONReader.parsePoint(GeoJSONReader.java:229)
	at org.openstreetmap.josm.io.GeoJSONReader.parseGeometry(GeoJSONReader.java:187)
	at org.openstreetmap.josm.io.GeoJSONReader.parseFeature(GeoJSONReader.java:147)
	at org.openstreetmap.josm.io.GeoJSONReader.parseFeatureCollection(GeoJSONReader.java:139)
	at org.openstreetmap.josm.io.GeoJSONReader.parseRoot(GeoJSONReader.java:90)
	at org.openstreetmap.josm.io.GeoJSONReader.parse(GeoJSONReader.java:77)
	at org.openstreetmap.josm.io.GeoJSONReader.doParseDataSet(GeoJSONReader.java:411)
	at org.openstreetmap.josm.io.GeoJSONReader.parseDataSet(GeoJSONReader.java:476)
	at org.openstreetmap.josm.gui.io.importexport.GeoJSONImporter.importData(GeoJSONImporter.java:51)
	at org.openstreetmap.josm.gui.io.importexport.FileImporter.importDataHandleExceptions(FileImporter.java:103)
	at org.openstreetmap.josm.actions.OpenFileAction$OpenFileTask.importData(OpenFileAction.java:417)
	at org.openstreetmap.josm.actions.OpenFileAction$OpenFileTask.realRun(OpenFileAction.java:366)
	at org.openstreetmap.josm.gui.PleaseWaitRunnable.doRealRun(PleaseWaitRunnable.java:94)
	at org.openstreetmap.josm.gui.PleaseWaitRunnable.run(PleaseWaitRunnable.java:142)
	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:514)
	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1135)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
	at java.base/java.lang.Thread.run(Thread.java:844)

Attachments (1)

data2-linestring.geojson (724.5 KB ) - added by rolandmwagner 3 years ago.
incorrect geojson file

Download all attachments as: .zip

Change History (9)

by rolandmwagner, 3 years ago

Attachment: data2-linestring.geojson added

incorrect geojson file

comment:1 by anonymous, 3 years ago

Priority: normaltrivial

comment:2 by skyper, 3 years ago

Component: CoreCore geojson
Priority: trivialnormal
Summary: Incorrect geojson file encodeding - maybe a issue with very low priorityIAE opening invalid geojson file

comment:3 by Don-vip, 3 years ago

Description: modified (diff)

comment:4 by Don-vip, 3 years ago

Milestone: 21.03
Owner: changed from team to Don-vip
Status: newassigned

comment:5 by Don-vip, 3 years ago

Resolution: fixed
Status: assignedclosed

In 17646/josm:

fix #20653 - catch IllegalArgumentException when parsing geojson

comment:6 by simon04, 3 years ago

One unit test broke: https://josm.openstreetmap.de/jenkins/job/JOSM/jdk=JDK8/7225/testReport/junit/org.openstreetmap.josm.io/GeoJSONReaderTest/testInvalidFeatureCollection__/

org.opentest4j.AssertionFailedError: Unexpected exception type thrown ==> expected: <java.lang.IllegalArgumentException> but was: <org.openstreetmap.josm.io.IllegalDataException>
	at org.openstreetmap.josm.io.GeoJSONReaderTest.testInvalidFeatureCollection(GeoJSONReaderTest.java:226)
Caused by: org.openstreetmap.josm.io.IllegalDataException: java.lang.IllegalArgumentException: features must be ARRAY, but is OBJECT
	at org.openstreetmap.josm.io.GeoJSONReader.doParseDataSet(GeoJSONReader.java:416)
	at org.openstreetmap.josm.io.GeoJSONReaderTest.lambda$testInvalidFeatureCollection$15(GeoJSONReaderTest.java:227)
	... 1 more
Caused by: java.lang.IllegalArgumentException: features must be ARRAY, but is OBJECT
	at org.openstreetmap.josm.tools.CheckParameterUtil.ensureThat(CheckParameterUtil.java:49)
	at org.openstreetmap.josm.io.GeoJSONReader.parseRoot(GeoJSONReader.java:89)
	at org.openstreetmap.josm.io.GeoJSONReader.parse(GeoJSONReader.java:77)
	at org.openstreetmap.josm.io.GeoJSONReader.doParseDataSet(GeoJSONReader.java:411)
	... 2 more

comment:7 by Don-vip, 3 years ago

In 17661/josm:

see #20653 - update unit test

comment:8 by Don-vip, 3 years ago

Thanks. I'm scratching my head on #18737 and didn't notice.

Modify Ticket

Change Properties
Set your email in Preferences
Action
as closed The owner will remain Don-vip.
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.