Archivlink: javarea.de Forum > JavaScript > RMI Problem
Vollständigen Link anzeigen: javarea.de Forum > JavaScript > RMI Problem

Pages: [1]

geschrieben von Evian am 08.10.2005 - 17:20
Hallo,

ich habe mich eine Weile mit RMI beschaftigt, aber irgendwie komme ich nicht weiter.
Ich habe mich an dieses Tutorial (http://www.zerokspot.com/docs/progr....orial-ger/) gehalten, also das Intervace und die beiden Klassen des Servers erstellt. Mit dem RMICompiler (rmic.exe) habe ich ServerImpl compieliert und jetzt liegen im Ordner "C:\WorkSpace\RMItest\rmipack\" die Klassen (Server.class, ServerImpl.class, ServerImpl_Skel.class, ServerImpl_Stub.class, ServerProc.class). Wenn ich nun über die Konsole im Ordner "C:\WorkSpace\RMItest\" java rmipack.ServerProc eingebe kommt follgende Fehlermeldung:

"RemoteException occurred in server thread; nested exception is:
java.rmi.UnmarshalException: error unmarshalling arguments; nested exception is:
java.lang.ClassNotFoundException: rmipack.ServerImpl_Stub"

Ich verstehe das nicht... die ServerImpl_Stub.class liegt doch im Richtigen Ordner. Hat jemand eine Idee, woran es liegen könnte?!

gruß

Phill

PS: Hier noch mein Code:

//---Server.java


package rmipack;

import java.rmi.*;
public interface Server extends Remote
{
int getValue() throws RemoteException;
}



//--- ServerImpl.java

package rmipack;

import java.util.*;
import java.rmi.server.*;
import java.rmi.RemoteException;
public class ServerImpl extends UnicastRemoteObject implements Server
{
private int value;

public ServerImpl() throws RemoteException
{
this.value = 3;
}

public int getValue() throws RemoteException
{
return this.value;
}
}


//---------ServerProc.java

package rmipack;

import java.rmi.*;
import java.rmi.registry.*;
import java.rmi.server.UnicastRemoteObject;

class ServerProc
{
public static void main (String args []) throws RemoteException
{
//permission java.security.AllPermission;
if(System.getSecurityManager() == null)
{
System.setSecurityManager(new RMISecurityManager());
}
try {
ServerImpl obj = new ServerImpl();
Naming.rebind("rmi://localhost:1099/Server",obj);
}catch (Exception e){
System.out.println(e.getMessage());
}
//LocateRegistry.createRegistry(1099);
}
}


Powered by: JBB v.2.0.4 Copyright ©2000-2006, www.javarea.de.