I've just checked in changes to fault handling in the servlet, its a lot harder to get stack traces now (though ConfigurationExceptions caused by things other than AxisFaults can still sneak out)...this is what past changes to AxisFault and the like have been leading up to.
As a side effect we finally get text info about why config problems are stopping us listing available services. I believe it is actually possible to write a new test to verify this (deploy something invalid, use httpunit to get the listing...). Comments, improvement suggestions etc, welcomed. Two points merit thought: 1. Exceptions caught in a SOAP post are turned into axis faults, but we also set the response to 500. Should that be kept at 200? 2. People have complained on axis-user that Global fault handlers dont get called. They certainly dont get called on caught Exceptions, I havent traced around to see what happens on AxisFaults. I havent made any changes to affect this behaviour, but really we need global fault handling on AxisFaults and Exceptions 3. If we do integrate global fault handlers into all faults and exceptions, we may want to move the code from AxisServlet to somewhere that all transports can reuse. Same goes for stack removal on faults. -steve