I ran into this problem as well. Try lowering your logging setting to INFO. There's a bug in which higher logging settings result in the headers being sent early.
On Tue, May 10, 2011 at 11:27 AM, eneko.fernandez <[email protected] > wrote: > Hi All, > > I'm developing a generic ws client using cxf dynamic client which has been > working fine for months using CXF 2.3.3, but when I upgraded to CXF 2.4.0 I > got an exception invoking ws... > > Caused by: java.io.IOException: IOException invoking {URL to endpoint}: > Stream is closed > at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native > Method) > at > > sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39) > at > > sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) > at java.lang.reflect.Constructor.newInstance(Constructor.java:513) > at > > org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.mapException(HTTPConduit.java:1385) > at > > org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1370) > at > org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:56) > at > org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:614) > at > > org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:62) > at > > org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:263) > at org.apache.cxf.endpoint.ClientImpl.doInvoke(ClientImpl.java:484) > at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:414) > at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:317) > at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:269) > at > org.apache.cxf.endpoint.ClientImpl.invokeWrapped(ClientImpl.java:304) > at org.apache.cxf.jaxws.DispatchImpl.invoke(DispatchImpl.java:332) > ... 28 more > Caused by: java.io.IOException: Stream is closed > at > > sun.net.www.protocol.http.HttpURLConnection$StreamingOutputStream.checkError(HttpURLConnection.java:2799) > at > > sun.net.www.protocol.http.HttpURLConnection$StreamingOutputStream.write(HttpURLConnection.java:2788) > at > > org.apache.cxf.io.AbstractWrappedOutputStream.write(AbstractWrappedOutputStream.java:46) > at > > org.apache.cxf.io.AbstractThresholdOutputStream.write(AbstractThresholdOutputStream.java:69) > at > > org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1342) > ... 38 more > > Handler's chain for cxf 2.3.3 > > Chain org.apache.cxf.phase.PhaseInterceptorChain@1bbf341 was modified. > Current flow: > pre-logical [HolderOutInterceptor, SwAOutInterceptor, > WrapperClassOutInterceptor, SoapHeaderOutFilterInterceptor] > post-logical [SoapPreProtocolOutInterceptor] > prepare-send [MessageModeOutInterceptor, MessageSenderInterceptor] > pre-stream [AttachmentOutInterceptor, StaxOutInterceptor] > pre-protocol [MessageModeOutInterceptorInternal, SAAJOutInterceptor] > write [SoapOutInterceptor] > marshal [BareOutInterceptor] > write-ending [SoapOutEndingInterceptor] > pre-protocol-ending [SAAJOutEndingInterceptor] > pre-stream-ending [StaxOutEndingInterceptor] > prepare-send-ending [MessageSenderEndingInterceptor] > > > Handler's chain for cxf 2.4.0 > > Chain org.apache.cxf.phase.PhaseInterceptorChain@185b10b was modified. > Current flow: > pre-logical [HolderOutInterceptor, SwAOutInterceptor, > WrapperClassOutInterceptor, SoapHeaderOutFilterInterceptor] > post-logical [SoapPreProtocolOutInterceptor] > prepare-send [MessageModeOutInterceptor, MessageSenderInterceptor] > pre-stream [AttachmentOutInterceptor, StaxOutInterceptor] > pre-protocol [MessageModeOutInterceptorInternal, SAAJOutInterceptor] > write [SoapOutInterceptor] > marshal [BareOutInterceptor] > write-ending [SoapOutEndingInterceptor] > pre-protocol-ending [SAAJOutEndingInterceptor] > pre-stream-ending [StaxOutEndingInterceptor] > prepare-send-ending [MessageSenderEndingInterceptor] > > Checking the Log I can see how version 2.3.3 brings out this message > > Sending POST Message with Headers to {URL to endpoint}:Conduit > :{http://www.can.es/xml/sf/gpidpers}GPIDPERS_Port.http-conduit > Content-Type: text/xml; charset=UTF-8 > > Hoewer the same message in CXF 2.4.0 > > Sending POST Message with Headers to {URL to endpoint}:Conduit > :{http://www.can.es/xml/sf/gpidpers}GPIDPERS_Port.http-conduit > Content-Type: null > > In addition, I've monitored http request in both situations and http > request > wasnt sent using CXF 2.4.0 > > Any suggestion will be appreciated, > > Thanks in advance... > > -- > View this message in context: > http://cxf.547215.n5.nabble.com/Stream-is-closed-Exception-when-upgrade-from-CXF-2-3-3-to-CXF-2-4-0-tp4385277p4385277.html > Sent from the cxf-user mailing list archive at Nabble.com. >
