2012-09-29 25 views
11

Używam rmi w Javie. jednak istnieje zdalny obiekt ExportException "implementuje niedozwolony zdalny interfejs".Wyjątek "zdalny obiekt implementuje niedozwolony zdalny interfejs"?

Oto mój kod, może ktoś mi pomoże?

public interface RemotePeer extends Remote { 

    public abstract void displayInf(String inf); 

    public abstract void exit(); 

    public abstract boolean isActive(); 
} 


public class Peer implements RemotePeer{ 
     public Peer(){} 
     .... 

     public static void main(String[] args) { 
      Peer p=new Peer() 
      RemotePeer remoteP=(RemotePeer) UnicastRemoteObject.exportObject(p, 0); 
      Registry registry = LocateRegistry.getRegistry(); 
      } 
} 
+0

Czy próbowałeś użyć UnicastRemoteObject? – Abubakkar

+0

@Abu Dlaczego? Co to za różnica? – EJP

Odpowiedz

27

Każda metoda w interfejsie Remote musi być w stanie rzucić RemoteException. Twój interfejs powinien być:

public interface RemotePeer extends Remote { 

    public abstract void displayInf(String inf) throws RemoteException; 

    public abstract void exit() throws RemoteException; 

    public abstract boolean isActive() throws RemoteException; 
} 

Czasami warto spojrzeć na RMI Tutorial.

Powiązane problemy