java.net.ConnectException: connexion expirée: se connecter?
J'ai utilisé du RMI dans mon code :
import java.rmi.*;
public interface AddServerIntf extends Remote {
double add(double d1,double d2) throws RemoteException;
}
import java.rmi.*;
import java.rmi.server.*;
public class AddServerImpl extends UnicastRemoteObject implements AddServerIntf {
public AddServerImpl() throws RemoteException {
}
public double add(double d1,double d2) throws RemoteException {
return d1+d2;
}
}
import java.net.*;
import java.rmi.*;
public class AddServer {
public static void main(String args[]) {
try {
AddServerImpl addServerImpl=new AddServerImpl();
Naming.rebind("AddServer",addServerImpl);
} catch(Exception exc) {
System.out.println(exc);
}
}
}
import java.rmi.*;
public class AddClient {
public static void main(String args[]) {
try {
String Url="rmi://"+args[0]+"/AddServer";
AddServerIntf addServerIntf=(AddServerIntf)Naming.lookup(Url);
System.out.println("The first number is "+args[1]);
double d1=Double.valueOf(args[1]).doubleValue();
System.out.println("The second number is: "+args[2]);
double d2=Double.valueOf(args[2]).doubleValue();
System.out.println("The Sum is: "+addServerIntf.add(d1,d2));
} catch(Exception exc) {
System.out.println(exc);
}
}
}
Ces 4 .fichiers java écrit.
Prochaine je compile tous ces fichiers.Puis-je créer un stub
à l'aide de rmic AddServerImpl
. Après que j'ai commencer rmi registre du côté serveur à l'aide de start rmiregistry
. Puis-je démarrer le serveur à l'aide de java AddServer
et finalement client à l'aide de java AddClient 27.60.200.80 5 9
.
Mais rien ne se passe
Exception est levée sur le côté client est java.net.ConnectException : connection timed out : connect
Qu'est-ce que la raison et comment puis-je résoudre ce problème?
Sur la machine cliente ces sont les suivantes .les fichiers de classe AddClient.class AddServerImpl.class AddServerImpl_Stub.class
et sur le côté serveur AddServer.class AddServerImpl.class AddServerImpl_Stub.class AddServerIntf.class
source d'informationauteur saplingPro | 2011-04-14
Vous devez vous connecter pour publier un commentaire.
Le message d'erreur dit tout: votre connection timed out. Cela signifie que votre demande n'a pas obtenu une réponse dans un délai de quelques (par défaut) calendrier. Les raisons qu'aucune réponse n'a été reçue, est probablement l'un des:
Noter que les pare-feu et le port ou le blocage de l'IP peut être mis en place par votre fournisseur de services internet
Nombre (1): L'adresse IP est incorrecte est la réponse correcte. Le fichier /etc/hosts (un.k.un.
C:\Windows\system32\drivers\etc\hosts ) avait une mauvaise entrée pour le nom de la machine locale.
Corrigé le fichier hosts, et à dos de Chameau fonctionne très bien. Merci pour le pointeur.
Si vous êtes pointant la config à un domaine (par ex. fabrikam.com), faire un NSLOOKUP pour assurer tous les cas, l'IPs est valide, et peut être connecté sur le port 389:
Exception : java.net.ConnectException
Cela signifie que votre demande n'a pas obtenu de réponse du serveur dans les délais prévus. Et leur sont certaines des raisons de cette exception: