mam problem z przykladem rmi z ksiazki "Thinkging in Java"
przepisalem przyklad ale niestety nie dziala, przy probie uruchomienie
wyrzuca mi:
Exception in thread "main" java.security.AccessControlException: access
denied (java.net.SocketPermission misha resolve)
at
java.security.AccessControlContext.checkPermission(AccessControlContext.java:269)
...
pozkauje to zarowno klient jak i serwer
rmiregistey jest uruchomiony
Pozdrawiam i dzieki za wszelka pomoc
Perf
staralem sie nic nie pomylic po drodze, a jak masz te uprawnienia i nadal
nie dziala to daj znac, ostatnio robilem cos tak z rmi i bylo wszystko ok,
to moze cos sie wymysli jeszcze
nie dziala :(
server:
------
PerfectTimeI.java:
import java.rmi.*;
public interface PerfectTimeI extends Remote {
public int getPerfectTime() throws RemoteException;
}
------
PerfectTime.java:
import java.rmi.*;
import java.rmi.server.*;
public class PerfectTime extends UnicastRemoteObject implements
PerfectTimeI {
public PerfectTime() throws RemoteException {
;
}
public int getPerfectTime() throws RemoteException {
return 10;//System.currentTimeMillis();
}
public static void main(String[] argv) throws Exception {
System.setSecurityManager(new RMISecurityManager());
PerfectTime pt = new PerfectTime();
Naming.rebind("//misha/test", pt);
System.out.println("Gotowy do podania czasu");
}
}
------
kompilacja:
javac *.java
rmic PerfectTime
----
uruchomienie:
rmiregistry
java -Djava.security.policy=java.policy PerfectTime
------
pada na Naming.rebind("//misha/test", pt):
Exception in thread "main" java.rmi.ServerException: RemoteException
occurred in server thread; nested exception is:
java.rmi.UnmarshalException: error unmarshalling arguments;
nested exception is:
java.lang.ClassNotFoundException: PerfectTime_Stub
Pozdrawiam
Perf
> Exception in thread "main" java.rmi.ServerException: RemoteException
> occurred in server thread; nested exception is:
> java.rmi.UnmarshalException: error unmarshalling arguments;
> nested exception is:
> java.lang.ClassNotFoundException: PerfectTime_Stub
rmiregistry musi wiedzie? gdzie znale?? stuba. Zanim uruchomisz
rmiregistry upewnij si?, ?e *_Stub jest dost?pny na $CLASSPATH.
Artur
> Artur
Pozdrawiam
Perf