>I suggest you file an enhancement request. >There ought to be a fault handler chain.
I have some experience doing fairly complex things with faults and Axis Handlers' onFault() methods. It works, but it's pretty awkward. I understand JAX-RPC 2.0 is changing the rules in this area; does Axis already implement the new behaviour? The big issue with Axis I found is that if you have several Handlers in the chain and one of the Handlers throws a fault (say, for authentication) then no more Handlers are invoked, but onFault() is called in the reverse order on the Handlers that were already invoked. This makes perfect sense if you think the purpose of onFault() is to clean up resources, but it's more awkward if you're just trying to do something with the fault. You end up having to be very careful about the order you register things. The other complicated factor is what happens if the Handlers themselves throw an Exception (as opposed to the service at the pivot). I believe in some circumstances Axis gives up on the Handler chain at all.
