So actually your ServiceException is extending RemoteException and not in the other direction
I don't think that's a good idea. Your ServiceException is-NOT-a RemoteException, so
you should not use RemoteException from a design perspective.
I will describe my approach in exception handling: I created a specific service exception for each possible exception that could occur (room already booked, no rooms found,...). In my controller (at the client) I catch all the possible service exceptions (depending on the invoked method) AND a RemoteException. I rethrow a specific client-side exception (which wraps the (original) caught exception with an appropriate message for the user. So in my view I just have to catch this specific client-side exception and I can simply show the message to the user (and also log the exception, when needed).
Hope it is helpful!
Kind regards,
Roel