[ 
https://issues.apache.org/jira/browse/CXF-9022?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Christoph Schulz updated CXF-9022:
----------------------------------
    Description: 
when a server responds with http 500 without a body (e.g. .NET on IIS), CXF 
throws the exception below.

while not tested on newest CXF (yet), [the source code 
suggest|https://github.com/apache/cxf/blob/5079fe1194eeb0f006c997797a476d98a2137518/rt/transports/http/src/main/java/org/apache/cxf/transport/http/HTTPConduit.java#L1673]
 it also occurs on latest versions.

{code:java}
org.apache.cxf.binding.soap.SoapFault: Error reading XMLStreamReader: 
Unexpected EOF in prolog
 at [row,col {unknown-source}]: [1,0]
        at 
org.apache.cxf.binding.soap.interceptor.ReadHeadersInterceptor.handleMessage(ReadHeadersInterceptor.java:303)
        at 
org.apache.cxf.binding.soap.interceptor.ReadHeadersInterceptor.handleMessage(ReadHeadersInterceptor.java:70)
        at 
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:307)
        at org.apache.cxf.endpoint.ClientImpl.onMessage(ClientImpl.java:921)
        at 
org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponseInternal(HTTPConduit.java:1725)
        at 
org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponse(HTTPConduit.java:1591)
        at 
org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1388)
        at 
org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:56)
        at org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:688)
        at 
org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:63)
        at 
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:307)
        at org.apache.cxf.endpoint.ClientImpl.doInvoke(ClientImpl.java:530)
        at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:441)
        at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:356)
        at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:314)
        at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:96)
        at 
org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:140)
{code}

  was:
when a server responds with http 500 without a body (e.g. .NET on IIS), CXF 
throws

while not tested on newest CXF (yet), [the source code 
suggest|https://github.com/apache/cxf/blob/5079fe1194eeb0f006c997797a476d98a2137518/rt/transports/http/src/main/java/org/apache/cxf/transport/http/HTTPConduit.java#L1673]
 it also occurs on latest versions.
{code:java}
org.apache.cxf.binding.soap.SoapFault: Error reading XMLStreamReader: 
Unexpected EOF in prolog
 at [row,col {unknown-source}]: [1,0]
        at 
org.apache.cxf.binding.soap.interceptor.ReadHeadersInterceptor.handleMessage(ReadHeadersInterceptor.java:303)
        at 
org.apache.cxf.binding.soap.interceptor.ReadHeadersInterceptor.handleMessage(ReadHeadersInterceptor.java:70)
        at 
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:307)
        at org.apache.cxf.endpoint.ClientImpl.onMessage(ClientImpl.java:921)
        at 
org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponseInternal(HTTPConduit.java:1725)
        at 
org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponse(HTTPConduit.java:1591)
        at 
org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1388)
        at 
org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:56)
        at org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:688)
        at 
org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:63)
        at 
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:307)
        at org.apache.cxf.endpoint.ClientImpl.doInvoke(ClientImpl.java:530)
        at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:441)
        at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:356)
        at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:314)
        at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:96)
        at 
org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:140)
{code}


> HTTP 500 handling
> -----------------
>
>                 Key: CXF-9022
>                 URL: https://issues.apache.org/jira/browse/CXF-9022
>             Project: CXF
>          Issue Type: Improvement
>    Affects Versions: 3.5.8
>            Reporter: Christoph Schulz
>            Priority: Major
>
> when a server responds with http 500 without a body (e.g. .NET on IIS), CXF 
> throws the exception below.
> while not tested on newest CXF (yet), [the source code 
> suggest|https://github.com/apache/cxf/blob/5079fe1194eeb0f006c997797a476d98a2137518/rt/transports/http/src/main/java/org/apache/cxf/transport/http/HTTPConduit.java#L1673]
>  it also occurs on latest versions.
> {code:java}
> org.apache.cxf.binding.soap.SoapFault: Error reading XMLStreamReader: 
> Unexpected EOF in prolog
>  at [row,col {unknown-source}]: [1,0]
>       at 
> org.apache.cxf.binding.soap.interceptor.ReadHeadersInterceptor.handleMessage(ReadHeadersInterceptor.java:303)
>       at 
> org.apache.cxf.binding.soap.interceptor.ReadHeadersInterceptor.handleMessage(ReadHeadersInterceptor.java:70)
>       at 
> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:307)
>       at org.apache.cxf.endpoint.ClientImpl.onMessage(ClientImpl.java:921)
>       at 
> org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponseInternal(HTTPConduit.java:1725)
>       at 
> org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponse(HTTPConduit.java:1591)
>       at 
> org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1388)
>       at 
> org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:56)
>       at org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:688)
>       at 
> org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:63)
>       at 
> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:307)
>       at org.apache.cxf.endpoint.ClientImpl.doInvoke(ClientImpl.java:530)
>       at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:441)
>       at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:356)
>       at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:314)
>       at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:96)
>       at 
> org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:140)
> {code}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to