SOAPFault fault = (SOAPFault)ctx.getResponseMessage().getSOAPEnvelope().getBody().getFault();
Before this call, the response message contained the fault that my service had thrown but after the call it contained a copy of the fault. Unfortunately, the code that removes the stack trace from the fault works on the original, not the copy, so the stack trace is still in the response when the response gets sent.
By changing the above to:
Object fault_obj = ((SOAPPart)ctx.getResponseMessage().getSOAPPart()).getCurrentMessage();
which does not change the response message. I now simply check whether fault_obj is an AxisFault or a SOAPFault and act accordingly.
Hope this helps others who have run into this problem. Dan.
begin:vcard fn:Dan Ciarniello n:Ciarniello;Dan org:CityXpress Corp adr;dom:;;200 - 1727 West Broadway;Vancouver;BC;V6J 4W5 email;internet:[EMAIL PROTECTED] title:Software Developer tel;work:604-638-3800 ext. 322 x-mozilla-html:TRUE url:http://www.cityxpress.com version:2.1 end:vcard