org.springframework.remoting

Class RemoteAccessException

  • All Implemented Interfaces:
    java.io.Serializable
    Direct Known Subclasses:
    RemoteConnectFailureException, RemoteInvocationFailureException, RemoteLookupFailureException, RemoteProxyFailureException, RemoteTimeoutException


    public class RemoteAccessException
    extends NestedRuntimeException
    Generic remote access exception. A service proxy for any remoting protocol should throw this exception or subclasses of it, in order to transparently expose a plain Java business interface.

    When using conforming proxies, switching the actual remoting protocol e.g. from Hessian does not affect client code. Clients work with a plain natural Java business interface that the service exposes. A client object simply receives an implementation for the interface that it needs via a bean reference, like it does for a local bean as well.

    A client may catch RemoteAccessException if it wants to, but as remote access errors are typically unrecoverable, it will probably let such exceptions propagate to a higher level that handles them generically. In this case, the client code doesn't show any signs of being involved in remote access, as there aren't any remoting-specific dependencies.

    Even when switching from a remote service proxy to a local implementation of the same interface, this amounts to just a matter of configuration. Obviously, the client code should be somewhat aware that it might be working against a remote service, for example in terms of repeated method calls that cause unnecessary roundtrips etc. However, it doesn't have to be aware whether it is actually working against a remote service or a local implementation, or with which remoting protocol it is working under the hood.

    Since:
    14.05.2003
    Author:
    Juergen Hoeller
    See Also:
    Serialized Form
    • Constructor Summary

      Constructors 
      Constructor and Description
      RemoteAccessException(java.lang.String msg)
      Constructor for RemoteAccessException.
      RemoteAccessException(java.lang.String msg, java.lang.Throwable cause)
      Constructor for RemoteAccessException.
    • Method Summary

      • Methods inherited from class java.lang.Throwable

        addSuppressed, fillInStackTrace, getCause, getLocalizedMessage, getStackTrace, getSuppressed, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • RemoteAccessException

        public RemoteAccessException(java.lang.String msg)
        Constructor for RemoteAccessException.
        Parameters:
        msg - the detail message
      • RemoteAccessException

        public RemoteAccessException(java.lang.String msg,
                                     java.lang.Throwable cause)
        Constructor for RemoteAccessException.
        Parameters:
        msg - the detail message
        cause - the root cause (usually from using an underlying remoting API such as RMI)