The deserialization of SoapFault bodies is not working correctly and causes an Exception in the SoapEnvelope parser when it requires the End-Body-Tag. It seems SoapFault.parse() has to call parser.nextTag() before returning from parse(). Otherwise the parser's state is still the closing Fault tag.
I agree with Christoph Hohmann. 1.5 year later, the bug is still there.
Reproducing it is quite easy : use a SoapSerializationEnvelope, try to parse a request that sends back a SoapFault, and you will get a XmlPullParserException.
The patch is really easy to implement :
In SoapSerializationEnvelope at line 89, in method parseBody(), right after :
SoapFault fault = new SoapFault();
fault.parse(parser);
bodyIn = fault;
Just add :
parser.nextTag();