[ 
https://issues.apache.org/jira/browse/CXF-5763?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14020236#comment-14020236
 ] 

Daniel Kulp commented on CXF-5763:
----------------------------------

Is there any way to create a testcase for this?   I'm most interested in the 
code around the WebClient calls and the size of the messages.

I'm not able to reproduce this at all.   The only ways I can see this exception 
occurring is if close() is called multiple times on the output stream.  That 
would keep the "chunked" set to false but replace the wrappedStream with the 
anonymous version.  

However, that could potentially cause all kinds of other problems which is why 
I'd really like a test case so I can breakpoint in the close to see where that 
is happening.

> ClassCast Exception in AsyncHTTPConduit$AsyncWrappedOutputStream.close() 
> method when using async and HttpAsyncClient 
> ---------------------------------------------------------------------------------------------------------------------
>
>                 Key: CXF-5763
>                 URL: https://issues.apache.org/jira/browse/CXF-5763
>             Project: CXF
>          Issue Type: Bug
>          Components: Transports
>    Affects Versions: 3.0.0
>         Environment: Linux
> Java 7
>            Reporter: Anthony Communier
>         Attachments: TestUnsubscribeSM-output.txt
>
>
> Sometimes there is an error on connection close when using async client 
> javax.ws.rs.ProcessingException: java.lang.ClassCastException: 
> org.apache.cxf.transport.http.asyncclient.AsyncHTTPConduit$AsyncWrappedOutputStream$1
>  cannot be cast to org.apache.cxf.io.CachedOutputStream
>       at 
> org.apache.cxf.jaxrs.client.WebClient.handleAsyncResponse(WebClient.java:1010)
>  [cxf-rt-rs-client-3.0.0.jar:3.0.0]
>       at org.apache.cxf.jaxrs.client.WebClient.access$100(WebClient.java:81) 
> [cxf-rt-rs-client-3.0.0.jar:3.0.0]
>       at 
> org.apache.cxf.jaxrs.client.WebClient$ClientAsyncResponseInterceptor.handleMessage(WebClient.java:1298)
>  ~[cxf-rt-rs-client-3.0.0.jar:3.0.0]
>       at 
> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:307)
>  ~[cxf-core-3.0.0.jar:3.0.0]
>       at 
> org.apache.cxf.jaxrs.client.ClientMessageObserver.onMessage(ClientMessageObserver.java:56)
>  ~[cxf-rt-rs-client-3.0.0.jar:3.0.0]
>       at 
> org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream$1.run(HTTPConduit.java:1154)
>  ~[cxf-rt-transports-http-3.0.0.jar:3.0.0]
>       at 
> org.apache.cxf.workqueue.AutomaticWorkQueueImpl$3.run(AutomaticWorkQueueImpl.java:428)
>  ~[cxf-core-3.0.0.jar:3.0.0]
>       at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
>  ~[na:1.7.0_25]
>       at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
>  ~[na:1.7.0_25]
>       at 
> org.apache.cxf.workqueue.AutomaticWorkQueueImpl$AWQThreadFactory$1.run(AutomaticWorkQueueImpl.java:353)
>  ~[cxf-core-3.0.0.jar:3.0.0]
>       at java.lang.Thread.run(Thread.java:724) ~[na:1.7.0_25]
> Caused by: java.lang.ClassCastException: 
> org.apache.cxf.transport.http.asyncclient.AsyncHTTPConduit$AsyncWrappedOutputStream$1
>  cannot be cast to org.apache.cxf.io.CachedOutputStream
>       at 
> org.apache.cxf.transport.http.asyncclient.AsyncHTTPConduit$AsyncWrappedOutputStream.close(AsyncHTTPConduit.java:397)
>  ~[cxf-rt-transports-http-hc-3.0.0.jar:3.0.0]
>       at 
> org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:56) 
> ~[cxf-core-3.0.0.jar:3.0.0]
>       at 
> org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:638) 
> ~[cxf-rt-transports-http-3.0.0.jar:3.0.0]
>       at 
> org.apache.cxf.endpoint.AbstractConduitSelector.complete(AbstractConduitSelector.java:209)
>  ~[cxf-core-3.0.0.jar:3.0.0]
>       at 
> org.apache.cxf.jaxrs.client.AbstractClient.preProcessResult(AbstractClient.java:534)
>  ~[cxf-rt-rs-client-3.0.0.jar:3.0.0]
>       at 
> org.apache.cxf.jaxrs.client.WebClient.handleAsyncResponse(WebClient.java:1005)
>  [cxf-rt-rs-client-3.0.0.jar:3.0.0]
>       ... 10 common frames omitted



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to