It is intended that no exceptions not subclassing RootException will escape the server. A last ditch effort will be made to wrap any unknown exception in an InternalException.
Due to networking issues, this will not always be possible, and the client should deal with all non-Omero exceptions as OutOfService exceptions.