You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by Sudhan Moghe <su...@gmail.com> on 2009/06/26 14:18:18 UTC

Possible bug in handling of 500 Internal Server Error in HTTPSender.readFromSocket(...)

Hi,

I am not sure whether it is a bug or not. But things are working as
expected for me after I modified that method.
I am receiving SOAP Fault with return code 500 from server but the
content type is “text/html”.

Code in the method is

} else if ((contentType != null) && !contentType.startsWith("text/html")
       && ((returnCode > 499) && (returnCode < 600))) {

      // SOAP Fault should be in here - so fall through

} else {
       // Unknown return code - so wrap up the content into a
      // SOAP Fault.
      :
      :
}

Because of this it does not fall through and goes to else part which
handles Unknown return code.
Because of this I am getting AxisFault object with actual SOAP fault
stored as XML fragment in faultDetails attribute.

I am getting expected AxisFault object after modifying the condition
of checking contentType.

So, is that a bug or am I missing something?

Thanks & Regards,
Sudhan