Witam,
ma ktoś pomysł, dlaczego poniższy fragment kodu:
Image img;
try {
img = ImageIO.read(new URL("http://www.strona.pl/obraz.jpg"));
System.out.println(img);
} catch (Exception e) {e.printStackTrace();}
w przypadku, jeżeli plik: 'http://www.strona.pl/obraz.jpg' NIE istnieje, nie wyrzuca Exception? W dodatku, konsola w takim przypadku, daje mi Output
null
(innymisłowy: zmienna 'img' jest null). Dokumentacja wyraźnie mówi (przy metodzie 'read' dla ImageIO):
Throws:
IllegalArgumentException - if input is null.
IOException - if an error occurs during reading.
Czyli, analizując, jeżeli otrzymuję zmienną 'img==null' (o czym informuje mnie Output), znaczy to, że input był 'null', dlaczego nie otrzymuję więc IllegalArgumentException?
Zaznaczę, że błąd NIE występował, jeżeli testowałem program offline (gdy adres url odwoływał do miejsca na moim komputerze) - wtedy otrzymywałem w takim wypadku ładne Exception. Gdy przeniosłem to na 'sieć' (obraz.jpg umieszczony na serwerze w sieci), zaczął się powyższy problem. Pozdrawiam