Maybe, you catch your application exception and rethrow it as an ejb exception.
I sometimes make this mistake.
What exception do you get?
Did you declare the exception in the interface?
Thanks for your help. I do declare the exception in the signature. I had been catching it in order to log the exception before re-throwing it (as is). Still not sure what the cause is (probably something stupid I've done) but for the moment I forgo logging and don't attempt to catch and rethrow, and all's OK.