Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    Problema compilazione Java RMI su Mac

    Ciao ho creato una piccola e banale applicazione per provare Java RMI.
    avvio il Rmiregistry da terminale e lo lascio in esecuzione, avvio l'applicazione server e mi genera il seguente errore:

    Creazione e registrazione dell'oggetto Hello
    java.rmi.ServerException: RemoteException occurred in server thread; nested exception is:
    java.rmi.UnmarshalException: error unmarshalling arguments; nested exception is:
    java.lang.ClassNotFoundException: helloWorld.interfaces.HelloInterface
    at sun.rmi.server.UnicastServerRef.oldDispatch(Unicas tServerRef.java:385)
    at sun.rmi.server.UnicastServerRef.dispatch(UnicastSe rverRef.java:240)
    at sun.rmi.transport.Transport$1.run(Transport.java:1 53)
    at java.security.AccessController.doPrivileged(Native Method)
    at sun.rmi.transport.Transport.serviceCall(Transport. java:149)
    at sun.rmi.transport.tcp.TCPTransport.handleMessages( TCPTransport.java:466)
    at sun.rmi.transport.tcp.TCPTransport$ConnectionHandl er.run(TCPTransport.java:707)
    at java.lang.Thread.run(Thread.java:613)
    at sun.rmi.transport.StreamRemoteCall.exceptionReceiv edFromServer(StreamRemoteCall.java:247)
    at sun.rmi.transport.StreamRemoteCall.executeCall(Str eamRemoteCall.java:223)
    at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:3 43)
    at sun.rmi.registry.RegistryImpl_Stub.rebind(Unknown Source)
    at java.rmi.Naming.rebind(Naming.java:160)
    at helloWorld.HelloServer.main(HelloServer.java:23)
    Caused by: java.rmi.UnmarshalException: error unmarshalling arguments; nested exception is:
    java.lang.ClassNotFoundException: helloWorld.interfaces.HelloInterface
    at sun.rmi.registry.RegistryImpl_Skel.dispatch(Unknow n Source)
    at sun.rmi.server.UnicastServerRef.oldDispatch(Unicas tServerRef.java:375)
    at sun.rmi.server.UnicastServerRef.dispatch(UnicastSe rverRef.java:240)
    at sun.rmi.transport.Transport$1.run(Transport.java:1 53)
    at java.security.AccessController.doPrivileged(Native Method)
    at sun.rmi.transport.Transport.serviceCall(Transport. java:149)
    at sun.rmi.transport.tcp.TCPTransport.handleMessages( TCPTransport.java:466)
    at sun.rmi.transport.tcp.TCPTransport$ConnectionHandl er.run(TCPTransport.java:707)
    at java.lang.Thread.run(Thread.java:613)
    Caused by: java.lang.ClassNotFoundException: helloWorld.interfaces.HelloInterface
    at java.net.URLClassLoader$1.run(URLClassLoader.java: 200)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.j ava:188)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:3 06)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:2 51)
    at java.lang.ClassLoader.loadClassInternal(ClassLoade r.java:319)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:242)
    at sun.rmi.server.LoaderHandler.loadProxyInterfaces(L oaderHandler.java:707)
    at sun.rmi.server.LoaderHandler.loadProxyClass(Loader Handler.java:651)
    at sun.rmi.server.LoaderHandler.loadProxyClass(Loader Handler.java:588)
    at java.rmi.server.RMIClassLoader$2.loadProxyClass(RM IClassLoader.java:628)
    at java.rmi.server.RMIClassLoader.loadProxyClass(RMIC lassLoader.java:294)
    at sun.rmi.server.MarshalInputStream.resolveProxyClas s(MarshalInputStream.java:238)
    at java.io.ObjectInputStream.readProxyDesc(ObjectInpu tStream.java:1500)
    at java.io.ObjectInputStream.readClassDesc(ObjectInpu tStream.java:1463)
    at java.io.ObjectInputStream.readOrdinaryObject(Objec tInputStream.java:1699)
    at java.io.ObjectInputStream.readObject0(ObjectInputS tream.java:1305)
    at java.io.ObjectInputStream.readObject(ObjectInputSt ream.java:348)
    ... 9 more
    Impossibile registrare l'oggetto Hello

    Da notare che l'applicazione č moolto semplice, di seguito vi posto il codice:

    package helloWorld;

    import java.net.MalformedURLException;
    import java.rmi.Naming;
    import java.rmi.RemoteException;

    /**
    * @author --
    *
    * TODO To change the template for this generated type comment go to
    * Window - Preferences - Java - Code Style - Code Templates
    */
    public class HelloServer {
    public static void main(String[] argv) {
    System.out.println("Creazione e registrazione dell'oggetto Hello");
    try {
    Naming.rebind("//localhost/Hello", new Hello());
    } catch (RemoteException e) {
    e.printStackTrace();
    System.out.println("Impossibile registrare l'oggetto Hello");
    System.exit(1);
    } catch (MalformedURLException e) {
    e.printStackTrace();
    System.out.println("URL errato");
    System.exit(1);
    }
    System.out.println("Operazione completata");
    }
    }

    Utilizzo Java 5 per cui non č necessario generare lo stub e skeleton vero??
    Qlc puo aiutarmi ..grazie mille
    "Vivi come se dovessi morire domani, pensa come se nn dovessi morire mai"

    "Solo i coraggiosi arrivano lā dove neanche gli angeli riescono a volare"

  2. #2

    rmiregistry..

    Ho notato ke se lancio il comando rmiregsitry dalla cartella in cui č contenuto il codice funziona..da un altro path non va come mai??
    Funziona nel senso ke la "parte server" registra i dati nel registry, la parte client quando vi accede mi genera, invece, il seguente errore:

    Exception in thread "main" java.lang.ClassCastException: Message_Stub cannot be
    cast to Message
    at MessageClient.main(MessageClient.java:16)

    Eseguo anke il comando rmic Message.. ma non cambia nulla!!come mai!!
    C'e' qlc ke puo aiutarmi??
    "Vivi come se dovessi morire domani, pensa come se nn dovessi morire mai"

    "Solo i coraggiosi arrivano lā dove neanche gli angeli riescono a volare"

  3. #3

    aiuto..

    Nono c'e' nessuno allora ke puo darmi una mano??
    Il problema sembra essere il cast di tipo a un oggetto remoto (si dice cosi??)
    "Vivi come se dovessi morire domani, pensa come se nn dovessi morire mai"

    "Solo i coraggiosi arrivano lā dove neanche gli angeli riescono a volare"

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.