To clarify, the RemoteException is thrown from a stateless session bean and caught in the web tier. Tested and does work but also know that throwing RemoteException is a crime with an unstipulated punishment.
RemoteException is deprecated on the bean implementation method. What happens when the implementation method is the target of a local interface? A RemoteException is a checked exception and as such an application defined exception. Its semantics are the same as any other app exception.