i want to pass my certyficate to post request. I need to pass it becouse it wont work without this.
String pass = "password";
File file = new File("C:\\Users\\Test\\Desktop\\Program\\Certs\\TLS.p12");
InputStream stream = new FileInputStream(file);
KeyStore store = KeyStore.getInstance("PKCS12");
store.load(stream, pass.toCharArray());
PrivateKey key = (PrivateKey)store.getKey("TLS_CERT", pass.toCharArray());
System.out.println("Success");
SSLContext sslContext = SSLContext.getInstance("SSL");
TrustManagerFactory trustManagerFactory TrustManagerFactory.getInstance(TrustManagerFactory.getDefaultAlgorithm());
trustManagerFactory.init(store);
KeyManagerFactory keyManagerFactory = KeyManagerFactory.getInstance(KeyManagerFactory.getDefaultAlgorithm());
keyManagerFactory.init(store, "AGSZKeCnantL".toCharArray());
sslContext.init(keyManagerFactory.getKeyManagers(),trustManagerFactory.getTrustManagers(), new SecureRandom());
OkHttpClient client = new OkHttpClient();
OkHttpClient.Builder builder = client.newBuilder();
builder.sslSocketFactory(sslContext.getSocketFactory()).build();
This is what i recive, i know i can disable TLS but server dont let me connect
Exception in thread "main" java.lang.UnsupportedOperationException: clientBuilder.sslSocketFactory(SSLSocketFactory) not supported on JDK 9+
at okhttp3.internal.platform.Jdk9Platform.trustManager(Jdk9Platform.kt:61)
at okhttp3.OkHttpClient$Builder.sslSocketFactory(OkHttpClient.kt:751)
at Program.main(Program.java:71)
Can someone explain me how to fix this?