2013-03-28 11 views
5

jestem corazNoRouteToHostException na kliencie lub serwerze?

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 mówi

sygnalizuje, że wystąpił błąd podczas próby połączenia gniazdo do zdalnego adresu i portu. Zazwyczaj zdalny host nie może być osiągnięty z powodu interweniującej zapory sieciowej lub jeśli pośredni router jest wyłączony.

Czy ten błąd występuje po stronie klienta lub zdalnej, czy może być jednym z nich?

Odpowiedz

2

Albo. Może to być zapora na komputerze klienckim blokująca połączenia wychodzące lub gdzieś na drugim końcu.

+0

Mam teraz do czynienia z tym samym problemem, co powinienem zrobić dla filewall w komputerze klienta? Czy powinienem to zamknąć? – user5520049

+2

W jaki sposób ta odpowiedź została zaakceptowana, gdy po prostu nie wie, o co chodzi, bez wskazywania prawdziwego problemu –

6

Zasadniczo mówi, że klient nie może połączyć się z serwerem, ponieważ adres jest niedostępny z komputera klienta.

Proszę sprawdzić, czy adres łączysz się jest dostępne, albo za pośrednictwem ping polecenia w wierszu polecenia (Windows) lub zaciskiem (Unix-based):

ping <address> 

lub jeśli jest to serwer WWW możesz spróbować sprawdzić to w swojej przeglądarce internetowej.
Polecenie ping jest pomocne w większości przypadków, ponieważ wiem, dlaczego dokładnie nie mogę połączyć się z adresem. Może to być adres źle wpisany lub, jak sugeruje javadoc, problem z firewallem.

Powiązane problemy