【问题标题】:Soap ui SSl error ERROR:javax.net.ssl.SSLException: Received fatal alert: protocol_versionSoap ui Ssl 错误错误:javax.net.ssl.SSLException:收到致命警报:protocol_version
【发布时间】:2018-02-16 01:38:33
【问题描述】:

当我通过 https 访问服务时,我看到以下错误。我尝试在 Soap ui VM 选项文件中更改 TLS 版本,如下所示:

-Dsoapui.https.protocols=TLSv1.0 -Dsoapui.https.protocols=TLSv1.2

没有运气。请指教

    Thu Sep 07 11:32:47 BST 2017:ERROR:javax.net.ssl.SSLException: Received fatal alert: protocol_version
   javax.net.ssl.SSLException: Received fatal alert: protocol_version
    at sun.security.ssl.Alerts.getSSLException(Unknown Source)
    at sun.security.ssl.Alerts.getSSLException(Unknown Source)
    at sun.security.ssl.SSLSocketImpl.recvAlert(Unknown Source)
    at sun.security.ssl.SSLSocketImpl.readRecord(Unknown Source)
    at sun.security.ssl.SSLSocketImpl.performInitialHandshake(Unknown Source)
    at sun.security.ssl.SSLSocketImpl.writeRecord(Unknown Source)
    at sun.security.ssl.AppOutputStream.write(Unknown Source)
    at org.apache.http.impl.io.AbstractSessionOutputBuffer.flushBuffer(AbstractSessionOutputBuffer.java:131)
    at org.apache.http.impl.io.AbstractSessionOutputBuffer.flush(AbstractSessionOutputBuffer.java:138)
    at org.apache.http.impl.conn.LoggingSessionOutputBuffer.flush(LoggingSessionOutputBuffer.java:95)
    at org.apache.http.impl.AbstractHttpClientConnection.doFlush(AbstractHttpClientConnection.java:270)
    at org.apache.http.impl.AbstractHttpClientConnection.flush(AbstractHttpClientConnection.java:275)
    at org.apache.http.impl.conn.AbstractClientConnAdapter.flush(AbstractClientConnAdapter.java:197)
    at org.apache.http.protocol.HttpRequestExecutor.doSendRequest(HttpRequestExecutor.java:258)
    at com.eviware.soapui.impl.wsdl.support.http.HttpClientSupport$SoapUIHttpRequestExecutor.doSendRequest(HttpClientSupport.java:119)
    at org.apache.http.protocol.HttpRequestExecutor.execute(HttpRequestExecutor.java:123)
    at org.apache.http.impl.client.DefaultRequestDirector.tryExecute(DefaultRequestDirector.java:633)
    at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:454)
    at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:820)
    at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:754)
    at com.eviware.soapui.impl.wsdl.support.http.HttpClientSupport$Helper.execute(HttpClientSupport.java:233)
    at com.eviware.soapui.impl.wsdl.support.http.HttpClientSupport.execute(HttpClientSupport.java:323)
    at com.eviware.soapui.impl.wsdl.submit.transports.http.HttpClientRequestTransport.submitRequest(HttpClientRequestTransport.java:297)
    at com.eviware.soapui.impl.wsdl.submit.transports.http.HttpClientRequestTransport.sendRequest(HttpClientRequestTransport.java:227)
    at com.eviware.soapui.impl.wsdl.WsdlSubmit.run(WsdlSubmit.java:119)
    at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
    at java.util.concurrent.FutureTask.run(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)

注意:SoapUI 版本为 5.3.0,Java 版本为

【问题讨论】:

  • 尝试使用一个版本。 1.01.11.2 但不能在一起。
  • @Rao 是的,我一直在尝试一个......但没有运气......
  • @Nareshsadu 您是否设法找到解决此问题的方法?我在使用相同版本时遇到了同样的问题。

标签: ssl soapui tls1.2


【解决方案1】:

请将 -Dsoapui.https.protocols=SSLv3,TLSv1.2 添加到 SoapUI-5.3.0.vmoptions 文件中,应该可以解决问题。

【讨论】:

  • javax.net.ssl.SSLHandshakeException: 没有适当的协议(协议被禁用或密码套件不合适) - 添加上述行后出现此错误
【解决方案2】:

对于那些在更改您的 vmoptions 文件后仍然无法让 SoapUI 工作的人,这是try 的下一件事。

