【问题标题】:Soap UI: ERROR:java.net.SocketException: Connection resetSoap UI:错误:java.net.SocketException:连接重置
【发布时间】:2017-08-15 21:12:53
【问题描述】:

我收到错误消息:

java.net.SocketException:连接重置。

我已按照以下链接解决此问题。但没有运气..

我在下面给出了错误日志。谁能看看这个,让我知道如何解决这个问题?

Thu Mar 23 16:11:51 IST 2017:ERROR:java.net.SocketException: Connection reset
   java.net.SocketException: Connection reset
    at java.net.SocketInputStream.read(Unknown Source)
    at java.net.SocketInputStream.read(Unknown Source)
    at sun.security.ssl.InputRecord.readFully(Unknown Source)
    at sun.security.ssl.InputRecord.read(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:113)
    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:247)
    at com.eviware.soapui.impl.wsdl.support.http.HttpClientSupport.execute(HttpClientSupport.java:362)
    at com.eviware.soapui.impl.wsdl.submit.transports.http.HttpClientRequestTransport.submitRequest(HttpClientRequestTransport.java:324)
    at com.eviware.soapui.impl.wsdl.submit.transports.http.HttpClientRequestTransport.sendRequest(HttpClientRequestTransport.java:237)
    at com.eviware.soapui.impl.wsdl.WsdlSubmit.run(WsdlSubmit.java:127)
    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 的电话时,我收到了错误。
  • 请使用-Djavax.net.debug=ssl,handshake 运行您的客户端并将结果发布到您的问题中。如果您的服务器正在进行客户端身份验证,请同时提供相关的客户端设置。

标签: java soapui


【解决方案1】:

尝试了所有解决方案,但没有任何效果。它在忽略 SoapUI 中的 jre 目录后开始工作。因此,如果上述解决方案不适合您,请尝试以下操作:

  1. 关闭 SoapUI
  2. 转到 SoapUi 目录,例如:C:\Program Files\SmartBear\SoapUI-5.3.0\
  3. 将目录“jre”重命名为“jre.ignore”
  4. 完成。打开 SoapUi,它现在应该可以工作了。

【讨论】:

  • 我不明白为什么有人不赞成这个答案,但这个错误仍然出现在新版本中。我们的整个开发团队都有同样的问题。一周前,甚至我的客户在 Mac 上也遇到了同样的问题。使用默认 java 而不是 SoapUI java 会有所帮助。最有可能提到的问题可能有多个来源,但最好不要忽略这个,因为对我、我的同事和我的客户来说,这个解决方案总是有帮助的。
  • 这确实有效!不知道为什么,但这是唯一有效的解决方案。
  • 当我重命名文件夹并重新启动 SOAPUI 时,我收到消息“在您的系统上找不到 JVM...”(SOAPUI 5.4.0)
  • @Roeland 您是否安装了 java 并设置了 java home(系统变量路径)?这可能与此有关。
  • 您好 Krzysztof,我需要安装 32 位版本而不是 64 位版本。但是,现在我仍然收到连接重置消息
【解决方案2】:

WINDOWS

选项 1:

  1. 在您的计算机上找到以下文件(确保您对该文件具有写入权限):C:\Program Files\SmartBear\SoapUI-5.2.1\bin\SoapUI-5.2.1.vmoptions

  2. 将以下行添加到文件中:

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

  1. 使用 .exe 文件运行 SoapUI (SoapUI-5.2.1.exe)

选项 2:(如果选项 1 不适合您)。

  1. 在您的计算机上编辑以下批处理文件(确保您对该文件具有写入权限):C:\Program Files\SmartBear\SoapUI-5.2.1\bin\soapui.bat
  2. 将以下行添加到文件中(在:if "%SOAPUI_HOME%" == "" goto START 之后):

set JAVA_OPTS=%JAVA_OPTS% -Dsoapui.https.protocols="SSLv3,TLSv1.2"

  1. 使用批处理文件运行 SoapUI (soapui.bat)

MAC (OSX)

Mac 的默认安装位置在根应用程序文件夹中,vmoptions.txt 文件就在其中。右键单击 SOAPUI .app 文件(在 /Applications 文件夹中),然后选择“显示包内容”以访问内部文件。

/Applications/SoapUI-X.X.X.app/Contents/vmoptions.txt

将以下行添加到vmoptions.txt 文件中:

-Dsoapui.https.protocols=TLSv1.2

Linux

  1. 编辑:bin/SoapUI-5.3.0.vmoptions 在 SoapUI 目录中

  2. 将以下行添加到文件中:

-Dsoapui.https.protocols=TLSv1.2

希望对你有帮助。

【讨论】:

  • 谢谢 - 注意:我不得不省略 .vmoptions 文件 (Windows) 中的语音标记,如下所示:-Dsoapui.https.protocols=SSLv3,TLSv1.2
  • 如果您使用的是 Windows 7(例如,如果您使用 iisexpress for dev),您必须启用 TLSv1.2 协议。见:derekseaman.com/2010/06/…
  • Option1/Windows 在 SoapUI 5.3.0 中为我工作。但是,我必须删除引号才能使其工作:-Dsoapui.https.protocols=SSLv3,TLSv1.2
  • 不幸的是,这两个选项都不适合我;带或不带引号。
【解决方案3】:

仅用于测试目的:如果一切都失败了,您也可以只使用 http 而不是 https。只需在 SoapUI 窗口中编辑请求的 url。

【讨论】:

    【解决方案4】:

    我认为您正在使用公司连接并且公司防火墙阻止了连接。

    【讨论】:

    • 他已经有一个已写入的连接,并且正在读取它。 *Ergo 防火墙没有阻止它。
    【解决方案5】:

    通过删除注册表中的协议 TLS 1.0 可以正常工作。

    Invoke-WebRequest SSL fails? 这篇文章对解决这个问题很有用。

    【讨论】:

    • 能否请您写一些关于“删除注册表中的协议”的更详细的答案?
    猜你喜欢
    • 2017-09-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-01
    • 2010-09-08
    • 2021-03-10
    相关资源
    最近更新 更多