dennis lucero created NETBEANS-2322:
---------------------------------------

             Summary: Downloading Maven index (from a mirror) fails due to TLS 
handshake error, -Djavax.net.ssl.trustStore from global execution options is 
not used
                 Key: NETBEANS-2322
                 URL: https://issues.apache.org/jira/browse/NETBEANS-2322
             Project: NetBeans
          Issue Type: Bug
          Components: projects - Maven
    Affects Versions: 10.0
         Environment: Product Version: Apache NetBeans IDE 10.0 (Build 
incubator-netbeans-release-380-on-20181217)
Java: 11; OpenJDK 64-Bit Server VM 11+28
Runtime: OpenJDK Runtime Environment 11+28
System: Windows 10 version 10.0 running on amd64; Cp1252; de_DE (nb)
            Reporter: dennis lucero


We have set up a mirror of the Maven central. Downloading artifacts works 
without a problem, but the index cannot be retrieved, so NetBeans fails to 
suggest version numbers in pom.xml files.

Excerpt from ~/.m2/settings.xml:

{{        <mirror>}}
{{            <id>my-central-mirror</id>}}
{{            <name>My Central Mirror</name>}}
{{            <url>https://maven.example.org/repository/maven-central/</url>}}
{{            <mirrorOf>central</mirrorOf>}}
{{        </mirror>}}

(Of course the real URL is using our local hostname.)

The global execution options (Options, Java, Maven, Execution) are:

{{ --batch-mode --errors 
-Djavax.net.ssl.trustStore=C:/Users/example/example.jks}}

Our mirror can only be used with HTTPS. The NetBeans log contains:

{{INFO [org.netbeans.modules.maven.indexer.NexusRepositoryIndexerImpl]: 
Downloaded maven index file has size 0 (zipped). The usable space in 
C:\Users\example\AppData\Local\NetBeans\Cache\10.0 is 139.946.274.816.}}
{{INFO [org.netbeans.modules.maven.indexer.NexusRepositoryIndexerImpl]: could 
not (re-)index my-central-mirror}}
{{sun.security.provider.certpath.SunCertPathBuilderException: unable to find 
valid certification path to requested target}}
{{    at 
java.base/sun.security.provider.certpath.SunCertPathBuilder.build(SunCertPathBuilder.java:141)}}
{{    at 
java.base/sun.security.provider.certpath.SunCertPathBuilder.engineBuild(SunCertPathBuilder.java:126)}}
{{    at 
java.base/java.security.cert.CertPathBuilder.build(CertPathBuilder.java:297)}}
{{    at 
java.base/sun.security.validator.PKIXValidator.doBuild(PKIXValidator.java:380)}}
{{Caused: sun.security.validator.ValidatorException: PKIX path building failed}}
{{    at 
java.base/sun.security.validator.PKIXValidator.doBuild(PKIXValidator.java:385)}}
{{    at 
java.base/sun.security.validator.PKIXValidator.engineValidate(PKIXValidator.java:290)}}
{{    at 
java.base/sun.security.validator.Validator.validate(Validator.java:264)}}
{{    at 
java.base/sun.security.ssl.X509TrustManagerImpl.validate(X509TrustManagerImpl.java:321)}}
{{    at 
java.base/sun.security.ssl.X509TrustManagerImpl.checkTrusted(X509TrustManagerImpl.java:221)}}
{{    at 
java.base/sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustManagerImpl.java:129)}}
{{    at 
java.base/sun.security.ssl.CertificateMessage$T12CertificateConsumer.checkServerCerts(CertificateMessage.java:626)}}
{{Caused: javax.net.ssl.SSLHandshakeException: PKIX path building failed: 
sun.security.provider.certpath.SunCertPathBuilderException: unable to find 
valid certification path to requested target}}
{{    at java.base/sun.security.ssl.Alert.createSSLException(Alert.java:128)}}
{{    at 
java.base/sun.security.ssl.TransportContext.fatal(TransportContext.java:321)}}
{{    at 
java.base/sun.security.ssl.TransportContext.fatal(TransportContext.java:264)}}
{{    at 
java.base/sun.security.ssl.TransportContext.fatal(TransportContext.java:259)}}
{{    at 
java.base/sun.security.ssl.CertificateMessage$T12CertificateConsumer.checkServerCerts(CertificateMessage.java:642)}}
{{    at 
java.base/sun.security.ssl.CertificateMessage$T12CertificateConsumer.onCertificate(CertificateMessage.java:461)}}
{{    at 
java.base/sun.security.ssl.CertificateMessage$T12CertificateConsumer.consume(CertificateMessage.java:361)}}
{{    at 
java.base/sun.security.ssl.SSLHandshake.consume(SSLHandshake.java:392)}}
{{    at 
java.base/sun.security.ssl.HandshakeContext.dispatch(HandshakeContext.java:444)}}
{{    at 
java.base/sun.security.ssl.HandshakeContext.dispatch(HandshakeContext.java:421)}}
{{    at 
java.base/sun.security.ssl.TransportContext.dispatch(TransportContext.java:178)}}
{{    at java.base/sun.security.ssl.SSLTransport.decode(SSLTransport.java:164)}}
{{    at 
java.base/sun.security.ssl.SSLSocketImpl.decode(SSLSocketImpl.java:1152)}}
{{    at 
java.base/sun.security.ssl.SSLSocketImpl.readHandshakeRecord(SSLSocketImpl.java:1063)}}
{{    at 
java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:402)}}
{{    at 
org.apache.maven.wagon.providers.http.httpclient.conn.ssl.SSLConnectionSocketFactory.createLayeredSocket(SSLConnectionSocketFactory.java:275)}}
{{    at 
org.apache.maven.wagon.providers.http.httpclient.conn.ssl.SSLConnectionSocketFactory.connectSocket(SSLConnectionSocketFactory.java:254)}}
{{    at 
org.apache.maven.wagon.providers.http.httpclient.impl.conn.HttpClientConnectionOperator.connect(HttpClientConnectionOperator.java:123)}}
{{    at 
org.apache.maven.wagon.providers.http.httpclient.impl.conn.PoolingHttpClientConnectionManager.connect(PoolingHttpClientConnectionManager.java:318)}}
{{    at 
org.apache.maven.wagon.providers.http.httpclient.impl.execchain.MainClientExec.establishRoute(MainClientExec.java:363)}}
{{    at 
org.apache.maven.wagon.providers.http.httpclient.impl.execchain.MainClientExec.execute(MainClientExec.java:219)}}
{{    at 
org.apache.maven.wagon.providers.http.httpclient.impl.execchain.ProtocolExec.execute(ProtocolExec.java:195)}}
{{    at 
org.apache.maven.wagon.providers.http.httpclient.impl.execchain.RetryExec.execute(RetryExec.java:86)}}
{{    at 
org.apache.maven.wagon.providers.http.httpclient.impl.execchain.RedirectExec.execute(RedirectExec.java:108)}}
{{    at 
org.apache.maven.wagon.providers.http.httpclient.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:184)}}
{{    at 
org.apache.maven.wagon.providers.http.httpclient.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:82)}}
{{    at 
org.apache.maven.wagon.providers.http.AbstractHttpClientWagon.execute(AbstractHttpClientWagon.java:832)}}
{{    at 
org.apache.maven.wagon.providers.http.AbstractHttpClientWagon.fillInputData(AbstractHttpClientWagon.java:983)}}
{{Caused: org.apache.maven.wagon.TransferFailedException: PKIX path building 
failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to 
find valid certification path to requested target}}
{{    at 
org.apache.maven.wagon.providers.http.AbstractHttpClientWagon.fillInputData(AbstractHttpClientWagon.java:1066)}}
{{    at 
org.apache.maven.wagon.providers.http.AbstractHttpClientWagon.fillInputData(AbstractHttpClientWagon.java:960)}}
{{    at 
org.apache.maven.wagon.StreamWagon.getInputStream(StreamWagon.java:116)}}
{{    at org.apache.maven.wagon.StreamWagon.getIfNewer(StreamWagon.java:88)}}
{{    at org.apache.maven.wagon.StreamWagon.get(StreamWagon.java:61)}}
{{    at 
org.apache.maven.index.updater.WagonHelper$WagonFetcher.retrieve(WagonHelper.java:220)}}
{{Caused: java.io.IOException: Transfer for 
nexus-maven-repository-index.properties failed; PKIX path building failed: 
sun.security.provider.certpath.SunCertPathBuilderException: unable to find 
valid certification path to requested target}}
{{    at 
org.apache.maven.index.updater.WagonHelper$WagonFetcher.retrieve(WagonHelper.java:245)}}
{{    at 
org.apache.maven.index.updater.WagonHelper$WagonFetcher.retrieve(WagonHelper.java:202)}}
{{    at 
org.apache.maven.index.updater.DefaultIndexUpdater.downloadIndexProperties(DefaultIndexUpdater.java:342)}}
{{    at 
org.apache.maven.index.updater.DefaultIndexUpdater.access$000(DefaultIndexUpdater.java:76)}}
{{    at 
org.apache.maven.index.updater.DefaultIndexUpdater$IndexAdaptor.setProperties(DefaultIndexUpdater.java:465)}}
{{    at 
org.apache.maven.index.updater.DefaultIndexUpdater.fetchAndUpdateIndex(DefaultIndexUpdater.java:681)}}
{{    at 
org.apache.maven.index.updater.DefaultIndexUpdater.fetchAndUpdateIndex(DefaultIndexUpdater.java:161)}}
{{    at 
org.netbeans.modules.maven.indexer.NexusRepositoryIndexerImpl.indexLoadedRepo(NexusRepositoryIndexerImpl.java:528)}}
{{    at 
org.netbeans.modules.maven.indexer.NexusRepositoryIndexerImpl.access$200(NexusRepositoryIndexerImpl.java:122)}}
{{[catch] at 
org.netbeans.modules.maven.indexer.NexusRepositoryIndexerImpl$2$1.run(NexusRepositoryIndexerImpl.java:636)}}
{{    at 
org.netbeans.modules.maven.indexer.NexusRepositoryIndexerImpl$2$1.run(NexusRepositoryIndexerImpl.java:633)}}
{{    at 
org.netbeans.modules.openide.util.DefaultMutexImplementation.writeAccess(DefaultMutexImplementation.java:229)}}
{{    at org.openide.util.Mutex.writeAccess(Mutex.java:246)}}
{{    at 
org.netbeans.modules.maven.indexer.NexusRepositoryIndexerImpl$2.run(NexusRepositoryIndexerImpl.java:633)}}
{{    at 
org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1418)}}
{{    at 
org.netbeans.modules.openide.util.GlobalLookup.execute(GlobalLookup.java:45)}}
{{    at org.openide.util.lookup.Lookups.executeWith(Lookups.java:278)}}
{{    at 
org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:2033)}}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@netbeans.apache.org
For additional commands, e-mail: commits-h...@netbeans.apache.org

For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists

Reply via email to