Exemplo – Java RMI
Arquivo Hello.java (interface)
import java.net.*;
import java.rmi.*;
public interface Hello extends Remote {
String sayHello() throws RemoteException;
}
Arquivo HelloImpl.java
(implementação do objeto remoto)
import java.rmi.*;
import java.rmi.server.*;
import java.rmi.registry.*;
import java.net.*;
public class HelloImpl extends UnicastRemoteObject implements Hello {
public HelloImpl()
throws RemoteException{
super();
}
public String sayHello()
{
return
"HelloWorld!";
}
}
Arquivo HelloServer.java (servidor)
import java.net.*;
import java.rmi.*;
import java.rmi.server.*;
import java.rmi.registry.*;
public class HelloServer {
public static
void main (String args [ ]) {
//Cria e instala o security manager
//System.setSecurityManager(new RMISecurityManager()
);
try {
//Cria HelloImpl
HelloImpl obj = new HelloImpl();
Naming.rebind("HelloServer", obj);
System.out.println("Hello Server pronto.");
} catch(Exception
e) {
System.out.println("HelloServer erro"+ e.getMessage());
}
}
}
Arquivo HelloClient.java (cliente)
import java.net.*;
import java.rmi.*;
import java.rmi.registry.*;
import java.rmi.server.*;
public class HelloClient {
public static
void main(String args[ ]) {
//Cria e instala o security manager
// System.setSecurityManager (new RMISecurityManager
() );
try {
Hello obj = (Hello)Naming.lookup("rmi://vip03/HelloServer");
System.out.println(obj.sayHello());
} catch(Exception
e) {
System.out.println("HelloClient erro"+ e.getMessage());
}
System.exit(0);
}
}