cxf-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Andrei Shakirin <ashaki...@talend.com>
Subject Confusing error message "Problem writing SAAJ model to stream" in case if service not avalable
Date Tue, 18 Oct 2011 10:58:09 GMT
Hi,

Just to be sure that proposed improvement makes sense and has no drawbacks.

use case: Dispatch client sends stream message to remote Web Service using following code:

final Dispatch<StaxSource> dispatch = service.createDispatch(PORT_NAME,
             StaxSource.class, Service.Mode.MESSAGE);
final StaxSource response = dispatch.invoke(request);

In case if remote service is just not available, code throws following SoapFault:
org.apache.cxf.binding.soap.SoapFault: Problem writing SAAJ model to stream
        at org.apache.cxf.binding.soap.saaj.SAAJOutInterceptor$SAAJOutEndingInterceptor.ha
ndleMessage(SAAJOutInterceptor.java:214)[132:org.apache.cxf.bundle:2.4.2]
        at org.apache.cxf.binding.soap.saaj.SAAJOutInterceptor$SAAJOutEndingInterceptor.ha
ndleMessage(SAAJOutInterceptor.java:170)[132:org.apache.cxf.bundle:2.4.2]
        at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.ja
va:263)[132:org.apache.cxf.bundle:2.4.2]

To be honest, the error message is quite confusing, I expect "Connection refused" exception
here.

The wrapped Exception is available:
Caused by: com.ctc.wstx.exc.WstxIOException: Connection refused: connect
        at com.ctc.wstx.sw.BaseStreamWriter.flush(BaseStreamWriter.java:257)

Question: does it make sense to explicitly check for connection refused case in SAAJOutInterceptor
(XMLStreamWriter.flush()) and provide more understandable message for the user?  I guess this
error happens quite often by the web applications.
If yes, I am going to create Jira issue and provide a patch.

Regards,
Andrei.

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message