java.rmi

Class Naming

public final class Naming extends Object

The Naming class handles interactions with RMI registries. Each method takes a URL in String form, which points to the RMI registry. The scheme of the URL is irrelevant. The relevant part is:

//host:port/name

which tells the method how to locate and access the registry. The host and port are both optional, and default to `localhost' and the standard RMI registry port (1099) respectively. The name is simply a string used to refer to a particular service hosted by the registry. The registry does not attempt to interpret this further.

RMI services are registered using one of these names, and the same name is later used by the client to lookup the service and access its methods. Registries can be shared by multiple services, or a service can create its own registry using createRegistry().

Since: 1.1

Method Summary
static voidbind(String name, Remote obj)
Try to bind the given object to the given service name.
static String[]list(String name)
Lists all services at the named registry.
static Remotelookup(String name)
Looks for the remote object that is associated with the named service.
static voidrebind(String name, Remote obj)
Forces the binding between the given Remote-object and the given service name, even if there was already an object bound to this name.
static voidunbind(String name)
Remove a binding for a given service name.

Method Detail

bind

public static void bind(String name, Remote obj)
Try to bind the given object to the given service name.

Parameters: name obj

Throws: AlreadyBoundException MalformedURLException RemoteException

list

public static String[] list(String name)
Lists all services at the named registry.

Parameters: name url that specifies the registry

Returns: list of services at the name registry

Throws: RemoteException MalformedURLException

lookup

public static Remote lookup(String name)
Looks for the remote object that is associated with the named service. Name and location is given in form of a URL without a scheme:
 //host:port/service-name
 
The port is optional.

Parameters: name the service name and location

Returns: Remote-object that implements the named service

Throws: NotBoundException if no object implements the service MalformedURLException RemoteException

rebind

public static void rebind(String name, Remote obj)
Forces the binding between the given Remote-object and the given service name, even if there was already an object bound to this name.

Parameters: name obj

Throws: RemoteException MalformedURLException

unbind

public static void unbind(String name)
Remove a binding for a given service name.

Parameters: name

Throws: RemoteException NotBoundException MalformedURLException