There might be a bug in creating an axis fault from an application exception:
It looks from the code (AxisFault) that if an exception is a sub-class of AxisFault then its class name will be preserved to be rebuilt on the client side. That works fine if the generated classes are used on both server and client side.
In the case where an EJB is used on the server side, the original application exceptions will not derive from AxisFault although they will be declared in the WSDL and will generate client exceptions (which will extend from Axis Fault). Therefore the class name will be lost and the exception cannot be re-created on the client side properly, even if a binding exist.
This sounds like a bug as it prevents the exception type to be preserved when original classes are used on the server side.
We think of fixing it by adding the exception Name of the target exception in AxisFault for any exception type that is not an AxisFault or a sub class of RuntimeException or a RemoteException (as it is done now only for sub-class of AxisFault). The reasonning is any application exception will be mapped into the wsdl and will generate client binding.
Any feedback is welcome!
Thanx,
Claude
