Я использую код ниже, чтобы отправить OTP
, но я получаю сообщение об ошибке:
Ошибка построения пути PKIX:
sun.security.provider.certpath.SunCertPathBuilderException: невозможно
найти правильный путь сертификации к запрошенной цели в responseMessage =
connection.getResponseMessage ();
Я нашел пару решений, но не уверен насчет реализации ответов.
public Boolean sendSmsOTP(String MobileNumber, String OTPKey) {
logDebugInfo("In sendSmsOTP ", LOG_TYPE_INFORMATIVE);
HttpURLConnection connection;
int responseCode;
String requestData, responseMessage;
URL smsUrl;
URI uri;
String mobileNumber = MobileNumber.replace("+91", "");
try {
logDebugInfo("Mobile Number : " + mobileNumber + " OTP : " + OTPKey, LOG_TYPE_INFORMATIVE);
requestData = gResourceBundle.getString("RequestSMSData");
requestData = requestData.replace("[MobileNumber]", mobileNumber.trim());
requestData = requestData.replace("[OTPKEY]", OTPKey);
requestData = requestData.replace("[ ]", "%20");
requestData = requestData.replace(" ", "%20");
System.out.println(requestData.toString());
uri = new URI(requestData);
smsUrl = uri.toURL();
logDebugInfo("URL : " + smsUrl.toString(), LOG_TYPE_INFORMATIVE);
connection = (HttpURLConnection) smsUrl.openConnection();
connection.setDoOutput(false);
connection.setDoInput(true);
System.out.println("Manish negi -> "+connection.toString());
responseMessage = connection.getResponseMessage();
logDebugInfo("Response Message from SMS server " + responseMessage, LOG_TYPE_INFORMATIVE);
responseCode = connection.getResponseCode();
if (responseCode == HttpURLConnection.HTTP_OK) {
connection.disconnect();
System.out.println("OTP GENERATED");
return true;
} else {
connection.disconnect();
return false;
}
} catch (Exception e) {
logErrorInfo("Exception in sendSmsOTP function()..." + e.getMessage());
logDebugInfo("Exception in sendSmsOTP function()..." + e.getMessage(), LOG_TYPE_CRITICAL);
gResultMessage = gResultMessage.replace("Error Code", "CA01");
gReturnResponse = getJSONString(gErrorResponse, gResultMessage);
e.printStackTrace();
return false;
}
}
Этот код выдает ошибку, указанную ниже: