Modify

Opened 2 months ago

Closed 2 months ago

#23888 closed defect (fixed)

Bing Attribution failing to load causing repetitive error message

Reported by: InsertUser Owned by: InsertUser
Priority: normal Milestone: 24.09
Component: Core Version:
Keywords: template_report Cc:

Description

What steps will reproduce the problem?

  1. Open JOSM
  2. Add a Bing imagery layer

What is the expected result?

JOSM shows Bing Aerial Imagery.

What happens instead?

Observe many errors on screen "Error: Attribution is not loaded yet"

Attribution in the bottom left of the window shows the Bing logo and the link to the Background Terms of use, but the text in the bottom right says "Error loading Bing attribution data".

I have attempted to clear imagery cache and restart JOSM, but this doesn't help.

Additional information below

Revision:19160
Build-Date:2024-08-01 15:31:59

Identification: JOSM/1.5 (19160 en_GB) Windows 11 64-Bit
OS Build number: Windows 10 Home 23H2 (22631)
Memory Usage: 910 MB / 1966 MB (296 MB allocated, but free)
Java version: 21.0.4+7-LTS, Azul Systems, Inc., OpenJDK 64-Bit Server VM
Look and Feel: com.sun.java.swing.plaf.windows.WindowsLookAndFeel



Last errors/warnings:
- 00972.108 W: java.io.IOException: Attribution is not loaded yet
- 00972.108 W: java.io.IOException: Attribution is not loaded yet
- 00972.109 W: java.io.IOException: Attribution is not loaded yet
- 00972.109 W: java.io.IOException: Attribution is not loaded yet
- 00972.110 W: java.io.IOException: Attribution is not loaded yet
- 00972.110 W: java.io.IOException: Attribution is not loaded yet
- 00972.111 W: java.io.IOException: Attribution is not loaded yet
- 00972.111 W: java.io.IOException: Attribution is not loaded yet
- 00972.112 W: java.io.IOException: Attribution is not loaded yet
- 00972.112 W: java.io.IOException: Attribution is not loaded yet

When I tried again with the "Debug" shortcut provided by the Windows installer I get this in the terminal when I click the Bing shortcut in the toolbar:

2024-08-29 19:18:10.406 INFO: Selected Streetside image changed from ?none? to ?none?.
2024-08-29 19:18:10.934 INFO: Registered toolbar action actions/q overwritten: org.openstreetmap.josm.plugins.damn.actions.SetWhichMapperAction gets org.openstreetmap.josm.plugins.damn.actions.SetWhichMapperAction
2024-08-29 19:18:10.936 INFO: Registered toolbar action actions/map overwritten: org.openstreetmap.josm.plugins.damn.actions.SetMapAction gets org.openstreetmap.josm.plugins.damn.actions.SetMapAction
2024-08-29 19:18:10.936 INFO: Registered toolbar action actions/map overwritten: org.openstreetmap.josm.plugins.damn.actions.SetMapAction gets org.openstreetmap.josm.plugins.damn.actions.SetMapAction
2024-08-29 19:18:10.937 INFO: Registered toolbar action actions/map overwritten: org.openstreetmap.josm.plugins.damn.actions.SetMapAction gets org.openstreetmap.josm.plugins.damn.actions.SetMapAction
2024-08-29 19:18:10.937 INFO: Registered toolbar action actions/map overwritten: org.openstreetmap.josm.plugins.damn.actions.SetMapAction gets org.openstreetmap.josm.plugins.damn.actions.SetMapAction
2024-08-29 19:18:10.938 INFO: Registered toolbar action actions/review overwritten: org.openstreetmap.josm.plugins.damn.actions.SetReviewAction gets org.openstreetmap.josm.plugins.damn.actions.SetReviewAction
2024-08-29 19:18:10.938 INFO: Registered toolbar action actions/review overwritten: org.openstreetmap.josm.plugins.damn.actions.SetReviewAction gets org.openstreetmap.josm.plugins.damn.actions.SetReviewAction
2024-08-29 19:18:10.938 INFO: Registered toolbar action actions/review overwritten: org.openstreetmap.josm.plugins.damn.actions.SetReviewAction gets org.openstreetmap.josm.plugins.damn.actions.SetReviewAction
2024-08-29 19:18:10.938 INFO: Registered toolbar action actions/review overwritten: org.openstreetmap.josm.plugins.damn.actions.SetReviewAction gets org.openstreetmap.josm.plugins.damn.actions.SetReviewAction
2024-08-29 19:18:10.939 INFO: Registered toolbar action actions/review overwritten: org.openstreetmap.josm.plugins.damn.actions.SetReviewAction gets org.openstreetmap.josm.plugins.damn.actions.SetReviewAction
2024-08-29 19:18:11.057 INFO: AbstractTileSourceLayer: estimated visible tiles: 54, estimated cache size: 466
2024-08-29 19:18:11.114 INFO: AbstractTileSourceLayer: estimated visible tiles: 54, estimated cache size: 466
2024-08-29 19:18:11.114 INFO: AbstractTileSourceLayer: estimated visible tiles: 54, estimated cache size: 466
2024-08-29 19:18:11.115 INFO: Allocate for tile source layer: 116 MB of memory. Available: 1?916 MB.
2024-08-29 19:18:11.118 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.128 SEVERE: Could not parse Bing aerials attribution metadata.
java.lang.NumberFormatException: For input string: ""
        at java.base/java.lang.NumberFormatException.forInputString(Unknown Source)
        at java.base/java.lang.Integer.parseInt(Unknown Source)
        at java.base/java.lang.Integer.parseInt(Unknown Source)
        at org.openstreetmap.gui.jmapviewer.tilesources.BingAerialTileSource.parseAttributionText(BingAerialTileSource.java:155)
        at org.openstreetmap.josm.data.imagery.CachedAttributionBingAerialTileSource.access$200(CachedAttributionBingAerialTileSource.java:35)
        at org.openstreetmap.josm.data.imagery.CachedAttributionBingAerialTileSource$AttributionTimerTask.run(CachedAttributionBingAerialTileSource.java:142)
        at java.base/java.util.TimerThread.mainLoop(Unknown Source)
        at java.base/java.util.TimerThread.run(Unknown Source)

