IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

API standards et tierces Java Discussion :

RMI Connection refused to host: 127.0.0.1


Sujet :

API standards et tierces Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2004
    Messages : 6
    Par défaut RMI Connection refused to host: 127.0.0.1
    J'ai tenter de faire une application rmi de base pour tester. Elle fonctionne très bien en local, mais elle plante dès que je tente de l'utiliser à distanse.

    J'ai trouvé des posts concernant ce problème mais rien ne semble foncionner. J'ai joint à mon post le résultat de l'exécution de mon appliquation avec le plus d'information possible et le code de mon application.

    je vais laissé mon serveur ouvert pendant un certain temps si vous voulez essayer.

    -----côté serveur--------
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
     package test;
     
    import java.rmi.registry.Registry;
    import java.rmi.registry.LocateRegistry;
    import java.rmi.RemoteException;
    import java.rmi.server.RMIClientSocketFactory;
    import java.rmi.server.RMISocketFactory;
    import java.rmi.server.UnicastRemoteObject;
     
    public class Server extends UnicastRemoteObject implements Interface 
    {
     
        protected Server() throws RemoteException
        {
            super();
        }
     
        /**
         * 
         */
        private static final long serialVersionUID = -8515732983219125758L;
     
        public String sayHello() throws RemoteException
        {
            return "Hello";
        }
     
        public static void main(String args[])
        {
     
            try
            {
                Server obj = new Server();
                LocateRegistry.createRegistry(1099);
                Registry registry = LocateRegistry.getRegistry();
                registry.rebind("Interface", obj);
            }
            catch (Exception e)
            {
                e.printStackTrace();
            }
        }
    }
    -----côté client--------
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
     package test;
     
    import java.rmi.Naming;
     
    public class Client
    {
     
        private Client()
        {
        }
     
        public static void main(String[] args)
        { 
            String serveur = "darksid.no-ip.biz";
            if(args.length != 0)
                serveur = args[0];
            try
            {
                System.out.println(1);
                Interface stub = (Interface) Naming.lookup("rmi://" + serveur + "/Interface");
                System.out.println(2);
                String response = stub.sayHello();
                System.out.println(3);
                System.out.println("response: " + response);
            }
            catch (Exception e)
            {
                System.err.println("Client exception: " + e.toString());
                e.printStackTrace();
            }
        }
    }
    --------interface----------
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     package test;
     
    import java.rmi.Remote;
    import java.rmi.RemoteException;
     
    public interface Interface extends Remote
    {
        String sayHello() throws RemoteException;
    }
    ------- log -------
    C:\Users\Claude\Desktop>java -jar -Drmi.debug=true -Dsun.rmi.log.debug=true -Dsun.rmi.transport.lo
    gLevel=VERBOSE -Dsun.rmi.transport.tcp.logLevel=VERBOSE -Dsun.rmi.server.logLeve
    l=VERBOSE -Dsun.rmi.loader.logLevel=VERBOSE ./clientRMI.jar
    1
    2007-08-12 18:39:53 sun.rmi.transport.tcp.TCPEndpoint <clinit>
    FIN: main: localHostKnown = true, localHost = 192.167.0.103
    2007-08-12 18:39:53 sun.rmi.server.UnicastRef newCall
    FIN: main: get connection
    2007-08-12 18:39:53 sun.rmi.transport.tcp.TCPTransport <init>
    FIN: main: Version = 2, ep = [192.167.0.103:0]
    2007-08-12 18:39:53 sun.rmi.transport.tcp.TCPEndpoint getLocalEndpoint
    FIN: main: created local endpoint for socket factory null on port 0
    2007-08-12 18:39:53 sun.rmi.transport.tcp.TCPChannel createConnection
    FIN: main: create connection
    2007-08-12 18:39:53 sun.rmi.transport.tcp.TCPEndpoint newSocket
    PLUS FIN: main: opening socket to [darksid.no-ip.biz:1099]
    2007-08-12 18:39:53 sun.rmi.transport.proxy.RMIMasterSocketFactory createSocket
    FIN: main: host: darksid.no-ip.biz, port: 1099
    2007-08-12 18:39:54 sun.rmi.transport.tcp.TCPChannel createConnection
    PLUS FIN: main: server suggested 70.48.135.237:52373
    2007-08-12 18:39:54 sun.rmi.transport.tcp.TCPChannel createConnection
    PLUS FIN: main: using 192.167.0.103:0
    2007-08-12 18:39:54 sun.rmi.server.UnicastRef newCall
    PLUS FIN: main: create call context
    2007-08-12 18:39:54 sun.rmi.transport.StreamRemoteCall <init>
    PLUS FIN: main: write remote call header...
    2007-08-12 18:39:54 sun.rmi.transport.StreamRemoteCall getOutputStream
    PLUS FIN: main: getting output stream
    2007-08-12 18:39:54 sun.rmi.server.UnicastRef invoke
    PLUS FIN: main: execute call
    2007-08-12 18:39:54 sun.rmi.transport.StreamRemoteCall getInputStream
    PLUS FIN: main: getting input stream
    2007-08-12 18:39:54 sun.rmi.server.LoaderHandler loadClass
    FIN: main: name = "test.Server_Stub", codebase = "", defaultLoader = sun.misc.La
    uncher$AppClassLoader@11b86e7
    2007-08-12 18:39:54 sun.rmi.server.LoaderHandler loadClass
    PLUS FIN: main: class "test.Server_Stub" found via defaultLoader, defined by sun
    .misc.Launcher$AppClassLoader@11b86e7
    2007-08-12 18:39:54 sun.rmi.server.LoaderHandler loadClass
    FIN: main: name = "java.rmi.server.RemoteStub", codebase = "", defaultLoader = s
    un.misc.Launcher$AppClassLoader@11b86e7
    2007-08-12 18:39:54 sun.rmi.server.LoaderHandler loadClass
    PLUS FIN: main: class "java.rmi.server.RemoteStub" found via defaultLoader, defi
    ned by null
    2007-08-12 18:39:54 sun.rmi.server.LoaderHandler loadClass
    FIN: main: name = "java.rmi.server.RemoteObject", codebase = "", defaultLoader =
    sun.misc.Launcher$AppClassLoader@11b86e7
    2007-08-12 18:39:54 sun.rmi.server.LoaderHandler loadClass
    PLUS FIN: main: class "java.rmi.server.RemoteObject" found via defaultLoader, de
    fined by null
    2007-08-12 18:39:54 sun.rmi.server.UnicastRef done
    FIN: main: free connection (reuse = true)
    2007-08-12 18:39:54 sun.rmi.transport.tcp.TCPChannel free
    FIN: main: reuse connection
    2007-08-12 18:39:54 sun.rmi.transport.tcp.TCPChannel free
    FIN: main: create reaper
    2007-08-12 18:39:54 sun.rmi.server.UnicastRef newCall
    FIN: main: get connection
    2007-08-12 18:39:54 sun.rmi.transport.tcp.TCPChannel createConnection
    FIN: main: create connection
    2007-08-12 18:39:54 sun.rmi.transport.tcp.TCPEndpoint newSocket
    PLUS FIN: main: opening socket to [127.0.0.1:53750]
    2007-08-12 18:39:54 sun.rmi.transport.proxy.RMIMasterSocketFactory createSocket
    FIN: main: host: 127.0.0.1, port: 53750
    2007-08-12 18:39:55 sun.rmi.server.UnicastRef newCall
    FIN: RMI RenewClean-[127.0.0.1:53750]: get connection
    2007-08-12 18:39:55 sun.rmi.transport.tcp.TCPChannel createConnection
    FIN: RMI RenewClean-[127.0.0.1:53750]: create connection
    2007-08-12 18:39:55 sun.rmi.transport.tcp.TCPChannel newConnection
    FIN: main: reuse connection
    2007-08-12 18:39:55 sun.rmi.transport.tcp.TCPEndpoint newSocket
    PLUS FIN: RMI RenewClean-[127.0.0.1:53750]: opening socket to [127.0.0.1:53750]
    2007-08-12 18:39:55 sun.rmi.transport.tcp.TCPChannel free
    FIN: main: reuse connection
    2
    2007-08-12 18:39:55 sun.rmi.transport.proxy.RMIMasterSocketFactory createSocket
    FIN: RMI RenewClean-[127.0.0.1:53750]: host: 127.0.0.1, port: 53750
    2007-08-12 18:39:55 sun.rmi.server.UnicastRef invoke
    PLUS FIN: main: method: public abstract java.lang.String test.Interface.sayHello
    () throws java.rmi.RemoteException
    2007-08-12 18:39:55 sun.rmi.transport.tcp.TCPChannel createConnection
    FIN: main: create connection
    2007-08-12 18:39:55 sun.rmi.transport.tcp.TCPEndpoint newSocket
    PLUS FIN: main: opening socket to [127.0.0.1:53750]
    2007-08-12 18:39:55 sun.rmi.transport.proxy.RMIMasterSocketFactory createSocket
    FIN: main: host: 127.0.0.1, port: 53750
    Client exception: java.rmi.ConnectException: Connection refused to host: 127.0.0
    .1; nested exception is:
    java.net.ConnectException: Connection refused: connect
    java.rmi.ConnectException: Connection refused to host: 127.0.0.1; nested excepti
    on is:
    java.net.ConnectException: Connection refused: connect
    at sun.rmi.transport.tcp.TCPEndpoint.newSocket(Unknown Source)
    at sun.rmi.transport.tcp.TCPChannel.createConnection(Unknown Source)
    at sun.rmi.transport.tcp.TCPChannel.newConnection(Unknown Source)
    at sun.rmi.server.UnicastRef.invoke(Unknown Source)
    at test.Server_Stub.sayHello(Unknown Source)
    at test.Client.main(Client.java:23)
    Caused by: java.net.ConnectException: Connection refused: connect
    at java.net.PlainSocketImpl.socketConnect(Native Method)
    at java.net.PlainSocketImpl.doConnect(Unknown Source)
    at java.net.PlainSocketImpl.connectToAddress(Unknown Source)
    at java.net.PlainSocketImpl.connect(Unknown Source)
    at java.net.SocksSocketImpl.connect(Unknown Source)
    at java.net.Socket.connect(Unknown Source)
    at java.net.Socket.connect(Unknown Source)
    at java.net.Socket.<init>(Unknown Source)
    at java.net.Socket.<init>(Unknown Source)
    at sun.rmi.transport.proxy.RMIDirectSocketFactory.createSocket(Unknown S
    ource)
    at sun.rmi.transport.proxy.RMIMasterSocketFactory.createSocket(Unknown S
    ource)
    ... 6 more

  2. #2
    Membre confirmé
    Inscrit en
    Juillet 2007
    Messages
    38
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 38
    Par défaut
    Qu'as tu tapé comme commande côté serveur ?

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2004
    Messages : 6
    Par défaut
    je l'ai lancé avec éclipse, sans option, ...

  4. #4
    Membre chevronné Avatar de gronono
    Inscrit en
    Novembre 2003
    Messages
    457
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Novembre 2003
    Messages : 457
    Par défaut
    As-tu lancer le rmiregistry coté serveur ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    %JAVA_HOME%\bin\rmiregistry.exe

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2004
    Messages : 6
    Par défaut
    Je l'ai lancé avec :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    LocateRegistry.createRegistry(1099);
    Le plus étrange en faite c'est que je récupère l'objet sur le serveur, mais dès que j'exécute une méthode ca plante en disant que le 127.0.0.1 refuse la connection.

  6. #6
    Membre confirmé
    Inscrit en
    Juillet 2007
    Messages
    38
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 38
    Par défaut
    Peut-être un probleme de droit. Essaie de mettre un fichier policy.all de chaque coté avec les bons droits et mettre un securityManager.

    Enfin jete un coup d'oeil sur ça:
    http://www.artima.com/javaseminars/m...RMI/index.html

    Et il me semble qu'avant de lancer le serveur, il faut générer le stub et le skeleton avec rmic.

    Je t'avoue que RMI reste assez obscur pour moi...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. ssh: connect to host truc port 22: Connection refused
    Par Crapise dans le forum Réseau
    Réponses: 18
    Dernier message: 23/11/2012, 18h39
  2. Débutant RMI, problème "connection refused"
    Par Marc_3 dans le forum Débuter avec Java
    Réponses: 3
    Dernier message: 10/08/2011, 18h10
  3. SSH connect to host XX.XX.XX.XX port 22: Connection refused
    Par fara morgana dans le forum Réseau
    Réponses: 8
    Dernier message: 28/04/2009, 19h01
  4. "Connection refused to host: 127.0.0.1"
    Par Claythest dans le forum Wildfly/JBoss
    Réponses: 5
    Dernier message: 31/03/2008, 23h23
  5. [SAX] Connection refused
    Par cowa dans le forum Format d'échange (XML, JSON...)
    Réponses: 4
    Dernier message: 26/10/2005, 09h32

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo