«« ( Date ) »» // «« ( Thread ) »» // drs - 2003

Re: izuzetak

by Ognjen Blagojevic
sreda, 18. jun 2003 - 10:45.

Zarko Acimovic wrote:
Kako da uhvatim izuzetak kada je server shutdown?
Ako probam:
try{
InetAddress.getByName(hostServer);
} catch (UnknownHostException uhe {...}
pri cemu je na hostServer - u moj server koji je iskljucen, ne dolazi do izuzetka, jer ustvari ceo racunar nije iskljucen, odnosno on je u mrezi i "vidi se" (naprimer u racunskom centru se vidi kao RC-01/147.91.1.1)
jedino da iskljucim racunar...

Ovo i ne treba da baci izuzetak, jer ako ja dobro shavatam getByName se obraca DNS serveru, a ne tvojoj aplikaciji.

Mozda da koristis timeout.

try {
//...

InetAddress addr = InetAddress.getByName(IPKase);
int port = 2000; // bilo koji preko 1024
sockaddr = new InetSocketAddress(addr, port);

int timeoutMs = 2000; // 2 seconds
kasa.connect(sockaddr, timeoutMs);
} catch (SocketTimeoutException e) {
System.out.println("Tajmaut.");
} // ovde treba uhvatiti jos par izuzetaka

Ukoliko se veza ne uspostavi posle 2 sekunde (ili bilo koje vrednosti koja tebi odgovara), kasa.connect ce baciti SocketTimeoutException.


Ali, dalje... posto mi je server iskljucen dobijam sledece izuzetke, koje ne mogu da uhvatim, jer mi kazu da se, naprimer ConnectException ne hvata, tamo gde se hvata
UnknownHostException. Da li treba da idem tamo gde su Socket - i ????

Ovo mi bas nije jasno. Daj malo koda, i objasni sta je :

> Mala provera hosta: RC-01 (server)

Ognjen