Currently an invocation results in an InvocationResult which, at it simplest, contains the return value from a method call. Exceptions from the method call get thrown up the interceptor stack.
I am proposing we change InvocationResult to be aware of the three possible exit conditions from a method call: * normal return * declared Exception (method threw checked Exception) * undeclared Exception (method threw RTE or Error) This would change the return phase of the interceptor stack so that Exceptions from the invoked object would be in the InvocationResult rather than being thrown from getNext().invoke(). This would allow us to easily separate exceptions raised in user-land from exceptions thrown by the system (container/interceptors). Is this a good idea or a bad idea? -- Jeremy