Cuando quiero abrir una conexión HTTPS obtengo Excepción de SSL. ¿Cómo establecer HttpURLConnection de una manera no es sensible a esta excepción?¿Desactiva la validación del certificado SSL de la conexión HTTPS?
Mi código es:
private String getData() {
String response = null;
String connection = "https://www.kamalan.com/";
try {
URL url = new URL(connection);
Log.i(TAG, "Try to open: " + connection);
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
int responseCode = conn.getResponseCode();
Log.i(TAG, "Response code is: " + responseCode);
if (responseCode == HttpURLConnection.HTTP_OK) {
BufferedReader in = new BufferedReader(new InputStreamReader(conn.getInputStream()));
if (in != null) {
StringBuilder strBuilder = new StringBuilder();
int ch = 0;
while ((ch = in.read()) != -1)
strBuilder.append((char) ch);
// get returned message and show it
response = strBuilder.toString();
Log.i("JSON returned by server:", response);
}
in.close();
} else {
Log.e(TAG, "Couldn't open connection in getResepiItems()");
}
} catch (SSLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return response;
}
¿Qué dice la Logcat? –
@Morrison Chang Este es el error en el registro cat 'Causado por: java.security.cert.CertificateException: java.security.cert.CertPathValidatorException: ancla de confianza para la ruta de certificación no encontrada. –
¿Has visto esta publicación SO: http: //stackoverflow.com/questions/6825226/trust-anchor-not-found-for-android-ssl-connection? –