ciao a tutti!!!
ho dei problemi a far funzionare RMI su windows, questo è ilcodice che ho scritto:
codice:
import java.rmi.*;
public interface EchoInterface extends Remote
{
public String getEcho( String Echo ) throws RemoteException;
}
codice:
public class Server implements EchoInterface
{
public Server() {}
public String getEcho( String echo ) {
return echo;
}
}
e questo è il main:
codice:
import java.rmi.registry.LocateRegistry;
import java.rmi.registry.Registry;
import java.rmi.server.UnicastRemoteObject;
public class ServerActivate
{
public static void main( String args[] )
{
try
{
Server obj = new Server();
EchoInterface stub = (EchoInterface) UnicastRemoteObject.exportObject(obj,0);
Registry registry = LocateRegistry.getRegistry();
registry.bind("Echo", stub);
System.out.println("Server ready");
}
catch( Exception e )
{
e.printStackTrace();
}
}
}
tramite il prompt dei comandi vado nella directory bin di Java e faccio:
start rmiregistry.exe
mi si apre quindi un altra finestra di dos col servizio di registry attivo.
Se provo ad eseguire il main ( sia con Eclipse che da riga di comando digitando: java ServerActivate ) mi da il seguente errore:
java.rmi.ServerException: RemoteException occurred in server thread; nested exception is:
java.rmi.UnmarshalException: error unmarshalling arguments; nested exception is:
java.lang.ClassNotFoundException: EchoInterface
at sun.rmi.server.UnicastServerRef.oldDispatch(Unknow n Source)
e molto altro, ma credo che la descrizione dell'errore in se per se sia qui.
Qualcuno può aiutarmi ?