You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@cxf.apache.org by Benson Margulies <bi...@gmail.com> on 2013/01/11 01:33:44 UTC

socket closed error in JAX-RS client?

I have a relatively simple unit test that works fine on 9 out of 10 of
the systems we run it on. On System #10, (CentOS 4.8), the client gets
a Socket Closed exception trying to write the request to the server.

Does this suggest anything to anyone?

Caused by: java.net.SocketException: Socket Closed
        at java.net.PlainSocketImpl.getOption(PlainSocketImpl.java:286)
        at java.net.Socket.getSoTimeout(Socket.java:1032)
        at sun.net.www.http.HttpClient.available(HttpClient.java:356)
        at sun.net.www.http.HttpClient.New(HttpClient.java:273)
        at sun.net.www.http.HttpClient.New(HttpClient.java:310)
        at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:987)
        at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:923)
        at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:841)
        at sun.net.www.protocol.http.HttpURLConnection.getOutputStream(HttpURLConnection.java:1031)
        at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleHeadersTrustCaching(HTTPConduit.java:1394)
        at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.onFirstWrite(HTTPConduit.java:1336)
        at org.apache.cxf.io.AbstractWrappedOutputStream.write(AbstractWrappedOutputStream.java:42)
        at org.apache.cxf.io.AbstractThresholdOutputStream.unBuffer(AbstractThresholdOutputStream.java:89)
        at org.apache.cxf.io.AbstractThresholdOutputStream.write(AbstractThresholdOutputStream.java:63)
        at org.codehaus.jackson.impl.Utf8Generator._flushBuffer(Utf8Generator.java:1748)
        at org.codehaus.jackson.impl.Utf8Generator._writeStringSegment2(Utf8Generator.java:1294)
        at org.codehaus.jackson.impl.Utf8Generator._writeStringSegment(Utf8Generator.java:1277)
        at org.codehaus.jackson.impl.Utf8Generator._writeStringSegments(Utf8Generator.java:1209)
        at org.codehaus.jackson.impl.Utf8Generator._writeLongString(Utf8Generator.java:575)
        at org.codehaus.jackson.impl.Utf8Generator.writeString(Utf8Generator.java:550)
        at org.codehaus.jackson.map.ser.StdSerializers$StringSerializer.serialize(StdSerializers.java:123)
        at org.codehaus.jackson.map.ser.StdSerializers$StringSerializer.serialize(StdSerializers.java:113)
        at org.codehaus.jackson.map.ser.BeanPropertyWriter.serializeAsField(BeanPropertyWriter.java:430)
        at org.codehaus.jackson.map.ser.BeanSerializer.serializeFields(BeanSerializer.java:175)
        at org.codehaus.jackson.map.ser.BeanSerializer.serialize(BeanSerializer.java:142)
        at org.codehaus.jackson.map.ser.StdSerializerProvider._serializeValue(StdSerializerProvider.java:600)
        at org.codehaus.jackson.map.ser.StdSerializerProvider.serializeValue(StdSerializerProvider.java:280)
        at org.codehaus.jackson.map.ObjectMapper.writeValue(ObjectMapper.java:1345)
        at org.codehaus.jackson.jaxrs.JacksonJsonProvider.writeTo(JacksonJsonProvider.java:527)
        at org.apache.cxf.jaxrs.client.AbstractClient.writeBody(AbstractClient.java:401)
        ... 38 more

Re: socket closed error in JAX-RS client?

Posted by Sergey Beryozkin <sb...@gmail.com>.
On 11/01/13 00:33, Benson Margulies wrote:
> I have a relatively simple unit test that works fine on 9 out of 10 of
> the systems we run it on. On System #10, (CentOS 4.8), the client gets
> a Socket Closed exception trying to write the request to the server.
>
> Does this suggest anything to anyone?

Not really (to me at least), I guess the server becomes unavailable 
before the client gets a chance to run, as part of the test... Would it 
work if you manually start a server on CentOS and then run the test 
client against it ?

Sergey

>
> Caused by: java.net.SocketException: Socket Closed
>          at java.net.PlainSocketImpl.getOption(PlainSocketImpl.java:286)
>          at java.net.Socket.getSoTimeout(Socket.java:1032)
>          at sun.net.www.http.HttpClient.available(HttpClient.java:356)
>          at sun.net.www.http.HttpClient.New(HttpClient.java:273)
>          at sun.net.www.http.HttpClient.New(HttpClient.java:310)
>          at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:987)
>          at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:923)
>          at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:841)
>          at sun.net.www.protocol.http.HttpURLConnection.getOutputStream(HttpURLConnection.java:1031)
>          at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleHeadersTrustCaching(HTTPConduit.java:1394)
>          at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.onFirstWrite(HTTPConduit.java:1336)
>          at org.apache.cxf.io.AbstractWrappedOutputStream.write(AbstractWrappedOutputStream.java:42)
>          at org.apache.cxf.io.AbstractThresholdOutputStream.unBuffer(AbstractThresholdOutputStream.java:89)
>          at org.apache.cxf.io.AbstractThresholdOutputStream.write(AbstractThresholdOutputStream.java:63)
>          at org.codehaus.jackson.impl.Utf8Generator._flushBuffer(Utf8Generator.java:1748)
>          at org.codehaus.jackson.impl.Utf8Generator._writeStringSegment2(Utf8Generator.java:1294)
>          at org.codehaus.jackson.impl.Utf8Generator._writeStringSegment(Utf8Generator.java:1277)
>          at org.codehaus.jackson.impl.Utf8Generator._writeStringSegments(Utf8Generator.java:1209)
>          at org.codehaus.jackson.impl.Utf8Generator._writeLongString(Utf8Generator.java:575)
>          at org.codehaus.jackson.impl.Utf8Generator.writeString(Utf8Generator.java:550)
>          at org.codehaus.jackson.map.ser.StdSerializers$StringSerializer.serialize(StdSerializers.java:123)
>          at org.codehaus.jackson.map.ser.StdSerializers$StringSerializer.serialize(StdSerializers.java:113)
>          at org.codehaus.jackson.map.ser.BeanPropertyWriter.serializeAsField(BeanPropertyWriter.java:430)
>          at org.codehaus.jackson.map.ser.BeanSerializer.serializeFields(BeanSerializer.java:175)
>          at org.codehaus.jackson.map.ser.BeanSerializer.serialize(BeanSerializer.java:142)
>          at org.codehaus.jackson.map.ser.StdSerializerProvider._serializeValue(StdSerializerProvider.java:600)
>          at org.codehaus.jackson.map.ser.StdSerializerProvider.serializeValue(StdSerializerProvider.java:280)
>          at org.codehaus.jackson.map.ObjectMapper.writeValue(ObjectMapper.java:1345)
>          at org.codehaus.jackson.jaxrs.JacksonJsonProvider.writeTo(JacksonJsonProvider.java:527)
>          at org.apache.cxf.jaxrs.client.AbstractClient.writeBody(AbstractClient.java:401)
>          ... 38 more