[OAuth] aktueller Tipp für JOSM Benutzer

Es ist nett, dass ihr helfen wollt, aber es waren nicht einfach meine Edits doppelt. Es ging kunterbunt durcheinander, ohne dass ich eine Systematik entdecken konnte. Weil das alles hier eh zuviel Zeit kostet, hab ich dann beschlossen, das einfach nicht mehr zu machen und die Edits zu verkleinern. Kleinere Edits sind ja eh üblich.
Das Problem bei so einer Aktion ist, dass man keine Anleitung hat, und der Nase nach gehen muss, so wie hier mit OAuth2 auch. Wenistens eine stichpunktartige Hilfe mit den wichtigsten Fallstricken wäre wünschenwert. Ohne die kann ich auch keinen Bugrepoert schreiben. Inzwischen habe ich einen Verdacht woran es gelegen haben könnte. Man braucht einen Browser, in dem man mit dem OSM Account eingeloggt ist (dann aber wohl wieder mit User/Passwort ?), und dieser Browser muss im System als Standard eingestellt sein. Genau das ist bei meiner Distro nicht der Fall. Das weiss ich natürlich schon, aber ich vergess das auch gerne mal. Trotz diverser Defizite mag ich JOSM übrigens gerne. Inzwischen ist er auch das Hauptinstrument für meine Tourenplanung.

