java.net.SocketException:Connection reset / java.net.SocketException:Broken pipe

时间:2017-01-04 18:13:16

标签: java .net web-services wcf server

我有一个托管在我们外部服务器上的Web服务。第三方公司正在尝试访问Web服务并收到此错误:

SimpleAsyncTaskExecutor-1, handling exception: java.net.SocketException: Connection reset

%% Invalidated:  [Session-3, TLS_RSA_WITH_AES_128_CBC_SHA]

%% Invalidated:  [Session-4, TLS_RSA_WITH_AES_128_CBC_SHA]

SimpleAsyncTaskExecutor-1, SEND TLSv1 ALERT:  fatal, description = unexpected_message

Padded plaintext before ENCRYPTION:  len = 32

SimpleAsyncTaskExecutor-1, WRITE: TLSv1 Alert, length = 32
SimpleAsyncTaskExecutor-1, Exception sending alert:      java.net.SocketException: Broken pipe

SimpleAsyncTaskExecutor-1, called closeSocket()
SimpleAsyncTaskExecutor-1, called close()
SimpleAsyncTaskExecutor-1, called closeInternal(true)
2017-01-03 20:58:29.506 ERROR 20729 --- [nio-9000-exec-1] 
c.h.i.service.IICMVAQuery10Service       :     
java.util.concurrent.ExecutionException: javax.xml.ws.WebServiceException:     
java.net.SocketException: Connection reset
>>>>Response was NULL

我们的服务器设置为通过IIS使用SSL。我不确定这是由服务器设置还是我的Web服务配置引起的,但这是我的web.config:

<system.web>
<compilation debug="true" strict="false" explicit="true" targetFramework="4.0" />
<customErrors mode="Off"/>
</system.web>
 <system.serviceModel>
<services>
  <service name="MSFB.MSVehicleInsuranceVerification.VerificationService">
    <endpoint address=""
              binding="wsHttpBinding"
              bindingConfiguration="secureHttpBinding"
              contract="MSFB.MSVehicleInsuranceVerification.IVerificationService"
              listenUri="/" />
  </service>
</services>
<bindings>
  <wsHttpBinding>
    <binding name="secureHttpBinding">
      <security mode="Transport">
        <transport clientCredentialType="Certificate"/>
      </security>
    </binding>
  </wsHttpBinding>
</bindings>
<behaviors>
  <serviceBehaviors>
    <behavior>
      <serviceMetadata httpsGetEnabled="true" />
      <serviceDebug includeExceptionDetailInFaults="true"/>
    </behavior>
  </serviceBehaviors>
</behaviors>
<serviceHostingEnvironment multipleSiteBindingsEnabled="true" />
  </system.serviceModel>
  <system.webServer>
     <modules runAllManagedModulesForAllRequests="true"/>
  </system.webServer>

更新:

第三方更改了他们的安全设置以使用TLSv1但我们仍然收到错误以及其他损坏的管道错误:

SimpleAsyncTaskExecutor-1, handling exception: java.net.SocketException:          Connection reset
%% Invalidated:  [Session-3, TLS_RSA_WITH_AES_128_CBC_SHA]
%% Invalidated:  [Session-4, TLS_RSA_WITH_AES_128_CBC_SHA]
SimpleAsyncTaskExecutor-1, SEND TLSv1 ALERT:  fatal, description =       unexpected_message
Padded plaintext before ENCRYPTION:  len = 32
0000: 02 0A A9 B6 11 DF 3C 6C   F6 D5 6E ED EF C7 F5 78  ......<l..n....x
0010: 2C 5E 71 6E 18 E7 09 09   09 09 09 09 09 09 09 09  ,^qn............
SimpleAsyncTaskExecutor-1, WRITE: TLSv1 Alert, length = 32
SimpleAsyncTaskExecutor-1, Exception sending alert:         java.net.SocketException: Broken pipe
SimpleAsyncTaskExecutor-1, called closeSocket()
SimpleAsyncTaskExecutor-1, called close()
SimpleAsyncTaskExecutor-1, called closeInternal(true)
2017-01-05 17:52:38.957 DEBUG 7149 --- [nio-9000-exec-1]   
 w.c.HttpSessionSecurityContextRepository : SecurityContext is empty or contents are anonymous - context will not be stored in HttpSession.

0 个答案:

没有答案