Quantcast
Channel: Active questions tagged https - Stack Overflow
Viewing all articles
Browse latest Browse all 1794

java.security.cert.CertificateException: No subject alternative DNS name matching

$
0
0

I am writing a file reader through REST api, simple code as below:

import domainimport java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.net.URL;import java.net.ssl.HttpsURLConnection;import java.net.MalformedURLException;public class Verifier{    public static void main(String args[]) throws IOException    {        URL url = new URL("https://somehostname.xx.xxx.net/somecontent?somequery=number");        try{            HttpsURLConnection http=(HttpsURLConnection) url.openConnection();            int reponse = http.getResponseCode();            //some json processing            //...           }catch (MalformedURLException e) {               e.printStackTrace();           }catch (IOException e) {               e.printStackTrace();           }    }}

Then I got the error at line

int reponse = http.getResponseCode();

where the error message is:

javax.net.ssl.SSLHandshakeException: java.security.cert.CertificateException: No subject alternative DNS name matching somehostname.xx.xxx.net found.    at sun.security.ssl.Alerts.getSSLException(Unknown Source)    at sun.security.ssl.SSLSocketImpl.fatal(Unknown Source)    at sun.security.ssl.Handshaker.fatalSE(Unknown Source)    at sun.security.ssl.Handshaker.fatalSE(Unknown Source)    at sun.security.ssl.ClientHandshaker.serverCertificate(Unknown Source)    at sun.security.ssl.ClientHandshaker.processMessage(Unknown Source)    at sun.security.ssl.Handshaker.processLoop(Unknown Source)    at sun.security.ssl.Handshaker.process_record(Unknown Source)    at sun.security.ssl.SSLSocketImpl.readRecord(Unknown Source)    at sun.security.ssl.SSLSocketImpl.performInitialHandshake(Unknown Source)    at sun.security.ssl.SSLSocketImpl.startHandshake(Unknown Source)    at sun.security.ssl.SSLSocketImpl.startHandshake(Unknown Source)    at sun.net.www.protocol.https.HttpsClient.afterConnect(Unknown Source)    at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(Unknown Source)    at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(Unknown Source)    at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)    at java.net.HttpURLConnection.getResponseCode(Unknown Source)    at sun.net.www.protocol.https.HttpsURLConnectionImpl.getResponseCode(Unknown Source)    at domain.main(Verifier.java:39)Caused by: java.security.cert.CertificateException: No subject alternative DNS name matching somehostname.xx.xxx.net found.    at sun.security.util.HostnameChecker.matchDNS(Unknown Source)    at sun.security.util.HostnameChecker.match(Unknown Source)    at sun.security.ssl.X509TrustManagerImpl.checkIdentity(Unknown Source)    at sun.security.ssl.X509TrustManagerImpl.checkIdentity(Unknown Source)    at sun.security.ssl.X509TrustManagerImpl.checkTrusted(Unknown Source)    at sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(Unknown Source)    ... 15 more

The content from the same site can be retrieved through the chrome browser, without any username or password (but it did show there is a problem with this website's security certificate in IE explorer, not in Chrome, you can continue to get the json content without typing anything).

I am thinking there might be some certificate problem in JAVA/eclipse, maybe? How can I solve it?

Thanks.


Viewing all articles
Browse latest Browse all 1794

Latest Images

Trending Articles



Latest Images

<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>