Exception handling: shouldn't client get "same" exception as server?
The spec reads thusly:
The EJB specification for exception handling is designed to meet these high-level goals:
â€¢ An application exception thrown by an enterprise bean instance should be reported to the client
precisely (i.e., the client gets the same exception).
I have an *entity* class that throws what I consider to be an application exception: it is checked and declared in the throws clause in question.
When I throw this exception, the client gets nothing at all that would indicate that this is the exception being thrown. Instead, he gets a whole pile of repeated serverish exceptions--java.rmi.ServerException, EJBException, etc., all of which indicate that the transaction has rolled back (they tell me this about 23 times). Nowhere in the stack is any indication of what went wrong.
In the server log, by contrast, I see quite clearly what has happened.
Is this a problem, or is this by design? How would I go about remedying this if it *is* a problem?