Пытаюсь подключиться к конечной точке SOAP.
public SOAPMessage getRequestObjectResponse(SOAPMessage message) {
System.setProperty("https.protocols", "TLSv1");
try {
SOAPConnectionFactory soapConnectionFactory = SOAPConnectionFactory.newInstance();
SOAPConnection soapConnection = soapConnectionFactory.createConnection();
// Send SOAP Message to SOAP Server
return soapConnection.call(message, config.getBaseUrl());
} catch (SOAPException ex) {
Logger.getLogger(SOAPWebServiceTemplate.class.getName()).log(Level.SEVERE, null, ex);
}
return null;
}
}
Используя вышеизложенное, я получаю следующую ошибку ниже
на java.lang.Thread.run (НеизвестноИсточник) [na: 1.8.0_191] Причина: com.sun.xml.messaging.saaj.SOAPExceptionImpl: Ошибка отправки сообщения в com.sun.xml.messaging.saaj.client.p2p.HttpSOAPConnection.post (HttpSOAPConnection.java:297) ~ [saaj-impl-1.5.0.jar! /: Na] на com.sun.xml.messaging.saaj.client.p2p.HttpSOAPConnection.call (HttpSOAPConnection.java:160) ~ [saaj-impl-1.5.0.jar! /: Na] ... 59 общих кадров опущено. Причина: javax.net.ssl.SSLHandshakeException: удаленное соединение закрыло соединение во время рукопожатия на sun.security.ssl.SSLSocketImpl.readRecord (неизвестный источник) ~ [na: 1.8.0_191] at sun.security.ssl.SSLSocketImpl.performInitialHandshake (неизвестный источник) ~ [na: 1.8.0_191] at sun.security.ssl.SSLSocketImpl.startHandshake (неизвестный источник) ~ [na: 1.8.0_191] atsun.security.ssl.SSLSocketImpl.startHandshake (Неизвестный источник) ~ [na: 1.8.0_191] at sun.net.www.protocol.https.HttpsClient.afterConnect (Неизвестный источник) ~ [na: 1.8.0_191] на sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect (Неизвестный источник) ~ [na: 1.8.0_191] на sun.net.www.protocol.http.HttpURLConnection.getOutputStream0 (Неизвестный источник) ~ [na: 1.8.0_191] в sun.net.www.protocol.http.HttpURLConnection.getOutputStream (Неизвестный источник) ~ [na: 1.8.0_191] в sun.net.www.protocol.https.HttpsURLConnectionImpl.getOutputStream (Неизвестный источник) ~ [na: 1.8.0_191] at com.sun.xml.messaging.saaj.client.p2p.HttpSOAPConnection.post (HttpSOAPConnection.java:252) imp [saaj-1.5.0.jar! /: Na] ... пропущено 60 общих фреймов. Причиной является: java.io.EOFException: SSL peer некорректно завершает работу на sun.security.ssl.InputRecord.read (неизвестный источник) ~ [na:1.8.0_191] ... пропущено 70 общих фреймов
Я сделал curl -v
и проверил детали URL-адресов с помощью этого сайта ssllabs
Curl Infoниже
* Expire in 0 ms for 6 (transfer 0x181648d20a0)
* Expire in 1 ms for 1 (transfer 0x181648d20a0)
* Expire in 2 ms for 1 (transfer 0x181648d20a0)
* Expire in 2 ms for 1 (transfer 0x181648d20a0)
* Expire in 3 ms for 1 (transfer 0x181648d20a0)
* Expire in 3 ms for 1 (transfer 0x181648d20a0)
* Expire in 5 ms for 1 (transfer 0x181648d20a0)
* Trying some_ip ...
* TCP_NODELAY set
* Expire in 200 ms for 4 (transfer 0x181648d20a0)
* Connected to url_not_disclosed (some_ip) port 443 (#0)
* ALPN, offering h2
* ALPN, offering http/1.1
* successfully set certificate verify locations:
* CAfile: C:\Users\Developer\Downloads\CURL\curl-7.64.0-win64-mingw\bin\curl-ca-bundle.crt
CApath: none
* TLSv1.3 (OUT), TLS handshake, Client hello (1):
* OpenSSL SSL_connect: SSL_ERROR_SYSCALL in connection to url_not_disclosed:443
* Closing connection 0
curl: (35) OpenSSL SSL_connect: SSL_ERROR_SYSCALL in connection to url_not_disclosed:443
Сведения из слябов ниже