Ja, JOSM öffnet bei der OAuth-Einrichtung eine URL (https://www.openstreetmap.org/oauth2/authorize?...) über den Standard-Browser. Diese im Browser aufgerufene Internetseite erfordert ein Login ins OSM-Konto. Wenn man bei OSM im Browser nicht schon eingeloggt ist, dann wird (wie sonst auch) der OSM-Benutzername und das Passwort abgefragt. Eingeloggt sein muss man also nicht schon im Voraus.
Wenn der Browser von JOSM nicht geöffnet werden kann, dann funktioniert die OAuth-Einrichtung leider so nicht.

JOSM schickt tatsächlich eine URL ins System, der Standardbrowser (hier der Konquerer) reagiert darauf aber nicht. Warum und wieso konnte ich nicht herausfinden. Nachdem jetzt auch das Login mit User/Passwort entfernt wurde hab ich den OAuth2 Zugang auf einem anderen Rechner mit einer älteren JOSM Version angelegt. Das hat auch problemlos funktioniert. Meine Idee ist, das dort generierte Token manuell einzugeben. Darauf reagiert JOSM allerdings mit einer Exception. Ticket ist hier:
https://josm.openstreetmap.de/ticket/23717

Als Übergangslösung, bis das Problem behoben ist, könntest du auch einfach die entsprechende/n Zeile/n aus der preferences.xml kopieren (bitte vorher JOSM jeweils beenden, damit die Einstellungen nicht versehentlich wieder überschrieben werden). Die Zeile beginnt mit:
<tag key='oauth.access-token.object.OAuth20.api.openstreetmap.org' value=
Falls nicht vorhanden auch noch die Zeile, welche so beginnt:
<tag key='oauth.access-token.parameters.OAuth20.api.openstreetmap.org' value=

Hallo,

seit heute bekomme ich Probleme mit den angekündigten Änderungen bei der Authentifizierung. Der etwas ältere JOSM (14620) läuft zwar, aber Upload geht nicht mehr. Es kommt die Meldung:
Authentication is disabled: 2024 authentication update - OpenStreetMap Wiki

Bisher nutze ich die Basislegitimierung. Wenn ich auf “OAuth” umschalte und “Jetzt autorisieren” will, gibt es eine Fehlermeldung. Allerdings verstehe ich von OAuth und Tokens usw. praktisch nichts.
Liegt es an der JOSM-Version? Ein brandneuer JOSM würde wegen der geforderten Java-Version nicht laufen, beim Javaupdateversuch erhielt ich eine für mich momentan nicht lösbare Fehlermeldung.

Wie kann ich das jetzt wieder zu Laufen bringen? Welche ältere JOSM-Version würde ggf. noch laufen?

Danke für eure Tipps!
LG

Es wird OAuth 2.0 benötigt, dies geht erst ab Version 18650

JOSM Version 14620 als “etwas älter” zu bezeichnen brachte mich zum Schmunzeln.

Zum Thema: Leider hast Du vergessen uns etwas mehr Informationen zu geben. Zumindest Dein Betriebssystem wäre interessant, da es sehr unterschiedliche Möglichkeiten der Installation von JOSM gibt und einige davon vom Betriebssystem abhängen. Einen Überblick gibt Download – JOSM. Dort findest Du für Windows (.exe) und MacOS (.zip) auch Pakete welche eine passend Java Laufzeitumgebung enthalten.

Wie schon in dem von @Vinzenz_Mai verknüpten Faden festgestellt würde braucht es für OAuth2 zumindest JOSM Version 18650. Grundsätzlich ist es sinnvoll JOSM regelmäßig zu aktualisieren, da es ein “rolling release” System ist und keine Fehlerbehebung für ältere Versionen eingespielt werden.

Hab nun mit 18940 die laut Changelog letzte Version vor dem Java-11-Zwang probiert. Dort scheint momentan die Basislegitimierung noch zu funktionieren.
Java 11 kriege ich momentan nicht installiert - derzeit aktuelles Java 8 unter Windows 10. Also muss das erstmal so gehen.
Herzlichen Dank für eure Unterstützung.

LG
sundew

Hast Du mal versucht den Standardbrowser entweder im System oder in JOSM zu ändern? In JOSM sollte das die Angaben unter browser.unix in den erweiterten Einstellungen sein.

Ansonsten hast Du eventuell den Port gesperrt, was Taylor (@vorpalblade-kaart) ja schon in [OAuth] aktueller Tipp für JOSM Benutzer - #16 by vorpalblade-kaart erwähnt hat.

Ich habe keine Ahnung für was Du alles Java auf Deinem Rechner benötigst. Für JOSM jedenfalls braucht Java gar nicht installiert sein, wenn Du den Windows-Installer verwendest.

Danke. Aber wie du richtig annimmst, brauche ich außer für JOSM kein Java. Der JOSM-Windows-Installer wird sicher selbst für die Java-Installation sorgen - denn ohne Java läuft keine .jar-Datei. Allerdings verweisen die Links in OSM immer auf einen anderen Anbieter. Ich habe es zuvor nur mit dem zuvor verwendeten Oracle probiert. Gesperrte Ports? Keine Ahnung. Hab leider zwei linke Hände, was Installation/Konfiguration betrifft, und auch wenig Zeit, mich da reinzufuchsen … Der Berg an Material von immer noch nicht abgearbeiteten ganztägigen Mappingtouren wird immer höher.

Leider habe ich seit dem Update auf JOSM 18940 ein anderes Problem bekommen - ist hier zwar OT, aber durch das Update verursacht.
Ich kann jetzt nur noch ein Hintergrundbild (Carto, Bing, ESRI etc.) gleichzeitig laden, ab dem zweiten kommt in den Kacheln “Not enough memory to draw layer”. Sowas kannte ich bisher nur, wenn die Layer unterschiedliche Projektionen hatten (z.B. Mercartor ging nicht mit Gauß-Krüger zusammen, z.B. Bing nicht mit HH-LGV-DK5), aber dies trifft hier nicht zu. Es passiert auch, wenn ich zweimal das selbe Hintergrundbild öffne → es geht nur eins.
Wie kann ich das lösen?

Danke und LG

Dabei handelt es sich aber um ein (sozusagen in JOSM) integriertes Java, welches exklusiv nur für JOSM da ist und von keinem anderen Programm auf deinem Rechner verwendet wird. Es existiert parallel zu einem evtl. weiteren installierten Java und beeinflusst das sonstige System nicht.

Wenn du den JOSM-Windows-Installer verwendest, wird weder ein (zusätzliches) Java von einem anderen Anbieter, noch das von Oracle benötigt.

Probiere es mit dem JOSM-Windows-Installer, vielleicht ist dein altes Java noch 32-bit? Das würde das Problem evtl. erklären. Falls das Problem mit dem aktuellen JOSM-Windows-Installer nicht gelöst sein sollte, können wir weiter sehen. Mit veralteten Java- und JOSM-Versionen herumzuprobieren ist, aus meiner Sicht, keine so gute Idee. Der aktuelle JOSM-Windows-Installer ist für Windows eigentlich das Rundum-sorglos-Paket, welches alles selbst mitbringt, also auch ein passendes integriertes Java.

1 Like

Herzlichen Dank für die Antworten.
Ich habe das jetzt einmal ausprobiert. Das was der Windows-Installer installiert, ist ein kleiner Startloader namens JOSM.exe, der aus einem Verzeichnis eine geeignete Java-Runtime-Version startet und anschließend aus einem anderen Verzeichnis das eigentliche JOSM als josm-custom.jar .
Das funktioniert auf den ersten Blick prima. Die Verzeichnisstruktur ist auch relativ, sodass man alles auch anderswo hinzuschieben vermag.
Ich hoffe, dass man davon ausgehen kann, dass bei einem erneuten Updatelauf zu einem späteren Zeitpunkt auch die Java-Runtime-Version mit aktualisiert wird.

Danke nochmal und LG,
sundew

Die letzten 10 Jahre war das der Fall :smiley:

Danke für den Hinweis. Mir schien es aber besser, auf dem Alternativsystem zu arbeiten, bis das gefixt ist. Da treten aber jetzt neue Probleme auf: das Mapillary Plugin will Java 17 und JOSM will das aktualisieren. Das kann aber nur schiefgehen, weil es in den Repositories m.W. nur Java 11 gibt (Linux Mint 20). Ich konnte das Plugin durch ein älteres ersetzen, aber für die Zukunft sehe ich schwarz…

Ein laufender JOSM aktualisiert nur plugins. Der Dialog, der vor einer zu alten Java Version warnt, ist missverständlich. Der Knopf “ava aktualisieren” öffnet den Webbrowser mit einer Seite, auf der (hoffentlich) die passende JRE zum Download angeboten wird.

Ja, da wird man auf die Webseite von azul geleitet. Aber schon das nächste Problem: ImageIO Plugin verlangt Java 17. Das Mapillary jar konnte ich noch aus Github rausfieseln, das ImageIO.jar nicht. Gibt es davon noch irgendwo was älteres? Das hier tuts auch nicht:
https://web.archive.org/web/20240131060800/https://josm.openstreetmap.de/osmsvn/applications/editors/josm/dist/ImageIO.jar

Was hindert Dich denn daran, Java Version 17 zu installieren?

Das ist Mint 20 also Ubuntu 20.04. Dafür gibts nur noch Bugfixes und ein komplett Upgrade mach ich erstmal nicht. Das ist nur der Zweitrechner.

Also unter Windows kann ich einfach jede beliebige JRE installieren und dann den Pfad auf das darin enthaltene java.exe angeben. Ich habe zwar schon lange kein Linux mehr verwendet, aber früher ging das auch dort ganz ähnlich.
Schwierig wird es doch nur, wenn man das über den Paketmanager macht.