#15851 closed defect (othersoftware)
InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty (Ubuntu 18.04)
Reported by: | jukey | Owned by: | jukey |
---|---|---|---|
Priority: | critical | Milestone: | |
Component: | Core | Version: | tested |
Keywords: | debian ubuntu ssl tls security jks keystore java9 | Cc: | jukey |
Description
I am using Ubuntu 17.10 and just installed JOSM using the command: apt-get install josm
When I am starting the application it initializes but once that is done it throws the error message you can see below. If I close the erroro dialog I can only do things that work locally in JOSM. I cannot even download OSM data or background images. Also downloading plugins does not work. I updated the application using the repository provided by JOSM ( https://josm.openstreetmap.de/wiki/Download#Ubuntu ) but the behavior did not change.
I find this an important bug as the problem happens on a common ubuntu installationusing the commen JOSM package so a lot of people might be affected.
Relative:URL: ^/trunk Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b Last:Changed Date: 2018-01-28 23:08:56 +0100 (Sun, 28 Jan 2018) Revision:13367 Build-Date:2018-01-28 22:25:44 URL:http://josm.openstreetmap.de/svn/trunk Identification: JOSM/1.5 (13367 de) Linux Ubuntu 17.10 Memory Usage: 276 MB / 1918 MB (70 MB allocated, but free) Java version: 9-Ubuntu+0-9b181-4, Oracle Corporation, OpenJDK 64-Bit Server VM Screen: :0.0 1920x1080 Maximum Screen Size: 1920x1080 Java package: openjdk-9-jre:amd64-9~b181-4 Java ATK Wrapper package: libatk-wrapper-java:all-0.33.3-13 VM arguments: [-Djosm.restart=true, -Djava.net.useSystemProxies=true] Last errors/warnings: - W: Already here java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty - W: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty - W: javax.net.ssl.SSLException: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty. Ursache: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty. Ursache: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty - E: javax.net.ssl.SSLException: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty. Ursache: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty. Ursache: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty - W: javax.net.ssl.SSLException: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty. Ursache: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty. Ursache: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty - W: Already here java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty - W: Already here java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty - E: org.openstreetmap.josm.io.OsmApiInitializationException: org.openstreetmap.josm.io.OsmTransferException: javax.net.ssl.SSLException: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty. Ursache: org.openstreetmap.josm.io.OsmTransferException: javax.net.ssl.SSLException: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty. Ursache: javax.net.ssl.SSLException: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty. Ursache: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty. Ursache: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty - W: No configuration settings found. Using hardcoded default values for all pools. - W: Region [TMS_BLOCK_v2] Resetting cache download.overpass.servers=[http://overpass.osm.rambler.ru/cgi/, https://overpass-api.de/api/] gui.geometry=x=460,y=170,width=1000,height=740 imagery.layers.default=[] imagery.offsetbookmarks=[] josm.version=12545 laf=javax.swing.plaf.metal.MetalLookAndFeel mappaint.renderer-class-name=org.openstreetmap.josm.data.osm.visitor.paint.StyledMapRenderer mappaint.style.known-defaults=[resource://styles/standard/elemstyles.mapcss, resource://styles/standard/potlatch2.mapcss] org.openstreetmap.josm.gui.download.DownloadDialog.geometry=x=460,y=240,width=1000,height=600 org.openstreetmap.josm.gui.preferences.PreferenceDialog.geometry=x=610,y=185,width=700,height=710 pluginmanager.version=12545 proxy.policy=use-system-settings
Attachments (1)
Change History (45)
by , 7 years ago
Attachment: | Bildschirmfoto vom 2018-01-30 08-23-44.png added |
---|
comment:1 by , 7 years ago
Cc: | added |
---|
comment:2 by , 7 years ago
Keywords: | ssl tls security added |
---|
comment:3 by , 7 years ago
Summary: | Freshly installed JOSM does not connect to internet ressources → InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty |
---|
comment:4 by , 7 years ago
Owner: | changed from | to
---|---|
Status: | new → needinfo |
Does the bug only occur with java 9? Can you please try with java 8?
comment:5 by , 7 years ago
Resolution: | → needinfo |
---|---|
Status: | needinfo → closed |
comment:6 by , 7 years ago
The bug accours with the depoendencies installed. Any hint how to change the Java version?
comment:7 by , 7 years ago
Resolution: | needinfo |
---|---|
Status: | closed → reopened |
comment:9 by , 7 years ago
I installed Java 8 and 9 by entering:
sudo apt-get install openjdk-8-jdk openjdk-8-jre openjdk-9-jre openjdk-9-jdk Reading package lists... Done Building dependency tree Reading state information... Done openjdk-9-jdk is already the newest version (9~b181-4). openjdk-9-jre is already the newest version (9~b181-4). openjdk-8-jdk is already the newest version (8u151-b12-0ubuntu0.17.10.2). openjdk-8-jre is already the newest version (8u151-b12-0ubuntu0.17.10.2). 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
This is my attempt to list and set Java 8:
~$ sudo update-java-alternatives -l java-1.8.0-openjdk-amd64 1081 /usr/lib/jvm/java-1.8.0-openjdk-amd64 java-1.9.0-openjdk-amd64 1091 /usr/lib/jvm/java-1.9.0-openjdk-amd64 ~$ sudo update-java-alternatives -s java-1.8.0-openjdk-amd64 update-alternatives: error: no alternatives for mozilla-javaplugin.so update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-8-openjdk-amd64/jre/lib/amd64/IcedTeaPlugin.so ~$ java --version Unrecognized option: --version Error: Could not create the Java Virtual Machine. Error: A fatal exception has occurred. Program will exit.
Setting Java to version 9 looks like this:
~$ sudo update-java-alternatives -s java-1.9.0-openjdk-amd64 update-alternatives: error: no alternatives for mozilla-javaplugin.so update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-9-openjdk-amd64/lib/IcedTeaPlugin.so ~$ java --version openjdk 9-Ubuntu OpenJDK Runtime Environment (build 9-Ubuntu+0-9b181-4) OpenJDK 64-Bit Server VM (build 9-Ubuntu+0-9b181-4, mixed mode)
Regardless of the version I chose the initially reported behavior when starting JOSM does not change.
Could this be an OpenJDK issue and I should try the Oracle version instead? Do you have any other suggestion?
comment:10 by , 7 years ago
I get the same error with Ubuntu 18.04 (release candidate) with java 9. JOSM starts, but I can't load any tiles or connect to anything.
I have yet to try with java 8 (ill give it a try at first opportunity), but it would be nice if JOSM worked from apt as it is
This happens on JOSM versions 13576, 13646 and 13601.
➜ ~ java --version openjdk 9.0.4 OpenJDK Runtime Environment (build 9.0.4+12-Ubuntu-4ubuntu2) OpenJDK 64-Bit Server VM (build 9.0.4+12-Ubuntu-4ubuntu2, mixed mode)
I logged the output of JOSM starting to a file:
[13:48:20] /home/fredrik % josm Using /usr/lib/jvm/java-9-openjdk-amd64/bin/java to execute josm-latest. 2018-04-12 13:48:22.911 INFO: Log level is at INFO (INFO, 800) 2018-04-12 13:48:26.589 INFO: GET https://josm.openstreetmap.de/wiki/En_GB:StartupPage -> !!! 2018-04-12 13:48:26.595 WARNING: javax.net.ssl.SSLException: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty. Cause: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty. Cause: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty javax.net.ssl.SSLException: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty at java.base/sun.security.ssl.Alerts.getSSLException(Alerts.java:214) at java.base/sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1969) at java.base/sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1921) at java.base/sun.security.ssl.SSLSocketImpl.handleException(SSLSocketImpl.java:1904) at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1436) at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1413) at java.base/sun.net.www.protocol.https.HttpsClient.afterConnect(HttpsClient.java:567) at java.base/sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:185) at java.base/sun.net.www.protocol.https.HttpsURLConnectionImpl.connect(HttpsURLConnectionImpl.java:163) at org.openstreetmap.josm.tools.HttpClient.connect(HttpClient.java:141) at org.openstreetmap.josm.tools.HttpClient.connect(HttpClient.java:87) at org.openstreetmap.josm.tools.WikiReader.readLang(WikiReader.java:101) at org.openstreetmap.josm.tools.WikiReader.readLang(WikiReader.java:76) at org.openstreetmap.josm.gui.GettingStarted$MotdContent.updateData(GettingStarted.java:96) at org.openstreetmap.josm.io.CacheCustomContent.updateForce(CacheCustomContent.java:141) at org.openstreetmap.josm.io.CacheCustomContent.updateForceString(CacheCustomContent.java:153) at org.openstreetmap.josm.io.CacheCustomContent.updateIfRequiredString(CacheCustomContent.java:131) at org.openstreetmap.josm.gui.GettingStarted.lambda$getMOTD$1(GettingStarted.java:151) at java.base/java.lang.Thread.run(Thread.java:844) Caused by: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty at java.base/sun.security.validator.PKIXValidator.<init>(PKIXValidator.java:89) at java.base/sun.security.validator.Validator.getInstance(Validator.java:181) at java.base/sun.security.ssl.X509TrustManagerImpl.getValidator(X509TrustManagerImpl.java:330) at java.base/sun.security.ssl.X509TrustManagerImpl.checkTrustedInit(X509TrustManagerImpl.java:180) at java.base/sun.security.ssl.X509TrustManagerImpl.checkTrusted(X509TrustManagerImpl.java:192) at java.base/sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustManagerImpl.java:133) at java.base/sun.security.ssl.ClientHandshaker.checkServerCerts(ClientHandshaker.java:1947) at java.base/sun.security.ssl.ClientHandshaker.certificateStatus(ClientHandshaker.java:1798) at java.base/sun.security.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:276) at java.base/sun.security.ssl.Handshaker.processLoop(Handshaker.java:1092) at java.base/sun.security.ssl.Handshaker.processRecord(Handshaker.java:1026) at java.base/sun.security.ssl.SSLSocketImpl.processInputRecord(SSLSocketImpl.java:1137) at java.base/sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:1074) at java.base/sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:973) at java.base/sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1402) at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1429) ... 14 more Caused by: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty at java.base/java.security.cert.PKIXParameters.setTrustAnchors(PKIXParameters.java:200) at java.base/java.security.cert.PKIXParameters.<init>(PKIXParameters.java:120) at java.base/java.security.cert.PKIXBuilderParameters.<init>(PKIXBuilderParameters.java:104) at java.base/sun.security.validator.PKIXValidator.<init>(PKIXValidator.java:86) ... 29 more 2018-04-12 13:48:26.597 WARNING: Failed to read MOTD. Exception was: javax.net.ssl.SSLException: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty: javax.net.ssl.SSLException: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty. Cause: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty. Cause: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty 2018-04-12 13:48:27.501 INFO: GET https://api.openstreetmap.org/api/capabilities -> !!! 2018-04-12 13:48:27.502 WARNING: javax.net.ssl.SSLException: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty. Cause: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty. Cause: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty javax.net.ssl.SSLException: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty at java.base/sun.security.ssl.Alerts.getSSLException(Alerts.java:214) at java.base/sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1969) at java.base/sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1921) at java.base/sun.security.ssl.SSLSocketImpl.handleException(SSLSocketImpl.java:1904) at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1436) at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1413) at java.base/sun.net.www.protocol.https.HttpsClient.afterConnect(HttpsClient.java:567) at java.base/sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:185) at java.base/sun.net.www.protocol.https.HttpsURLConnectionImpl.connect(HttpsURLConnectionImpl.java:163) at org.openstreetmap.josm.tools.HttpClient.connect(HttpClient.java:141) at org.openstreetmap.josm.tools.HttpClient.connect(HttpClient.java:87) at org.openstreetmap.josm.io.OsmApi.sendRequest(OsmApi.java:691) at org.openstreetmap.josm.io.OsmApi$CapabilitiesCache.updateData(OsmApi.java:218) at org.openstreetmap.josm.io.CacheCustomContent.updateForce(CacheCustomContent.java:141) at org.openstreetmap.josm.io.CacheCustomContent.updateForceString(CacheCustomContent.java:153) at org.openstreetmap.josm.io.CacheCustomContent.updateIfRequiredString(CacheCustomContent.java:131) at org.openstreetmap.josm.io.OsmApi.initialize(OsmApi.java:248) at org.openstreetmap.josm.gui.MainApplication.lambda$parallelInitializationTasks$6(MainApplication.java:422) at org.openstreetmap.josm.Main$InitializationTask.call(Main.java:253) at org.openstreetmap.josm.Main$InitializationTask.call(Main.java:232) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641) at java.base/java.lang.Thread.run(Thread.java:844) Caused by: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty at java.base/sun.security.validator.PKIXValidator.<init>(PKIXValidator.java:89) at java.base/sun.security.validator.Validator.getInstance(Validator.java:181) at java.base/sun.security.ssl.X509TrustManagerImpl.getValidator(X509TrustManagerImpl.java:330) at java.base/sun.security.ssl.X509TrustManagerImpl.checkTrustedInit(X509TrustManagerImpl.java:180) at java.base/sun.security.ssl.X509TrustManagerImpl.checkTrusted(X509TrustManagerImpl.java:192) at java.base/sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustManagerImpl.java:133) at java.base/sun.security.ssl.ClientHandshaker.checkServerCerts(ClientHandshaker.java:1947) at java.base/sun.security.ssl.ClientHandshaker.certificateStatus(ClientHandshaker.java:1798) at java.base/sun.security.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:276) at java.base/sun.security.ssl.Handshaker.processLoop(Handshaker.java:1092) at java.base/sun.security.ssl.Handshaker.processRecord(Handshaker.java:1026) at java.base/sun.security.ssl.SSLSocketImpl.processInputRecord(SSLSocketImpl.java:1137) at java.base/sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:1074) at java.base/sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:973) at java.base/sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1402) at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1429) ... 19 more Caused by: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty at java.base/java.security.cert.PKIXParameters.setTrustAnchors(PKIXParameters.java:200) at java.base/java.security.cert.PKIXParameters.<init>(PKIXParameters.java:120) at java.base/java.security.cert.PKIXBuilderParameters.<init>(PKIXBuilderParameters.java:104) at java.base/sun.security.validator.PKIXValidator.<init>(PKIXValidator.java:86) ... 34 more 2018-04-12 13:48:27.505 WARNING: Already here java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty 2018-04-12 13:48:27.506 WARNING: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty 2018-04-12 13:48:27.707 INFO: GET https://josm.openstreetmap.de/maps -> !!! 2018-04-12 13:48:27.708 WARNING: javax.net.ssl.SSLException: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty. Cause: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty. Cause: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty javax.net.ssl.SSLException: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty at java.base/sun.security.ssl.Alerts.getSSLException(Alerts.java:214) at java.base/sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1969) at java.base/sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1921) at java.base/sun.security.ssl.SSLSocketImpl.handleException(SSLSocketImpl.java:1904) at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1436) at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1413) at java.base/sun.net.www.protocol.https.HttpsClient.afterConnect(HttpsClient.java:567) at java.base/sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:185) at java.base/sun.net.www.protocol.https.HttpsURLConnectionImpl.connect(HttpsURLConnectionImpl.java:163) at org.openstreetmap.josm.tools.HttpClient.connect(HttpClient.java:141) at org.openstreetmap.josm.tools.HttpClient.connect(HttpClient.java:87) at org.openstreetmap.josm.io.CachedFile.checkLocal(CachedFile.java:504) at org.openstreetmap.josm.io.CachedFile.getFile(CachedFile.java:284) at org.openstreetmap.josm.io.CachedFile.getInputStream(CachedFile.java:219) at org.openstreetmap.josm.io.CachedFile.getContentReader(CachedFile.java:262) at org.openstreetmap.josm.io.imagery.ImageryReader.parse(ImageryReader.java:92) at org.openstreetmap.josm.data.imagery.ImageryLayerInfo$DefaultEntryLoader.loadSource(ImageryLayerInfo.java:175) at org.openstreetmap.josm.data.imagery.ImageryLayerInfo$DefaultEntryLoader.realRun(ImageryLayerInfo.java:157) at org.openstreetmap.josm.data.imagery.ImageryLayerInfo.loadDefaults(ImageryLayerInfo.java:120) at org.openstreetmap.josm.data.imagery.ImageryLayerInfo.load(ImageryLayerInfo.java:102) at org.openstreetmap.josm.gui.preferences.imagery.ImageryPreference.initialize(ImageryPreference.java:960) at org.openstreetmap.josm.Main$InitializationTask.call(Main.java:253) at org.openstreetmap.josm.Main$InitializationTask.call(Main.java:232) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641) at java.base/java.lang.Thread.run(Thread.java:844) Caused by: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty at java.base/sun.security.validator.PKIXValidator.<init>(PKIXValidator.java:89) at java.base/sun.security.validator.Validator.getInstance(Validator.java:181) at java.base/sun.security.ssl.X509TrustManagerImpl.getValidator(X509TrustManagerImpl.java:330) at java.base/sun.security.ssl.X509TrustManagerImpl.checkTrustedInit(X509TrustManagerImpl.java:180) at java.base/sun.security.ssl.X509TrustManagerImpl.checkTrusted(X509TrustManagerImpl.java:192) at java.base/sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustManagerImpl.java:133) at java.base/sun.security.ssl.ClientHandshaker.checkServerCerts(ClientHandshaker.java:1947) at java.base/sun.security.ssl.ClientHandshaker.certificateStatus(ClientHandshaker.java:1798) at java.base/sun.security.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:276) at java.base/sun.security.ssl.Handshaker.processLoop(Handshaker.java:1092) at java.base/sun.security.ssl.Handshaker.processRecord(Handshaker.java:1026) at java.base/sun.security.ssl.SSLSocketImpl.processInputRecord(SSLSocketImpl.java:1137) at java.base/sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:1074) at java.base/sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:973) at java.base/sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1402) at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1429) ... 22 more Caused by: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty at java.base/java.security.cert.PKIXParameters.setTrustAnchors(PKIXParameters.java:200) at java.base/java.security.cert.PKIXParameters.<init>(PKIXParameters.java:120) at java.base/java.security.cert.PKIXBuilderParameters.<init>(PKIXBuilderParameters.java:104) at java.base/sun.security.validator.PKIXValidator.<init>(PKIXValidator.java:86) ... 37 more 2018-04-12 13:48:27.709 SEVERE: javax.net.ssl.SSLException: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty. Cause: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty. Cause: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty 2018-04-12 13:48:29.911 INFO: Defaults for imagery.generic.default_autozoom differ: != true 2018-04-12 13:48:29.911 INFO: Defaults for imagery.generic.default_autoload differ: != true 2018-04-12 13:48:29.912 INFO: Defaults for imagery.generic.default_showerrors differ: != true 2018-04-12 13:48:30.032 INFO: GET https://api.openstreetmap.org/api/capabilities -> !!! 2018-04-12 13:48:30.033 WARNING: javax.net.ssl.SSLException: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty. Cause: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty. Cause: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty javax.net.ssl.SSLException: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty at java.base/sun.security.ssl.Alerts.getSSLException(Alerts.java:214) at java.base/sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1969) at java.base/sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1921) at java.base/sun.security.ssl.SSLSocketImpl.handleException(SSLSocketImpl.java:1904) at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1436) at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1413) at java.base/sun.net.www.protocol.https.HttpsClient.afterConnect(HttpsClient.java:567) at java.base/sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:185) at java.base/sun.net.www.protocol.https.HttpsURLConnectionImpl.connect(HttpsURLConnectionImpl.java:163) at org.openstreetmap.josm.tools.HttpClient.connect(HttpClient.java:141) at org.openstreetmap.josm.tools.HttpClient.connect(HttpClient.java:87) at org.openstreetmap.josm.io.OsmApi.sendRequest(OsmApi.java:691) at org.openstreetmap.josm.io.OsmApi$CapabilitiesCache.updateData(OsmApi.java:218) at org.openstreetmap.josm.io.CacheCustomContent.updateForce(CacheCustomContent.java:141) at org.openstreetmap.josm.io.CacheCustomContent.updateForceString(CacheCustomContent.java:153) at org.openstreetmap.josm.io.CacheCustomContent.updateIfRequiredString(CacheCustomContent.java:131) at org.openstreetmap.josm.io.OsmApi.initialize(OsmApi.java:248) at org.openstreetmap.josm.io.OsmApi.initialize(OsmApi.java:230) at org.openstreetmap.josm.data.validation.tests.ApiCapabilitiesTest.initialize(ApiCapabilitiesTest.java:36) at org.openstreetmap.josm.data.validation.OsmValidator.initializeTests(OsmValidator.java:384) at org.openstreetmap.josm.data.validation.OsmValidator.initializeTests(OsmValidator.java:367) 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:1167) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641) at java.base/java.lang.Thread.run(Thread.java:844) Caused by: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty at java.base/sun.security.validator.PKIXValidator.<init>(PKIXValidator.java:89) at java.base/sun.security.validator.Validator.getInstance(Validator.java:181) at java.base/sun.security.ssl.X509TrustManagerImpl.getValidator(X509TrustManagerImpl.java:330) at java.base/sun.security.ssl.X509TrustManagerImpl.checkTrustedInit(X509TrustManagerImpl.java:180) at java.base/sun.security.ssl.X509TrustManagerImpl.checkTrusted(X509TrustManagerImpl.java:192) at java.base/sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustManagerImpl.java:133) at java.base/sun.security.ssl.ClientHandshaker.checkServerCerts(ClientHandshaker.java:1947) at java.base/sun.security.ssl.ClientHandshaker.certificateStatus(ClientHandshaker.java:1798) at java.base/sun.security.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:276) at java.base/sun.security.ssl.Handshaker.processLoop(Handshaker.java:1092) at java.base/sun.security.ssl.Handshaker.processRecord(Handshaker.java:1026) at java.base/sun.security.ssl.SSLSocketImpl.processInputRecord(SSLSocketImpl.java:1137) at java.base/sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:1074) at java.base/sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:973) at java.base/sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1402) at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1429) ... 21 more Caused by: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty at java.base/java.security.cert.PKIXParameters.setTrustAnchors(PKIXParameters.java:200) at java.base/java.security.cert.PKIXParameters.<init>(PKIXParameters.java:120) at java.base/java.security.cert.PKIXBuilderParameters.<init>(PKIXBuilderParameters.java:104) at java.base/sun.security.validator.PKIXValidator.<init>(PKIXValidator.java:86) ... 36 more 2018-04-12 13:48:30.033 WARNING: Already here java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty 2018-04-12 13:48:30.034 WARNING: Already here java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty 2018-04-12 13:48:30.034 SEVERE: org.openstreetmap.josm.io.OsmApiInitializationException: org.openstreetmap.josm.io.OsmTransferException: javax.net.ssl.SSLException: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty. Cause: org.openstreetmap.josm.io.OsmTransferException: javax.net.ssl.SSLException: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty. Cause: javax.net.ssl.SSLException: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty. Cause: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty. Cause: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty org.openstreetmap.josm.io.OsmApiInitializationException: org.openstreetmap.josm.io.OsmTransferException: javax.net.ssl.SSLException: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty at org.openstreetmap.josm.io.OsmApi.initialize(OsmApi.java:278) at org.openstreetmap.josm.io.OsmApi.initialize(OsmApi.java:230) at org.openstreetmap.josm.data.validation.tests.ApiCapabilitiesTest.initialize(ApiCapabilitiesTest.java:36) at org.openstreetmap.josm.data.validation.OsmValidator.initializeTests(OsmValidator.java:384) at org.openstreetmap.josm.data.validation.OsmValidator.initializeTests(OsmValidator.java:367) 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:1167) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641) at java.base/java.lang.Thread.run(Thread.java:844) Caused by: org.openstreetmap.josm.io.OsmTransferException: javax.net.ssl.SSLException: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty at org.openstreetmap.josm.io.OsmApi.sendRequest(OsmApi.java:739) at org.openstreetmap.josm.io.OsmApi$CapabilitiesCache.updateData(OsmApi.java:218) at org.openstreetmap.josm.io.CacheCustomContent.updateForce(CacheCustomContent.java:141) at org.openstreetmap.josm.io.CacheCustomContent.updateForceString(CacheCustomContent.java:153) at org.openstreetmap.josm.io.CacheCustomContent.updateIfRequiredString(CacheCustomContent.java:131) at org.openstreetmap.josm.io.OsmApi.initialize(OsmApi.java:248) ... 9 more Caused by: javax.net.ssl.SSLException: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty at java.base/sun.security.ssl.Alerts.getSSLException(Alerts.java:214) at java.base/sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1969) at java.base/sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1921) at java.base/sun.security.ssl.SSLSocketImpl.handleException(SSLSocketImpl.java:1904) at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1436) at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1413) at java.base/sun.net.www.protocol.https.HttpsClient.afterConnect(HttpsClient.java:567) at java.base/sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:185) at java.base/sun.net.www.protocol.https.HttpsURLConnectionImpl.connect(HttpsURLConnectionImpl.java:163) at org.openstreetmap.josm.tools.HttpClient.connect(HttpClient.java:141) at org.openstreetmap.josm.tools.HttpClient.connect(HttpClient.java:87) at org.openstreetmap.josm.io.OsmApi.sendRequest(OsmApi.java:691) ... 14 more Caused by: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty at java.base/sun.security.validator.PKIXValidator.<init>(PKIXValidator.java:89) at java.base/sun.security.validator.Validator.getInstance(Validator.java:181) at java.base/sun.security.ssl.X509TrustManagerImpl.getValidator(X509TrustManagerImpl.java:330) at java.base/sun.security.ssl.X509TrustManagerImpl.checkTrustedInit(X509TrustManagerImpl.java:180) at java.base/sun.security.ssl.X509TrustManagerImpl.checkTrusted(X509TrustManagerImpl.java:192) at java.base/sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustManagerImpl.java:133) at java.base/sun.security.ssl.ClientHandshaker.checkServerCerts(ClientHandshaker.java:1947) at java.base/sun.security.ssl.ClientHandshaker.certificateStatus(ClientHandshaker.java:1798) at java.base/sun.security.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:276) at java.base/sun.security.ssl.Handshaker.processLoop(Handshaker.java:1092) at java.base/sun.security.ssl.Handshaker.processRecord(Handshaker.java:1026) at java.base/sun.security.ssl.SSLSocketImpl.processInputRecord(SSLSocketImpl.java:1137) at java.base/sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:1074) at java.base/sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:973) at java.base/sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1402) at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1429) ... 21 more Caused by: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty at java.base/java.security.cert.PKIXParameters.setTrustAnchors(PKIXParameters.java:200) at java.base/java.security.cert.PKIXParameters.<init>(PKIXParameters.java:120) at java.base/java.security.cert.PKIXBuilderParameters.<init>(PKIXBuilderParameters.java:104) at java.base/sun.security.validator.PKIXValidator.<init>(PKIXValidator.java:86) ... 36 more 2018-04-12 13:48:30.227 WARNING: No configuration settings found. Using hardcoded default values for all pools. 2018-04-12 13:48:30.458 WARNING: Region [TMS_BLOCK_v2] Resetting cache
comment:11 by , 7 years ago
In case you switch to Java 8 and it works I would be very interested in a description how to do so using Ubuntu.
comment:12 by , 7 years ago
Same issue here. After installing Kubuntu 18.04 from scratch, JOSM throws the error message described and won’t get internet connection. Both with openJDK 11 and 8.
In Kubuntu 17.10, everything works perfectly fine (openJDK 8).
--ks
comment:13 by , 7 years ago
Can you please check if you have a file named DST_Root_CA_X3.pem somewhere on your system? (using updatedb && locate DST_Root_CA_X3.pem
)?
comment:14 by , 7 years ago
I did check. I found the certificate:
➜ ~ sudo updatedb && locate DST_Root_CA_X3.pem [sudo] password for fredrik: /etc/ssl/certs/DST_Root_CA_X3.pem /snap/core/4206/etc/ssl/certs/DST_Root_CA_X3.pem /snap/core/4407/etc/ssl/certs/DST_Root_CA_X3.pem /snap/core/4486/etc/ssl/certs/DST_Root_CA_X3.pem ➜ ~ josm >> josm.log 2018-04-27 19:34:13.518 WARNING: javax.net.ssl.SSLException: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty. Cause: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty. Cause: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty javax.net.ssl.SSLException: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty ...
comment:15 by , 7 years ago
Milestone: | → 18.04 |
---|
comment:16 by , 7 years ago
I can also confirm this on a fresh Ubuntu 18.04 install, with both versions of openJDK and installing JOSM both from the default Ubuntu repository and the openstreetmap.de repository (I tried both josm and josm-latest). I also have the certificate.
It used to work fine with Ubuntu 17.10 (upgraded from 17.04).
comment:17 by , 7 years ago
Using this work around it worked for me on Ubuntu 18.04:
https://bugs.launchpad.net/ubuntu/+source/ca-certificates-java/+bug/1739631
comment:20 by , 7 years ago
I'm still experiencing this issue with JOSM13576/tested and JOSM13700/latest from JARs and JOSM13700 from apt.
Still Ubuntu 18.04 LTS and
$ java --version openjdk 9.0.4 OpenJDK Runtime Environment (build 9.0.4+12-Ubuntu-4ubuntu2) OpenJDK 64-Bit Server VM (build 9.0.4+12-Ubuntu-4ubuntu2, mixed mode)
Here is the log from JOSM13700:
➜ $ java -jar josm-latest.jar 2018-05-04 14:16:25.526 INFO: Log level is at INFO (INFO, 800) 2018-05-04 14:16:28.461 INFO: GET https://josm.openstreetmap.de/wiki/En_GB:StartupPage -> !!! 2018-05-04 14:16:28.463 WARNING: javax.net.ssl.SSLException: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty. Cause: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty. Cause: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty javax.net.ssl.SSLException: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty at java.base/sun.security.ssl.Alerts.getSSLException(Alerts.java:214) at java.base/sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1969) at java.base/sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1921) at java.base/sun.security.ssl.SSLSocketImpl.handleException(SSLSocketImpl.java:1904) at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1436) at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1413) at java.base/sun.net.www.protocol.https.HttpsClient.afterConnect(HttpsClient.java:567) at java.base/sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:185) at java.base/sun.net.www.protocol.https.HttpsURLConnectionImpl.connect(HttpsURLConnectionImpl.java:163) at org.openstreetmap.josm.tools.HttpClient.connect(HttpClient.java:145) at org.openstreetmap.josm.tools.HttpClient.connect(HttpClient.java:91) at org.openstreetmap.josm.tools.WikiReader.readLang(WikiReader.java:101) at org.openstreetmap.josm.tools.WikiReader.readLang(WikiReader.java:76) at org.openstreetmap.josm.gui.GettingStarted$MotdContent.updateData(GettingStarted.java:97) at org.openstreetmap.josm.io.CacheCustomContent.updateForce(CacheCustomContent.java:141) at org.openstreetmap.josm.io.CacheCustomContent.updateForceString(CacheCustomContent.java:153) at org.openstreetmap.josm.io.CacheCustomContent.updateIfRequiredString(CacheCustomContent.java:131) at org.openstreetmap.josm.gui.GettingStarted.lambda$getMOTD$1(GettingStarted.java:152) at java.base/java.lang.Thread.run(Thread.java:844) Caused by: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty at java.base/sun.security.validator.PKIXValidator.<init>(PKIXValidator.java:89) at java.base/sun.security.validator.Validator.getInstance(Validator.java:181) at java.base/sun.security.ssl.X509TrustManagerImpl.getValidator(X509TrustManagerImpl.java:330) at java.base/sun.security.ssl.X509TrustManagerImpl.checkTrustedInit(X509TrustManagerImpl.java:180) at java.base/sun.security.ssl.X509TrustManagerImpl.checkTrusted(X509TrustManagerImpl.java:192) at java.base/sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustManagerImpl.java:133) at java.base/sun.security.ssl.ClientHandshaker.checkServerCerts(ClientHandshaker.java:1947) at java.base/sun.security.ssl.ClientHandshaker.certificateStatus(ClientHandshaker.java:1798) at java.base/sun.security.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:276) at java.base/sun.security.ssl.Handshaker.processLoop(Handshaker.java:1092) at java.base/sun.security.ssl.Handshaker.processRecord(Handshaker.java:1026) at java.base/sun.security.ssl.SSLSocketImpl.processInputRecord(SSLSocketImpl.java:1137) at java.base/sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:1074) at java.base/sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:973) at java.base/sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1402) at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1429) ... 14 more Caused by: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty at java.base/java.security.cert.PKIXParameters.setTrustAnchors(PKIXParameters.java:200) at java.base/java.security.cert.PKIXParameters.<init>(PKIXParameters.java:120) at java.base/java.security.cert.PKIXBuilderParameters.<init>(PKIXBuilderParameters.java:104) at java.base/sun.security.validator.PKIXValidator.<init>(PKIXValidator.java:86) ... 29 more 2018-05-04 14:16:28.464 WARNING: Failed to read MOTD. Exception was: javax.net.ssl.SSLException: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty: javax.net.ssl.SSLException: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty. Cause: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty. Cause: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty 2018-05-04 14:16:29.342 INFO: GET https://api.openstreetmap.org/api/capabilities -> !!! 2018-05-04 14:16:29.344 WARNING: javax.net.ssl.SSLException: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty. Cause: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty. Cause: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty javax.net.ssl.SSLException: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty at java.base/sun.security.ssl.Alerts.getSSLException(Alerts.java:214) at java.base/sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1969) at java.base/sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1921) at java.base/sun.security.ssl.SSLSocketImpl.handleException(SSLSocketImpl.java:1904) at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1436) at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1413) at java.base/sun.net.www.protocol.https.HttpsClient.afterConnect(HttpsClient.java:567) at java.base/sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:185) at java.base/sun.net.www.protocol.https.HttpsURLConnectionImpl.connect(HttpsURLConnectionImpl.java:163) at org.openstreetmap.josm.tools.HttpClient.connect(HttpClient.java:145) at org.openstreetmap.josm.tools.HttpClient.connect(HttpClient.java:91) at org.openstreetmap.josm.io.OsmApi.sendRequest(OsmApi.java:693) at org.openstreetmap.josm.io.OsmApi$CapabilitiesCache.updateData(OsmApi.java:218) at org.openstreetmap.josm.io.CacheCustomContent.updateForce(CacheCustomContent.java:141) at org.openstreetmap.josm.io.CacheCustomContent.updateForceString(CacheCustomContent.java:153) at org.openstreetmap.josm.io.CacheCustomContent.updateIfRequiredString(CacheCustomContent.java:131) at org.openstreetmap.josm.io.OsmApi.initialize(OsmApi.java:248) at org.openstreetmap.josm.gui.MainApplication.lambda$parallelInitializationTasks$6(MainApplication.java:423) at org.openstreetmap.josm.Main$InitializationTask.call(Main.java:257) at org.openstreetmap.josm.Main$InitializationTask.call(Main.java:236) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641) at java.base/java.lang.Thread.run(Thread.java:844) Caused by: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty at java.base/sun.security.validator.PKIXValidator.<init>(PKIXValidator.java:89) at java.base/sun.security.validator.Validator.getInstance(Validator.java:181) at java.base/sun.security.ssl.X509TrustManagerImpl.getValidator(X509TrustManagerImpl.java:330) at java.base/sun.security.ssl.X509TrustManagerImpl.checkTrustedInit(X509TrustManagerImpl.java:180) at java.base/sun.security.ssl.X509TrustManagerImpl.checkTrusted(X509TrustManagerImpl.java:192) at java.base/sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustManagerImpl.java:133) at java.base/sun.security.ssl.ClientHandshaker.checkServerCerts(ClientHandshaker.java:1947) at java.base/sun.security.ssl.ClientHandshaker.certificateStatus(ClientHandshaker.java:1798) at java.base/sun.security.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:276) at java.base/sun.security.ssl.Handshaker.processLoop(Handshaker.java:1092) at java.base/sun.security.ssl.Handshaker.processRecord(Handshaker.java:1026) at java.base/sun.security.ssl.SSLSocketImpl.processInputRecord(SSLSocketImpl.java:1137) at java.base/sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:1074) at java.base/sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:973) at java.base/sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1402) at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1429) ... 19 more Caused by: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty at java.base/java.security.cert.PKIXParameters.setTrustAnchors(PKIXParameters.java:200) at java.base/java.security.cert.PKIXParameters.<init>(PKIXParameters.java:120) at java.base/java.security.cert.PKIXBuilderParameters.<init>(PKIXBuilderParameters.java:104) at java.base/sun.security.validator.PKIXValidator.<init>(PKIXValidator.java:86) ... 34 more 2018-05-04 14:16:29.344 WARNING: Already here java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty 2018-05-04 14:16:29.345 WARNING: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty 2018-05-04 14:16:29.507 INFO: GET https://josm.openstreetmap.de/maps -> !!! 2018-05-04 14:16:29.508 WARNING: javax.net.ssl.SSLException: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty. Cause: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty. Cause: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty javax.net.ssl.SSLException: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty at java.base/sun.security.ssl.Alerts.getSSLException(Alerts.java:214) at java.base/sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1969) at java.base/sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1921) at java.base/sun.security.ssl.SSLSocketImpl.handleException(SSLSocketImpl.java:1904) at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1436) at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1413) at java.base/sun.net.www.protocol.https.HttpsClient.afterConnect(HttpsClient.java:567) at java.base/sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:185) at java.base/sun.net.www.protocol.https.HttpsURLConnectionImpl.connect(HttpsURLConnectionImpl.java:163) at org.openstreetmap.josm.tools.HttpClient.connect(HttpClient.java:145) at org.openstreetmap.josm.tools.HttpClient.connect(HttpClient.java:91) at org.openstreetmap.josm.io.CachedFile.checkLocal(CachedFile.java:508) at org.openstreetmap.josm.io.CachedFile.getFile(CachedFile.java:285) at org.openstreetmap.josm.io.CachedFile.getInputStream(CachedFile.java:219) at org.openstreetmap.josm.io.CachedFile.getContentReader(CachedFile.java:262) at org.openstreetmap.josm.io.imagery.ImageryReader.parse(ImageryReader.java:92) at org.openstreetmap.josm.data.imagery.ImageryLayerInfo$DefaultEntryLoader.loadSource(ImageryLayerInfo.java:175) at org.openstreetmap.josm.data.imagery.ImageryLayerInfo$DefaultEntryLoader.realRun(ImageryLayerInfo.java:157) at org.openstreetmap.josm.data.imagery.ImageryLayerInfo.loadDefaults(ImageryLayerInfo.java:120) at org.openstreetmap.josm.data.imagery.ImageryLayerInfo.load(ImageryLayerInfo.java:102) at org.openstreetmap.josm.gui.preferences.imagery.ImageryPreference.initialize(ImageryPreference.java:960) at org.openstreetmap.josm.Main$InitializationTask.call(Main.java:257) at org.openstreetmap.josm.Main$InitializationTask.call(Main.java:236) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641) at java.base/java.lang.Thread.run(Thread.java:844) Caused by: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty at java.base/sun.security.validator.PKIXValidator.<init>(PKIXValidator.java:89) at java.base/sun.security.validator.Validator.getInstance(Validator.java:181) at java.base/sun.security.ssl.X509TrustManagerImpl.getValidator(X509TrustManagerImpl.java:330) at java.base/sun.security.ssl.X509TrustManagerImpl.checkTrustedInit(X509TrustManagerImpl.java:180) at java.base/sun.security.ssl.X509TrustManagerImpl.checkTrusted(X509TrustManagerImpl.java:192) at java.base/sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustManagerImpl.java:133) at java.base/sun.security.ssl.ClientHandshaker.checkServerCerts(ClientHandshaker.java:1947) at java.base/sun.security.ssl.ClientHandshaker.certificateStatus(ClientHandshaker.java:1798) at java.base/sun.security.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:276) at java.base/sun.security.ssl.Handshaker.processLoop(Handshaker.java:1092) at java.base/sun.security.ssl.Handshaker.processRecord(Handshaker.java:1026) at java.base/sun.security.ssl.SSLSocketImpl.processInputRecord(SSLSocketImpl.java:1137) at java.base/sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:1074) at java.base/sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:973) at java.base/sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1402) at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1429) ... 22 more Caused by: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty at java.base/java.security.cert.PKIXParameters.setTrustAnchors(PKIXParameters.java:200) at java.base/java.security.cert.PKIXParameters.<init>(PKIXParameters.java:120) at java.base/java.security.cert.PKIXBuilderParameters.<init>(PKIXBuilderParameters.java:104) at java.base/sun.security.validator.PKIXValidator.<init>(PKIXValidator.java:86) ... 37 more 2018-05-04 14:16:29.509 SEVERE: javax.net.ssl.SSLException: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty. Cause: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty. Cause: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty 2018-05-04 14:16:31.419 INFO: Defaults for imagery.generic.default_autozoom differ: != true 2018-05-04 14:16:31.419 INFO: Defaults for imagery.generic.default_autoload differ: != true 2018-05-04 14:16:31.420 INFO: Defaults for imagery.generic.default_showerrors differ: != true 2018-05-04 14:16:31.535 INFO: GET https://api.openstreetmap.org/api/capabilities -> !!! 2018-05-04 14:16:31.542 WARNING: javax.net.ssl.SSLException: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty. Cause: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty. Cause: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty javax.net.ssl.SSLException: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty at java.base/sun.security.ssl.Alerts.getSSLException(Alerts.java:214) at java.base/sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1969) at java.base/sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1921) at java.base/sun.security.ssl.SSLSocketImpl.handleException(SSLSocketImpl.java:1904) at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1436) at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1413) at java.base/sun.net.www.protocol.https.HttpsClient.afterConnect(HttpsClient.java:567) at java.base/sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:185) at java.base/sun.net.www.protocol.https.HttpsURLConnectionImpl.connect(HttpsURLConnectionImpl.java:163) at org.openstreetmap.josm.tools.HttpClient.connect(HttpClient.java:145) at org.openstreetmap.josm.tools.HttpClient.connect(HttpClient.java:91) at org.openstreetmap.josm.io.OsmApi.sendRequest(OsmApi.java:693) at org.openstreetmap.josm.io.OsmApi$CapabilitiesCache.updateData(OsmApi.java:218) at org.openstreetmap.josm.io.CacheCustomContent.updateForce(CacheCustomContent.java:141) at org.openstreetmap.josm.io.CacheCustomContent.updateForceString(CacheCustomContent.java:153) at org.openstreetmap.josm.io.CacheCustomContent.updateIfRequiredString(CacheCustomContent.java:131) at org.openstreetmap.josm.io.OsmApi.initialize(OsmApi.java:248) at org.openstreetmap.josm.io.OsmApi.initialize(OsmApi.java:230) at org.openstreetmap.josm.data.validation.tests.ApiCapabilitiesTest.initialize(ApiCapabilitiesTest.java:36) at org.openstreetmap.josm.data.validation.OsmValidator.initializeTests(OsmValidator.java:401) at org.openstreetmap.josm.data.validation.OsmValidator.initializeTests(OsmValidator.java:384) 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:1167) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641) at java.base/java.lang.Thread.run(Thread.java:844) Caused by: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty at java.base/sun.security.validator.PKIXValidator.<init>(PKIXValidator.java:89) at java.base/sun.security.validator.Validator.getInstance(Validator.java:181) at java.base/sun.security.ssl.X509TrustManagerImpl.getValidator(X509TrustManagerImpl.java:330) at java.base/sun.security.ssl.X509TrustManagerImpl.checkTrustedInit(X509TrustManagerImpl.java:180) at java.base/sun.security.ssl.X509TrustManagerImpl.checkTrusted(X509TrustManagerImpl.java:192) at java.base/sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustManagerImpl.java:133) at java.base/sun.security.ssl.ClientHandshaker.checkServerCerts(ClientHandshaker.java:1947) at java.base/sun.security.ssl.ClientHandshaker.certificateStatus(ClientHandshaker.java:1798) at java.base/sun.security.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:276) at java.base/sun.security.ssl.Handshaker.processLoop(Handshaker.java:1092) at java.base/sun.security.ssl.Handshaker.processRecord(Handshaker.java:1026) at java.base/sun.security.ssl.SSLSocketImpl.processInputRecord(SSLSocketImpl.java:1137) at java.base/sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:1074) at java.base/sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:973) at java.base/sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1402) at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1429) ... 21 more Caused by: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty at java.base/java.security.cert.PKIXParameters.setTrustAnchors(PKIXParameters.java:200) at java.base/java.security.cert.PKIXParameters.<init>(PKIXParameters.java:120) at java.base/java.security.cert.PKIXBuilderParameters.<init>(PKIXBuilderParameters.java:104) at java.base/sun.security.validator.PKIXValidator.<init>(PKIXValidator.java:86) ... 36 more 2018-05-04 14:16:31.546 WARNING: Already here java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty 2018-05-04 14:16:31.546 WARNING: Already here java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty 2018-05-04 14:16:31.547 SEVERE: Error initialising test ApiCapabilitiesTest: org.openstreetmap.josm.io.OsmApiInitializationException: org.openstreetmap.josm.io.OsmTransferException: javax.net.ssl.SSLException: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty 2018-05-04 14:16:31.829 WARNING: No configuration settings found. Using hardcoded default values for all pools. 2018-05-04 14:16:31.997 WARNING: Region [TMS_BLOCK_v2] Resetting cache
comment:21 by , 7 years ago
Resolution: | fixed |
---|---|
Status: | closed → reopened |
comment:24 by , 7 years ago
I just did now, and the results are the same. I get exactly the same error as before.
➜ ~ josm-latest --version Using /usr/lib/jvm/java-9-openjdk-amd64/bin/java to execute josm-latest. JOSM/1.5 (13701 en_GB) Linux Ubuntu 18.04 LTS
comment:25 by , 7 years ago
Keywords: | jks keystore java9 added |
---|---|
Resolution: | fixed |
Status: | closed → reopened |
OK I misunderstood the problem. More information here.
comment:26 by , 7 years ago
OK so this is Debian bug 894979, fixed on 13th April in ca-certificates-java 20180413
and migrated to testing on 18th April.
This corrective version is not yet in Ubuntu, I'll ask when it should occur.
comment:27 by , 7 years ago
Keywords: | debian added; connection removed |
---|
comment:28 by , 7 years ago
Answer from Debian Java team:
the update is planned but has been delayed by a conflict: https://launchpad.net/bugs/1769013
comment:29 by , 7 years ago
Priority: | normal → critical |
---|
comment:30 by , 7 years ago
Summary: | InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty → InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty (Ubuntu 18.04) |
---|
comment:31 by , 7 years ago
Milestone: | 18.04 |
---|---|
Resolution: | → othersoftware |
Status: | reopened → closed |
I did everything I can on JOSM side. It's up to Ubuntu to merge https://bugs.launchpad.net/ubuntu/+source/ca-certificates-java/+bug/1769013 now, I hope it won't be too long.
comment:32 by , 7 years ago
This bug is a real problem. While the fix is waiting for a merge, a workaround is to run JOSM inside a container. I built a Docker image for this purpose :
docker run --rm -it -v $HOME:$HOME -e DISPLAY=$DISPLAY -e USER -e USERID=$(id -u) -v /tmp/.X11-unix:/tmp/.X11-unix abienvenu/josm
comment:38 by , 7 years ago
This has been triaged again to a new bug https://bugs.launchpad.net/ubuntu/+source/ca-certificates-java/+bug/1770553
Ubuntu maintainers seem more concerned by duplicating the bug rather than backporting the fix, this is frustrating.
This issue blocks #16290.
comment:39 by , 7 years ago
The fix has FINALLY been backported 1 hour ago. So everything should work after an upgrade. Can someone please confirm?
comment:40 by , 7 years ago
So it just took them 3 months from the Bionic release to fix this – and in another 3 months, Cosmic will be here, hopefully not bringing another one of that caliber :)
comment:41 by , 7 years ago
To be exact, when the bug was confirmed to Debian developers it took them a few hours to fix it and release an hotfix. Then it took 3 months to Ubuntu maintainers to create a lot of redundant bug reports (at least 1739631, 1769013, 1771363, 1770553), do nothing else, wait for 18.04.1 release and realize they had to so something xD
Screenshot of the error dialog that appears after starting JOSM