Tuesday, 5 February 2013

RMI Client | Java J2EE Tutorial pdf

RMI Client

Assume for now that the server object is running remotely. To locate it, we use Naming.lookup( ) , passing in the lookup name. This gives us a reference to a proxy object an object that, like the real server object, implements the remote interface but runs in the same Java Virtual Machine as our client application. Here we see the beauty of interfaces: the proxy object implements the interface, so our code can use it just as it would use a local object providing the given service. And the remote object also implements the interface, so the proxy object's remote counterpart can use it exactly as the proxy is used.
Next Example shows the client for the RemoteDate service.

Example DateClient.java

package darwinsys.distdate;
import java.rmi.*;
import java.util.*;
/* A very simple client for the RemoteDate service. */
public class DateClient {
/** The local proxy for the service. */
protected static RemoteDate netConn = null;
public static void main(String[] args) {
try {
netConn = (RemoteDate)Naming.lookup(RemoteDate.LOOKUPNAME);
Date today = netConn.getRemoteDate( );
System.out.println(today.toString( )); // XX use a DateFormat...
} catch (Exception e) {
System.err.println("RemoteDate exception: " + e.getMessage());
e.printStackTrace( );
}
}}

No comments: