axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jeff Greif" <>
Subject Re: SOAP stacktrace
Date Thu, 17 Oct 2002 20:14:49 GMT
Another data point at the other end of the scale:
The Amazon web service reports "bad request" either when you supply the
search category as 'book' rather than 'books', but also when your SOAP
message is completely garbled.

Something in between a stack trace and a message like this is needed for
clients.  The approaches discussed below seem a good start.


----- Original Message -----
From: "Steve Loughran" <>
To: <>
Sent: Thursday, October 17, 2002 12:24 PM
Subject: Re: SOAP stacktrace

> ----- Original Message -----
> From: "Nelson Minar" <>
> To: <>
> Sent: Thursday, October 17, 2002 12:10 PM
> Subject: RE: SOAP stacktrace
> > >We've discussed putting in a switch to turn this on and off for a
> > >service/engine, in fact.
> >
> > Speaking from my experience at Google, I'd say turning off stack
> > traces is a pretty important feature for a production web service. The
> > last thing you want to do is dump a bunch of details about your
> > implementation that may be proprietary and that the end user won't
> > understand anyway.
> Its an interesting issue.
> You dont ever want a stack trace to get out the wire, as it is meaningless
> and yet a security risk.
> A lot of the stack trace stuff should be disabled from axis now, as I did
> run through and controlled with an isDevelopment() switch (default
> At the same time, the Mindreef folks ( demoed their tool last
> week at the web services devcon (, and I was impressed
> they showed that a service could be instrumented for better logging for
> caller debugging. The aim is to give people enough info to determine why
> their call didnt work, without calling you up.
> Dave Siebel & colleagues do this with http headers to request extra
> and another one for the response, but they are thinking about SoapHeaders
> achieve the same goal.
> One thing we could do for Axis would be to add a getLog() method to
> MessageContext, which returns a message specific logger. Normally this
> go to the console, but with the right support plugins it could return a
> trace to the caller. Then when writing code you can log for caller and
> server with the explicit knowledge that callers only get the message
> info:
>"inbound call from "+ipaddr);
> if(!validate()) {
>     serverLog.error("failed to validate "+ipaddr+" for
> "+validateErrorDetails);
>     messageContext.getLog().("Validate error on "+getMangledServerID()+ "
> because "+validateErrorDetails);
>     throw new SoapFault("Invalid request);
>     }
> Thoughts?
> -steve

View raw message