The java.rmi.registry Package

How does a client that needs a remote object locate that object on a distant server? More precisely, how does it get a remote reference to the object? Clients find out what remote objects are available by querying the server’s registry. A registry advertises the availability of the server’s remote objects. Clients query the registry to find out what remote objects are available and to get remote references to those objects. You’ve already seen one: the java.rmi.Naming class for interfacing with registries.

The Registry interface and the LocateRegistry class allow clients to retrieve remote objects on a server by name. A RegistryImpl is a subclass of RemoteObject, which links names to particular RemoteObject objects. The methods of the LocateRegistry class are used by clients to retrieve the RegistryImpl for a specific host and port.

The Registry Interface

The java.rmi.registry.Registry interface has five public methods: bind( ) , to bind a name to a specific remote object; list( ), to list all the names bound in the registry; lookup( ), to find a specific remote object given its URL; rebind( ), to bind a name to a different remote object; and unbind( ), to remove a name from the registry. All of these behave exactly as previously described in the java.rmi.Naming class, which implements this interface. Other classes that implement this interface may use a different scheme for mapping names to particular objects, but the methods still have the same ...

Get Java Network Programming, Second Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.