The exceptionName element is a something I made up to allow Axis to throw the same 
exception on the client as was thrown on the server.  This is Axis specific and does 
not interoperate with any other implementation.

This functionality has been superceded in the current post-1.0 source by an 
implementation that uses the fault messages described in WSDL to map the exceptions 
messages from the server to the client.

So there are no plans to add a "getRootException" method to AxisFault.

--
Tom Jordahl
Macromedia Server Development



-----Original Message-----
From: Robert Cauble [mailto:rcauble@;motive.com]
Sent: Friday, October 25, 2002 2:56 PM
To: [EMAIL PROTECTED]
Subject: No way to get original exception from AxisFault


If I have a service which throws an exception that doesn't extend AxisFault, the 
exception is wrapped as an AxisFault, but there doesn't seem to be any way to get the 
original exception. 

I noticed that there is an element "exceptionName" in the fault-details, but that is 
only set if the exception is a subclass of AxisFault, as you can see from the piece of 
code in AxisFault.initFromException:

...
if ((target instanceof AxisFault) &&
    (target.getClass() != AxisFault.class)) {
   el = XMLUtils.StringToElement(Constants.NS_URI_AXIS, 
                                 "exceptionName", 
                                 target.getClass().getName());
            
   faultDetails.add(el);        
}
...

Are there plans to add a "getRootException" method to AxisFault which returns the root 
exception? 

Any help would be appreciated.

Thanks,
Rob

Reply via email to