2024-08-29 19:18:11.128 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.129 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.130 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.131 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.131 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.133 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.133 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.134 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.134 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.134 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.135 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.135 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.136 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.136 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.137 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.137 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.137 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.138 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.138 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.139 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.139 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.140 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.140 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.141 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.141 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.142 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.142 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.142 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.143 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.144 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.145 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.145 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.145 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.146 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.146 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.146 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.147 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.147 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.147 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.148 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.148 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.148 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.149 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.150 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.150 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.150 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.151 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.151 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.151 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.151 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.151 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.152 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.152 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.153 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.153 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.155 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.155 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.156 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.156 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.157 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.157 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.158 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.158 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.159 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.160 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.160 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.161 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.162 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.162 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.163 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.164 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.164 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.165 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.167 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.167 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.167 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.255 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.256 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.256 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.257 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.258 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.258 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.258 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.259 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.261 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.261 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.262 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.264 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.265 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.265 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.266 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.266 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.267 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.267 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.267 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.268 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.269 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.269 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.269 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.270 WARNING: java.io.IOException: Attribution is not loaded yet
2024-08-29 19:18:11.270 WARNING: java.io.IOException: Attribution is not loaded yet

Attachments (0)

Change History (7)

comment:1 by InsertUser, 2 months ago

For what it's worth, I am able to load this imagery in the iD editor in Firefox on the same system.

comment:2 by taylor.smock, 2 months ago

Owner: changed from team to InsertUser
Status: newneedinfo

iD cheats, in that they have hardcoded the tile image URLs. We call various API points to get the data.

What happens if you delete the Bing layer and reload it?

comment:3 by taylor.smock, 2 months ago

In 36329/osm:

See #23888: Catch a NumberFormatException

I'm uncertain as to what is actually returned by the server, but we do want to
retry fetching the metadata for Bing.

comment:4 by taylor.smock, 2 months ago

Milestone: 24.09

All I need to do is bump the JMapViewer dependency version, which can happen next month.

in reply to:  2 comment:5 by InsertUser, 2 months ago

Replying to taylor.smock:

iD cheats, in that they have hardcoded the tile image URLs. We call various API points to get the data.

What happens if you delete the Bing layer and reload it?

The same thing was happening. The terminal output might actually be after doing that as I wasn't initially sure where the 'generic JOSM startup' stuff stopped and the 'loading a fresh imagery layer' stuff began. The first time I loaded JOSM in debug mode I definitely didn't wait long enough and the layer load stuff was mixed in with the tail end of MapWithAI checking a staggering number of URLs one by one.

It appears that for some reason my current JOSM session appears to be able to load it. Maybe it was some weird network issue? If so why was it able to get the logo?

comment:6 by taylor.smock, 2 months ago

Maybe it was some weird network issue?

Probably.

If so why was it able to get the logo?

Depends upon the logo. It might be using the one included with JOSM.

The code for the attributions also figures out what the endpoint we are supposed to use is.

comment:7 by taylor.smock, 2 months ago

Resolution: fixed
Status: needinfoclosed

In 19208/josm:

Dependency updates:

ivy.xml:

  • jmapviewer: 2.21 -> 2.22: Fix a NumberFormatException (fix #23888)
  • commons-compress: 1.27.0 -> 1.27.1
  • tag2link: 2024.8.12 -> 2024.8.21
  • commons-lang3: 3.16.0 -> 3.17.0
  • classgraph: 4.8.174 -> 4.8.175
  • junit: 5.10.3 -> 5.11.0: Repeatable @..Source annotations for parameterized tests
  • equalsverifier: 3.16.1 -> 3.16.2

tools/ivy.xml:

  • checkstyle: 10.17 -> 10.18: Better support for Java 21
  • pmd: 7.4.0 -> 7.5.0
  • errorprone: 2.30.0 -> 2.31.0: Note: this is the last planned release that supports running on Java 11.

Modify Ticket

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