根据 SiKing 的说法,问题在于提供的 Java 版本与 SoapUI 捆绑在一起。 SoapUI 很聪明,如果找不到自己的版本,它会查找本地版本,因此只需重命名 jre 文件夹即可解决问题。

  1. 转到您的 SoapUI 安装文件夹
  2. 重命名jre文件夹jre.ignore
  3. 重新启动 SoapUI。

这解决了我的问题。

【讨论】:

    【解决方案3】:

    在运行 SOAP UI 时修复 SSL 错误

    我在 SoapUI 中遇到了以下错误 javax.net.ssl.SSLException: Received fatal alert: protocol_version 的相同问题。但是通过在文件SoapUI-5.3.0.vmoptions

    中添加https.protocols系统属性来解决

    • 使用记事本打开文件。
    • 将此协议添加到底部“-Dsoapui.https.protocols=SSLv3,TLSv1.2”并保存更改。
    • 关闭 SOAP UI 并重新启动。当您进行 API 调用时,它不会出现 SSL 错误。 (执行测试 ping 调用以检查)。

    在 Bin 文件夹下的 VMOPTIONS 文件中添加 (-Dsoapui.https.protocols=SSLv3,TLSv1.2)。如:C:\Softwares\SoapUI-5.3.0\bin\SoapUI-5.3.0.vmoptions

    -XX:MinHeapFreeRatio=20
    -XX:MaxHeapFreeRatio=40
    -Xms128m
    -Xmx1000m
    -Dsoapui.properties=soapui.properties
    -Dsoapui.home=C:\Softwares\SoapUI-5.3.0/bin
    -Dsoapui.ext.libraries=C:\Softwares\SoapUI-5.3.0/bin/ext
    -Dsoapui.ext.listeners=C:\Softwares\SoapUI-5.3.0/bin/listeners
    -Dsoapui.ext.actions=C:\Softwares\SoapUI-5.3.0/bin/actions
    -Dwsi.dir=C:\Softwares\SoapUI-5.3.0/wsi-test-tools
    -Djava.library.path=C:\Softwares\SoapUI-5.3.0/bin
    -Djava.util.Arrays.useLegacyMergeSort=true
    -splash:SoapUI-Spashscreen.png
    -Dsoapui.https.protocols=SSLv3,TLSv1.2
    

    完整的错误日志:

    Mon Sep 14 07:47:30 CEST 2020:DEBUG:I/O error closing connection
       javax.net.ssl.SSLException: Connection has been shutdown: javax.net.ssl.SSLException: Received fatal alert: protocol_version
        at sun.security.ssl.SSLSocketImpl.checkEOF(Unknown Source)
        at sun.security.ssl.SSLSocketImpl.checkWrite(Unknown Source)
        at sun.security.ssl.AppOutputStream.write(Unknown Source)
        at org.apache.http.impl.io.AbstractSessionOutputBuffer.flushBuffer(AbstractSessionOutputBuffer.java:131)
        at org.apache.http.impl.io.AbstractSessionOutputBuffer.flush(AbstractSessionOutputBuffer.java:138)
        at org.apache.http.impl.conn.LoggingSessionOutputBuffer.flush(LoggingSessionOutputBuffer.java:95)
        at org.apache.http.impl.AbstractHttpClientConnection.doFlush(AbstractHttpClientConnection.java:270)
        at org.apache.http.impl.SocketHttpClientConnection.close(SocketHttpClientConnection.java:245)
        at org.apache.http.impl.conn.DefaultClientConnection.close(DefaultClientConnection.java:164)
        at org.apache.http.impl.conn.AbstractPooledConnAdapter.close(AbstractPooledConnAdapter.java:152)
        at org.apache.http.protocol.HttpRequestExecutor.closeConnection(HttpRequestExecutor.java:142)
        at org.apache.http.protocol.HttpRequestExecutor.execute(HttpRequestExecutor.java:129)
        at org.apache.http.impl.client.DefaultRequestDirector.tryExecute(DefaultRequestDirector.java:633)
        at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:454)
        at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:820)
        at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:754)
        at com.eviware.soapui.impl.wsdl.support.http.HttpClientSupport$Helper.execute(HttpClientSupport.java:233)
        at com.eviware.soapui.impl.wsdl.support.http.HttpClientSupport.execute(HttpClientSupport.java:323)
        at com.eviware.soapui.impl.wsdl.submit.transports.http.HttpClientRequestTransport.submitRequest(HttpClientRequestTransport.java:297)
        at com.eviware.soapui.impl.wsdl.submit.transports.http.HttpClientRequestTransport.sendRequest(HttpClientRequestTransport.java:227)
        at com.eviware.soapui.impl.wsdl.WsdlSubmit.run(WsdlSubmit.java:119)
        at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
        at java.util.concurrent.FutureTask.run(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at java.lang.Thread.run(Unknown Source)
       Caused by: javax.net.ssl.SSLException: Received fatal alert: protocol_version
        at sun.security.ssl.Alerts.getSSLException(Unknown Source)
        at sun.security.ssl.Alerts.getSSLException(Unknown Source)
        at sun.security.ssl.SSLSocketImpl.recvAlert(Unknown Source)
        at sun.security.ssl.SSLSocketImpl.readRecord(Unknown Source)
        at sun.security.ssl.SSLSocketImpl.performInitialHandshake(Unknown Source)
        at sun.security.ssl.SSLSocketImpl.writeRecord(Unknown Source)
        at sun.security.ssl.AppOutputStream.write(Unknown Source)
        at org.apache.http.impl.io.AbstractSessionOutputBuffer.flushBuffer(AbstractSessionOutputBuffer.java:131)
        at org.apache.http.impl.io.AbstractSessionOutputBuffer.write(AbstractSessionOutputBuffer.java:151)
        at org.apache.http.impl.conn.LoggingSessionOutputBuffer.write(LoggingSessionOutputBuffer.java:74)
        at org.apache.http.impl.io.ContentLengthOutputStream.write(ContentLengthOutputStream.java:114)
        at org.apache.http.impl.io.ContentLengthOutputStream.write(ContentLengthOutputStream.java:120)
        at org.apache.http.entity.ByteArrayEntity.writeTo(ByteArrayEntity.java:68)
        at org.apache.http.entity.HttpEntityWrapper.writeTo(HttpEntityWrapper.java:96)
        at org.apache.http.impl.client.EntityEnclosingRequestWrapper$EntityWrapper.writeTo(EntityEnclosingRequestWrapper.java:108)
        at org.apache.http.impl.entity.EntitySerializer.serialize(EntitySerializer.java:120)
        at org.apache.http.impl.AbstractHttpClientConnection.sendRequestEntity(AbstractHttpClientConnection.java:263)
        at org.apache.http.impl.conn.AbstractClientConnAdapter.sendRequestEntity(AbstractClientConnAdapter.java:227)
        at org.apache.http.protocol.HttpRequestExecutor.doSendRequest(HttpRequestExecutor.java:255)
        at com.eviware.soapui.impl.wsdl.support.http.HttpClientSupport$SoapUIHttpRequestExecutor.doSendRequest(HttpClientSupport.java:119)
        at org.apache.http.protocol.HttpRequestExecutor.execute(HttpRequestExecutor.java:123)
        ... 14 more
    Mon Sep 14 07:47:30 CEST 2020:DEBUG:Closing the connection.
    Mon Sep 14 07:47:30 CEST 2020:DEBUG:Connection closed
    Mon Sep 14 07:47:30 CEST 2020:DEBUG:Connection shut down
    Mon Sep 14 07:47:30 CEST 2020:ERROR:Exception in request: javax.net.ssl.SSLException: Received fatal alert: protocol_version
    Mon Sep 14 07:47:30 CEST 2020:ERROR:An error occurred [Received fatal alert: protocol_version], see error log for details
    Mon Sep 14 07:47:30 CEST 2020:INFO:Error getting response for [ScheduleSoap11.SendScheduleMessage:Request 1]; javax.net.ssl.SSLException: Received fatal alert: protocol_version
    

    @见

    【讨论】:

      【解决方案4】:

      您可以在 SoapUI-5.3.1.vmoptions 文件中配置受支持的 SSL 版本,方法是添加一行,例如:

      -Dsoapui.https.protocols=SSLv3,TLSv1.2

      【讨论】:

        猜你喜欢
        • 2013-05-08
        • 1970-01-01
        • 2016-06-12
        • 2020-06-01
        • 2021-08-29
        • 2017-03-22
        • 1970-01-01
        • 2013-07-08
        • 2016-02-09
        相关资源
        最近更新 更多