RMI no JDK 1.7.0 [Resolvido]

Pessoal, estou estudando RMI usando o livro USE A CABEÇA o que não deu certo, então fiz o que diz nesse artigo http://www.guj.com.br/articles/37 , porém na hora de executar o MensageiroServer ele exibe a seguinte exceção:

Trouble: java.rmi.ServerException: RemoteException occurred in server thread; nested exception is:
java.rmi.UnmarshalException: error unmarshalling arguments; nested exception is:
java.lang.ClassNotFoundException: Mensageiro

Estou utilizando o JDK 7.0

Seguem os códigos:

Interface Mensageiro

import java.rmi.Remote;  
import java.rmi.RemoteException;  
  
public interface Mensageiro extends Remote {  
  
    public void enviarMensagem( String msg ) throws RemoteException;  
    public String lerMensagem() throws RemoteException;  
}

Classe MensageiroImpl

[code]import java.rmi.RemoteException;
import java.rmi.server.UnicastRemoteObject;

public class MensageiroImpl extends UnicastRemoteObject implements Mensageiro {

public MensageiroImpl() throws RemoteException {  
    super();  
}  

public void enviarMensagem( String msg ) throws RemoteException {  
    System.out.println( msg );  
}  

public String lerMensagem() throws RemoteException {  
    return "This is not a Hello World! message";  
}  

}[/code]

Classe MensageiroServer

import java.rmi.Naming;  
  
public class MensageiroServer {  
  
    public MensageiroServer() {  
        try {  
            Mensageiro m = new MensageiroImpl();  
            Naming.rebind("rmi://localhost:1099/MensageiroService", m);  
        }  
        catch( Exception e ) {  
            System.out.println( "Trouble: " + e );  
        }  
    }  
  
    public static void main(String[] args) {  
        new MensageiroServer();  
    }  
} 

Classe MensageiroClient

import java.rmi.Naming;  
import java.rmi.RemoteException;  
import java.rmi.NotBoundException;  
import java.net.MalformedURLException;  
  
public class MensageiroClient {  
  
    public static void main( String args[] ) {  
        try {  
            Mensageiro m = (Mensageiro) Naming.lookup( "rmi://localhost/MensageiroService" );  
            System.out.println( m.lerMensagem() );  
            m.enviarMensagem( "Hello World!" );  
        }  
        catch( MalformedURLException e ) {  
            System.out.println();  
            System.out.println( "MalformedURLException: " + e.toString() );  
        }  
        catch( RemoteException e ) {  
            System.out.println();  
            System.out.println( "RemoteException: " + e.toString() );  
        }  
        catch( NotBoundException e ) {  
            System.out.println();  
            System.out.println( "NotBoundException: " + e.toString() );  
        }  
        catch( Exception e ) {  
            System.out.println();  
            System.out.println( "Exception: " + e.toString() );  
        }  
    }  
}

Help me!

Problema Resolvido.
Desinstalei todas as versões do JAVA, instalei o JDK 1.7.0_01 e configurei a Classpath e a path.

Depois dessa trabalheira, deu tudo certo.