public class UnicastRemoteObject extends RemoteServer
rmic tool.
Deprecated: Static Stubs. Support for statically generated stubs is deprecated. This includes the API in this class that requires the use of static stubs, as well as the runtime support for loading static stubs. Generating stubs dynamically is preferred, using one of the five non-deprecated ways of exporting objects as listed below. Do not run rmic to generate static stub classes. It is unnecessary, and it is also deprecated.
There are six ways to export remote objects:
UnicastRemoteObject and calling the UnicastRemoteObject() constructor. UnicastRemoteObject and calling the UnicastRemoteObject(port) constructor. UnicastRemoteObject and calling the UnicastRemoteObject(port, csf, ssf) constructor. exportObject(Remote) method. Deprecated. exportObject(Remote, port) method. exportObject(Remote, port, csf, ssf) method. The fourth technique, exportObject(Remote), always uses statically generated stubs and is deprecated.
The other five techniques all use the following approach: if the java.rmi.server.ignoreStubClasses property is true (case insensitive) or if a static stub cannot be found, stubs are generated dynamically using Proxy objects. Otherwise, static stubs are used.
The default value of the java.rmi.server.ignoreStubClasses property is false.
Statically generated stubs are typically pregenerated from the remote object's class using the rmic tool. A static stub is loaded and an instance of that stub class is constructed as described below.
Remote, then the remote object's class is the root class; otherwise, the root class is the most derived superclass of the remote object's class that directly implements an interface that extends Remote. _Stub. RemoteStub and must have a public constructor that has one parameter of type RemoteRef. RemoteRef. StubNotFoundException is thrown. Stubs are dynamically generated by constructing an instance of a Proxy with the following characteristics:
RemoteObjectInvocationHandler instance constructed with a RemoteRef. StubNotFoundException will be thrown. ref| Modifier | Constructor and Description |
|---|---|
protected |
UnicastRemoteObject()
Creates and exports a new UnicastRemoteObject object using an anonymous port.
|
protected |
UnicastRemoteObject(int port)
Creates and exports a new UnicastRemoteObject object using the particular supplied port.
|
protected |
UnicastRemoteObject(int port, RMIClientSocketFactory
Creates and exports a new UnicastRemoteObject object using the particular supplied port and socket factories.
|
| Modifier and Type | Method and Description |
|---|---|
Object |
clone()
Returns a clone of the remote object that is distinct from the original.
|
static RemoteStub |
exportObject(Remote
Deprecated.
This method is deprecated because it supports only static stubs. Use
exportObject(Remote, port) or exportObject(Remote, port, csf, ssf) instead.
|
static Remote |
exportObject(Remote
Exports the remote object to make it available to receive incoming calls, using the particular supplied port.
|
static Remote |
exportObject(Remote
Exports the remote object to make it available to receive incoming calls, using a transport specified by the given socket factory.
|
static boolean |
unexportObject(Remote
Removes the remote object, obj, from the RMI runtime.
|
getClientHost, getLog, setLogprotected UnicastRemoteObject()
throws RemoteException
The object is exported with a server socket created using the RMISocketFactory class.
RemoteException - if failed to export object
protected UnicastRemoteObject(int port)
throws RemoteException
The object is exported with a server socket created using the RMISocketFactory class.
port - the port number on which the remote object receives calls (if
port is zero, an anonymous port is chosen)
RemoteException - if failed to export object
protected UnicastRemoteObject(int port,
RMIClientSocketFactory csf,
RMIServerSocketFactory ssf)
throws RemoteException
Either socket factory may be null, in which case the corresponding client or server socket creation method of RMISocketFactory is used instead.
port - the port number on which the remote object receives calls (if
port is zero, an anonymous port is chosen)
csf - the client-side socket factory for making calls to the remote object
ssf - the server-side socket factory for receiving remote calls
RemoteException - if failed to export object
public Objectclone() throws CloneNotSupportedException
clone in class
Object
CloneNotSupportedException - if clone failed due to a RemoteException.
Cloneable
@Deprecated public static RemoteStubexportObject(Remote obj) throws RemoteException
exportObject(Remote, port) or exportObject(Remote, port, csf, ssf) instead.
The object is exported with a server socket created using the RMISocketFactory class.
obj - the remote object to be exported
RemoteException - if export fails
public static RemoteexportObject(Remote obj, int port) throws RemoteException
The object is exported with a server socket created using the RMISocketFactory class.
obj - the remote object to be exported
port - the port to export the object on
RemoteException - if export fails
public static RemoteexportObject(Remote obj, int port, RMIClientSocketFactory csf, RMIServerSocketFactory ssf) throws RemoteException
Either socket factory may be null, in which case the corresponding client or server socket creation method of RMISocketFactory is used instead.
obj - the remote object to be exported
port - the port to export the object on
csf - the client-side socket factory for making calls to the remote object
ssf - the server-side socket factory for receiving remote calls
RemoteException - if export fails
public static boolean unexportObject(Remoteobj, boolean force) throws NoSuchObjectException
obj - the remote object to be unexported
force - if true, unexports the object even if there are pending or in-progress calls; if false, only unexports the object if there are no pending or in-progress calls
NoSuchObjectException - if the remote object is not currently exported