In "Orielly EJB 3.0 book" page 399, para 1 it is said as follows:
---------
In session beans, when a system exception occurs and the instance is discarded, a RuntimeException is always thrown whether the client is a remote or a local invocation. If the client started the transaction, which was then propagated to the EJB, a system exception (thrown by the enterprise bean method) will be caught by the container and rethrown as a javax.ejb.EJBTransactionRolledbackException . EJBTransactionRolledbackException is a subtype of RuntimeException and gives a more explicit indication to the client that a rollback occurred. If the client did not propagate a transaction to the EJB, the system exception will be caught and rethrown as an EJBException.
---------
Whereas in Table 16-1 , page 402, a cntradicting statement is made
-------------
Remote client recieve the remote exception or EJB exception.
---------------
Which is correct?
Is Remote Exception thrown or EJB exception to a Reote client?