May 24 2021 05:09 AM
when trying to connect to sharepoint using graph api, via HttpsUrlConnection as below:
TrustManager[] dummyTrustManager = new TrustManager[] { new X509TrustManager() {
public java.security.cert.X509Certificate[] getAcceptedIssuers() {
return null;
}
SSLContext sc = SSLContext.getInstance("TLSv1.2");
sc.init(null, dummyTrustManager, new java.security.SecureRandom());
URL url = new URL(newUrl); //input url
HttpsURLConnection urlConnection = (HttpsURLConnection) url.openConnection();
urlConnection.setSSLSocketFactory(sc.getSocketFactory());
urlConnection.setRequestMethod("GET");
urlConnection.setRequestProperty("Authorization", "Bearer " + token);
urlConnection.setRequestProperty("Content-Type", "application/" + "json");
urlConnection.connect();
it works in windows, but fails in linux machine with below error:
java.net.SocketException: Connection reset
at java.net.SocketInputStream.read(SocketInputStream.java:196)
at java.net.SocketInputStream.read(SocketInputStream.java:122)
at sun.security.ssl.InputRecord.readFully(InputRecord.java:442)
at sun.security.ssl.InputRecord.read(InputRecord.java:480)
at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:927)
at sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1312)
at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1339)
at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1323)
..
java version in linux is :
root@workflow-test-new:/home/tomcat7/apache-tomcat-7/logs# java -version
java version "1.7.0_45"
Java(TM) SE Runtime Environment (build 1.7.0_45-b18)
Java HotSpot(TM) 64-Bit Server VM (build 24.45-b08, mixed mode)