Вызвано: java.сеть.SocketException: неожиданный конец файла с сервера
Я получаю приведенную ниже ошибку довольно периодически, когда я запускаю WS через SOAP UI. Иногда это не работает, а затем продолжает работать, а затем снова иногда это не работает. Еще одна проблема-тестовый веб-сервис отлично работает, предоставленный клиентом без проблем, но в тот момент, когда мы переключаемся на производство, он дает проблемы. Googled и сделал некоторые изменения (тайм-аут на HttpConfig, jetty maxIdleTime), но все еще не могу заставить его работать : (любые идеи, как я могу сузить, что проблема ?
org.apache.cxf.interceptor.Fault: Could not send Message.
at org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:64)[147:org.apache.cxf.cxf-api:2.6.0.redhat-60024]
at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:262)[147:org.apache.cxf.cxf-api:2.6.0.redhat-60024]
Caused by: java.net.SocketException: SocketException invoking https://www.website:443/gateway/ServicePortV2: Unexpected end of file from server
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)[:1.7.0_25]
Caused by: java.net.SocketException: Unexpected end of file from server
at sun.net.www.http.HttpClient.parseHTTPHeader(HttpClient.java:718)[:1.7.0_25]
at sun.net.www.http.HttpClient.parseHTTP(HttpClient.java:579)[:1.7.0_25]
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1322)[:1.7.0_25]
at java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:468)[:1.7.0_25]
at sun.net.www.protocol.https.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java:338)[:1.7.0_25]
at org.apache.cxf.transport.http.HTTPConduit.processRetransmit(HTTPConduit.java:1004)[159:org.apache.cxf.cxf-rt-transports-http:2.6.0.redhat-60024]
at org.apache.cxf.transport.http.HTTPConduit.access0(HTTPConduit.java:148)[159:org.apache.cxf.cxf-rt-transports-http:2.6.0.redhat-60024]
at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleRetransmits(HTTPConduit.java:1504)[159:org.apache.cxf.cxf-rt-transports-http:2.6.0.redhat-60024]
at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponse(HTTPConduit.java:1525)[159:org.apache.cxf.cxf-rt-transports-http:2.6.0.redhat-60024]
at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1438)[159:org.apache.cxf.cxf-rt-transports-http:2.6.0.redhat-60024]
просто добавить использование SOAP UI с конечной точкой производства отлично работает.
1 ответов
мы, наконец, узнали, что на стороне сервера установлен тайм-аут соединения, поэтому наши keep alive соединения будут тайм-аут после выделенного времени и, следовательно, прерывистых ошибок. Изменено соединение, чтобы закрыть каждый раз, и все хорошо.