Je reçois
Caused by: Java.net.NoRouteToHostException: No route to Host
at Java.net.PlainSocketImpl.socketConnect(Native Method)
at Java.net.PlainSocketImpl.doConnect(PlainSocketImpl.Java:351)
at Java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.Java:213)
at Java.net.PlainSocketImpl.connect(PlainSocketImpl.Java:200)
at Java.net.SocksSocketImpl.connect(SocksSocketImpl.Java:366)
at Java.net.Socket.connect(Socket.Java:529)
at com.Sun.net.ssl.internal.ssl.SSLSocketImpl.connect(SSLSocketImpl.Java:564)
at Sun.reflect.GeneratedMethodAccessor638.invoke(Unknown Source)
at Sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.Java:25)
at Java.lang.reflect.Method.invoke(Method.Java:597)
at org.Apache.commons.httpclient.protocol.ReflectionSocketFactory.createSocket(ReflectionSocketFactory.Java:140)
at org.Apache.commons.httpclient.protocol.SSLProtocolSocketFactory.createSocket(SSLProtocolSocketFactory.Java:130)
at org.Apache.commons.httpclient.HttpConnection.open(HttpConnection.Java:707)
at org.Apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMethodDirector.Java:387)
at org.Apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.Java:171)
at org.Apache.commons.httpclient.HttpClient.executeMethod(HttpClient.Java:397)
at org.Apache.commons.httpclient.HttpClient.executeMethod(HttpClient.Java:323)
javadoc dit
Signale qu'une erreur s'est produite lors de la tentative de connexion d'un socket à une adresse et un port distants. En règle générale, l'hôte distant ne peut pas être atteint en raison d'un pare-feu intermédiaire ou si un routeur intermédiaire est en panne.
Cette erreur est-elle du côté client ou du côté distant ou cela peut être l'un ou l'autre?
Soit. Il peut s'agir d'un pare-feu sur la machine cliente bloquant les appels sortants ou quelque part à l'autre extrémité.
Fondamentalement, il indique que votre client ne peut pas se connecter au serveur car l'adresse est inaccessible à partir de la machine cliente.
Veuillez vérifier que l'adresse à laquelle vous vous connectez est accessible, soit via la commande ping dans votre invite de commande (Windows) ou via un terminal (basé sur Unix):
ping <address>
ou s'il s'agit d'un serveur Web, vous pouvez essayer de le vérifier dans votre navigateur Web.
La commande ping est utile pour moi dans la plupart des cas, car je saurais pourquoi exactement je ne peux pas me connecter à l'adresse. Il peut s'agir d'une adresse erronée ou, comme le suggère javadoc, d'un problème de pare-feu.