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

Konrad Windszus commented on CXF-8726:
--------------------------------------

The difference with retries is that the response's entity is an 
{{java.io.SequenceInputStream}} with two input streams:
# 
{{org.apache.cxf.helpers.LoadingByteArrayOutputStream$LoadedByteArrayInputStream}}
  (containing the actual response body) and
# {{sun.net.www.protocol.http.HttpURLConnection$HttpInputStream}}

while in case of no retries, a {{java.io.SequenceInputStream}} containing only 
the first stream is returned.

The subsequent {{com.fasterxml.jackson.jaxrs.json.JacksonJsonProvider}} can 
only deal with the latter, but not with the former (i.e. returns null).


> org.apache.cxf.jaxrs.client.ResponseExceptionMapper cannot evaluate response 
> body in case of retries
> ----------------------------------------------------------------------------------------------------
>
>                 Key: CXF-8726
>                 URL: https://issues.apache.org/jira/browse/CXF-8726
>             Project: CXF
>          Issue Type: Bug
>          Components: JAX-RS
>    Affects Versions: 3.4.4
>            Reporter: Konrad Windszus
>            Priority: Major
>
> I have registered a custom 
> {{org.apache.cxf.jaxrs.client.ResponseExceptionMapper}}. In case the request 
> is retried (in my case via a {{org.apache.cxf.clustering.FailoverFeature}} 
> leveraging a {{RetryStrategy}}), the custom response exception mapper gets 
> {{null}} as return value for {{response.readEntity(Class)}} in its 
> {{fromResponse(Response response}} method as it seems this one can not/no 
> longer access the response body.
> IMHO javax.ws.rs.core.Response.readEntity(...) must never return null but 
> rather throw an exception (compare with its javadoc at 
> https://docs.oracle.com/javaee/7/api/javax/ws/rs/core/Response.html#readEntity-java.lang.Class-).



--
This message was sent by Atlassian Jira
(v8.20.7#820007)

Reply via email to