Le code suivant semble toujours échouer: J'ai vérifié l'URL, et c'est une image JPG valide. L'erreur que je reçois est: p> Exception dans le thread "Main" Javax.ImageIO.IIOException: impossible d'obtenir le flux d'entrée de l'URL! causée par: java.net.connectetException: connexion expirée de Java Résultat: 1 P>
BlockQuote> Qu'est-ce que cela signifie?
Funny Thing est, si je change ma connexion Internet à celle du sans fil du voisin, cela fonctionne soudainement. P> p>
à javax.imageo.imageio.read (imageo.java:1385)
à maestro.main2.main (Main2.java:25) P>
à java.net.plainsocketimpl.socketConnect (méthode natif)
à java.net.abstractplansocketimpl.doconnect (abstractplansocketimpl.java:310)
à java.net.abstractPlsocketMpl.ConnectThafoaddress (abstractplansocketimpl.java:176)
à java.net.abstractplansocketmpl.Connect (abstractplansocketimpl.java:163)
à java.net.socket.Connect (socket.java:546)
à java.net.socket.Connect (socket.java:495)
à sun.net.networkclient.doconnect (NetworkClient.java:174)
à sun.net.www.http.httpclient.openseerver (httpclient.java:409)
à sun.net.wwww.http.httpclient.openseerver (httpclient.java:530)
à sun.net.wwww.http.httpclient. (httpclient.java:240)
à sun.net.wwww.http.httpclient.new (httpclient.java:321)
à sun.net.www.http.httpclient.new (httpclient.java:338)
à sun.net.www.protocol.http.httpurlconnection.getnewhttpClient (httpurlconnection.java:814)
à sun.net.www.protocol.http.httpurlconnection.plainconnect (httpurlconnection.java:755)
à sun.net.wwww.protocol.http.httpurlconnection.Connect (httpurlconnection.java:680)
à sun.net.www.protocol.http.httpurlconnection.gettinputStream (httpurlconnection.java:1005)
à java.net.url.openstream (url.java:1029)
à javax.imageo.imageio.read (imageo.java:1383)
... 1 de plus p>
3 Réponses :
Ceci est peut-être peu probable sur un réseau domestique, mais beaucoup d'entreprises ont des serveurs proxy HTTP qui peuvent faire vos erreurs un peu trompeurs. Souvent, l'URL apparaîtra bien fonctionner manuellement car votre navigateur est configuré pour utiliser votre serveur proxy. Vous pouvez définir les paramètres de proxy sur la ligne de commande ou dans le code, voir: http://java.sun.com/javase/6/docs/technotes/guides/net/proxies.html . p>
Mais quels paramètres dois-je utiliser pour le proxy?
Que je ne pouvais pas dire. Vous pouvez vérifier les paramètres de proxy de votre navigateur et copier ceux-ci?
Firefox n'iste énumère aucun proxy. Quand j'entre à propos de: config, le réseau de propriétés.proxy.ftp = "" et réseau.proxy.http = "". Ce qui signifie qu'ils ne sont pas définis (et donc non utilisés)
Ce code fonctionne parfaitement pour moi. P>
Si vous avez une connexion Internet très lente, c'est la raison. Ou vous téléchargez / téléchargez des trucs (http, torrents, ftp, ...) p>
J'ai vérifié manuellement l'URL, et elle est valide et contient une image JPG valide. P> blockQuote>
EDIT: H2>
l'avez-vous testé dans un navigateur?
Si oui, peut-être que c'est le délai d'attente plus longtemps. del>
L'avez-vous eu testé sur votre propre em> strud> réseau avec le navigateur? P>Qu'est-ce que cela signifie? P> blockQuote>
Une exception de temps exceptionnelle signifie que vous ne pouviez pas créer une prise. Cela peut avoir quelques raisons: p>
- Server ne répond pas.
- Le serveur est très occupé. LI> ul> li>
- Les paquets sont perdus. Cela peut aussi avoir quelques raisons:
- Votre téléchargement et votre haut débit est plein. li>
- Vous êtes loin du "Central" de l'Internet-fournisseur. (Vous vivez dans le pays) li> ul> li> ul>
Ont essayé d'utiliser une urlconnection (afin que je puisse définir le délai d'attente). Et définir le délai d'attente dans une minute. Toujours rien.
De plus, j'ai une connexion Internet ADSL, permettant ainsi des téléchargements à grande vitesse. Donc ça ne peut pas être ça. Si le serveur est occupé, je ne pourrais pas récupérer l'URL de l'image en premier lieu. N'a pas utilisé toute ma capacité de téléchargement, téléchargeant divers grands torrents comme nous parlons. J'habite près d'une grande ville.
Cela a fonctionné pour moi. :)
URL url = new URL("http://userserve-ak.last.fm/serve/126/8636005.jpg"); Image image = ImageIO.read(url.openStream()); System.out.println(image);
Questions DNS? Et si vous utilisez l'adresse IP 92.122.126.242 à la place à l'adresse?