import java.net.*; import java.rmi.*; import java.rmi.server.UnicastRemoteObject; public class ServeurImpl extends UnicastRemoteObject implements Serveur { Personne [] pers; public ServeurImpl(String port) throws RemoteException { super(); initialiseBD(); try { // Get the inet address String host=InetAddress.getLocalHost().getHostAddress(); // Create and install a security manager //if (System.getSecurityManager() == null) { //System.setSecurityManager(new RMISecurityManager()); //} Naming.rebind("rmi://"+host+":"+port+"/Serveur", this); System.out.println("Serveur prêt"); } catch(Exception e) { System.out.println("exception : " +e); } } public void initialiseBD() throws RemoteException { pers = new Personne[2]; pers[0] = new PersonneImpl("Domenger"); pers[1] = new PersonneImpl("Griffault"); } public Personne getPersonne(String s) throws RemoteException { for (int i =0; i < pers.length; i++) if (s.equalsIgnoreCase(pers[i].getName())) return pers[i]; return null; } static public void main(String [] argv ) { boolean pasArgument = argv.length != 1; if (pasArgument) System.out.println("java ServeurImpl NumeroPort"); else { try { new ServeurImpl(argv[0]); } catch(Exception e) { System.out.println("exception : " +e); } } } }