public abstract class

RemoteExporter

extends RemotingSupport
java.lang.Object
   ↳ org.springframework.remoting.support.RemotingSupport
     ↳ org.springframework.remoting.support.RemoteExporter
Known Direct Subclasses
Known Indirect Subclasses

Class Overview

Abstract base class for classes that export a remote service. Provides "service" and "serviceInterface" bean properties.

Note that the service interface being used will show some signs of remotability, like the granularity of method calls that it offers. Furthermore, it has to have serializable arguments etc.

Summary

[Expand]
Inherited Fields
From class org.springframework.remoting.support.RemotingSupport
Public Constructors
RemoteExporter()
Public Methods
Object getService()
Return the service to export.
Class getServiceInterface()
Return the interface of the service to export.
void setInterceptors(Object[] interceptors)
Set additional interceptors (or advisors) to be applied before the remote endpoint, e.g.
void setRegisterTraceInterceptor(boolean registerTraceInterceptor)
Set whether to register a RemoteInvocationTraceInterceptor for exported services.
void setService(Object service)
Set the service to export.
void setServiceInterface(Class serviceInterface)
Set the interface of the service to export.
Protected Methods
void checkService()
Check whether the service reference has been set.
void checkServiceInterface()
Check whether a service reference has been set, and whether it matches the specified service.
String getExporterName()
Return a short name for this exporter.
Object getProxyForService()
Get a proxy for the given service object, implementing the specified service interface.
[Expand]
Inherited Methods
From class org.springframework.remoting.support.RemotingSupport
From class java.lang.Object
From interface org.springframework.beans.factory.BeanClassLoaderAware

Public Constructors

public RemoteExporter ()

Public Methods

public Object getService ()

Return the service to export.

public Class getServiceInterface ()

Return the interface of the service to export.

public void setInterceptors (Object[] interceptors)

Set additional interceptors (or advisors) to be applied before the remote endpoint, e.g. a PerformanceMonitorInterceptor.

You may specify any AOP Alliance MethodInterceptors or other Spring AOP Advices, as well as Spring AOP Advisors.

public void setRegisterTraceInterceptor (boolean registerTraceInterceptor)

Set whether to register a RemoteInvocationTraceInterceptor for exported services. Only applied when a subclass uses getProxyForService for creating the proxy to expose.

Default is "true". RemoteInvocationTraceInterceptor's most important value is that it logs exception stacktraces on the server, before propagating an exception to the client. Note that RemoteInvocationTraceInterceptor will not be registered by default if the "interceptors" property has been specified.

public void setService (Object service)

Set the service to export. Typically populated via a bean reference.

public void setServiceInterface (Class serviceInterface)

Set the interface of the service to export. The interface must be suitable for the particular service and remoting strategy.

Protected Methods

protected void checkService ()

Check whether the service reference has been set.

protected void checkServiceInterface ()

Check whether a service reference has been set, and whether it matches the specified service.

protected String getExporterName ()

Return a short name for this exporter. Used for tracing of remote invocations.

Default is the unqualified class name (without package). Can be overridden in subclasses.

protected Object getProxyForService ()

Get a proxy for the given service object, implementing the specified service interface.

Used to export a proxy that does not expose any internals but just a specific interface intended for remote access. Furthermore, a RemoteInvocationTraceInterceptor will be registered (by default).

Returns
  • the proxy