CCE: Relation cannot be cast to Way (JoinAreasAction.collectMultipolygons)
What steps will reproduce the problem?
- merge two polygons without role in a multipolygon-relation
-
-
What is the expected result?
What happens instead?
URL:https://josm.openstreetmap.de/svn/trunk
Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2018-07-29 00:41:59 +0200 (Sun, 29 Jul 2018)
Build-Date:2018-07-29 01:32:17
Revision:14066
Relative:URL: ^/trunk
Identification: JOSM/1.5 (14066 de) Windows 7 64-Bit
OS Build number: Windows 7 Professional (7601)
Memory Usage: 805 MB / 3641 MB (45 MB allocated, but free)
Java version: 1.8.0_181-b13, Oracle Corporation, Java HotSpot(TM) 64-Bit Server VM
Screen: \Display0 1920x1080, \Display1 1920x1080
Maximum Screen Size: 1920x1080
Dataset consistency test: No problems found
Plugins:
+ FixAddresses (34389)
+ HouseNumberTaggingTool (34389)
+ Mapillary (v1.5.15)
+ OpeningHoursEditor (34389)
+ PicLayer (34389)
+ apache-commons (34389)
+ apache-http (34389)
+ continuosDownload (1530471163)
+ ejml (34389)
+ geotools (34125)
+ jts (34206)
+ log4j (34038)
+ measurement (34206)
+ opendata (34389)
+ public_transport (34265)
+ rasterfilters (34109)
+ reverter (34271)
+ tageditor (34109)
+ turnlanes-tagging (263)
+ turnrestrictions (34129)
+ undelete (34274)
+ utilsplugin2 (34389)
+ wikipedia (v1.0.2)
Tagging presets:
+ https://josm.openstreetmap.de/josmfile?page=Presets/Playground_Equipment&preset&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/Historical_Objects&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/NewTags&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/PublicTransportOneClick&zip=1
+ http://osm.michis-pla.net/presets/observatory.xml
+ https://josm.openstreetmap.de/josmfile?page=Presets/ParkingLanes&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/LaneAttributes&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/Crafts&zip=1
+ https://raw.githubusercontent.com/species/josm-preset-wheelchair/master/sidewalks_kerbs.xml
+ http://www.freietonne.de/ft_icons/josm/FreieTonne_rules_presets_zip.php
+ http://www.openrailwaymap.org/josm-presets/de.zip
+ https://raw.githubusercontent.com/yopaseopor/traffic_signs_preset_JOSM/master/DE.zip
+ https://josm.openstreetmap.de/josmfile?page=Presets/Healthcare&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/hiking_routes_with_trail_marking&zip=1
Map paint styles:
- https://josm.openstreetmap.de/josmfile?page=Styles/Surface-DataEntry&style&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/Coloured_buildings&style&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/ParkingLanes&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Styles/Lane_and_Road_Attributes&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/Cycleways&style&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/Osmc&style&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/Surface&style&zip=1
- https://github.com/bastik/mapcss-tools/raw/osm/mapnik2mapcss/osm-results/mapnik.zip
- C:\Daten\gis\OSM_Erfassung\SK_Test.mapcss
- https://josm.openstreetmap.de/josmfile?page=Styles/Maxspeed&zip=1
Validator rules:
+ https://josm.openstreetmap.de/josmfile?page=Rules/GermanySpecific&zip=1
Last errors/warnings:
- W: Already here java.net.UnknownHostException: api.openstreetmap.org
- E: java.net.UnknownHostException: api.openstreetmap.org
- W: org.openstreetmap.josm.io.OsmTransferException: Verbindung zum OSM-Server fehlgeschlagen. Bitte überprüfen Sie Ihre Internetverbindung.. Ursache: java.net.UnknownHostException: api.openstreetmap.org
- W: java.net.UnknownHostException: api.openstreetmap.org
- W: Already here java.net.UnknownHostException: api.openstreetmap.org
- E: java.net.UnknownHostException: api.openstreetmap.org
- W: org.openstreetmap.josm.io.OsmTransferException: Verbindung zum OSM-Server fehlgeschlagen. Bitte überprüfen Sie Ihre Internetverbindung.. Ursache: java.net.UnknownHostException: api.openstreetmap.org
- W: Ungespeicherte Änderungen - <html>Die Relation wurde geändert.<br><br>Wollen Sie die Änderungen speichern?</html>
- W: Ungespeicherte Änderungen - <html>Die Relation wurde geändert.<br><br>Wollen Sie die Änderungen speichern?</html>
- E: Handled by bug report queue: java.lang.ClassCastException: org.openstreetmap.josm.data.osm.Relation cannot be cast to org.openstreetmap.josm.data.osm.Way
=== REPORTED CRASH DATA ===
BugReportExceptionHandler#handleException:
No data collected.
Warning issued by: BugReportExceptionHandler#handleException
=== STACK TRACE ===
Thread: AWT-EventQueue-0 (19) of main
java.lang.ClassCastException: org.openstreetmap.josm.data.osm.Relation cannot be cast to org.openstreetmap.josm.data.osm.Way
at org.openstreetmap.josm.data.osm.RelationMember.getWay(RelationMember.java:61)
at org.openstreetmap.josm.actions.JoinAreasAction.collectMultipolygons(JoinAreasAction.java:1384)
at org.openstreetmap.josm.actions.JoinAreasAction.join(JoinAreasAction.java:522)
at org.openstreetmap.josm.actions.JoinAreasAction.actionPerformed(JoinAreasAction.java:477)
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)
Change History
(4)
Description: |
modified (diff)
|
Keywords: |
merge multipolygon relation added
|
Summary: |
merge two polygons without role in a multipolygon-relation → CCE: Relation cannot be cast to Way (JoinAreasAction.collectMultipolygons)
|
Resolution: |
→ fixed
|
Status: |
new → closed
|
The code in org.openstreetmap.josm.actions.JoinAreasAction.collectMultipolygons() seems to assume that a MP-rel can only contain way members with role inner or outer. This is true for correct MP-rels but should still be verified, e.g. with
I also wonder why it doesn't handle the case that a way member of a MP rel has an empty role. I see this quite often.