Je n'ai pas réussi à trouver une réponse adéquate à la signification exacte de l'erreur suivante :
java.net.SocketException: Software caused connection abort: recv failed
Notes :
- Cette erreur est peu fréquente et imprévisible ; cependant, si vous obtenez cette erreur, toutes les futures demandes d'URI échoueront également.
- La seule solution qui fonctionne (aussi, seulement occasionnellement) est de redémarrer Tomcat et/ou la machine actuelle (Windows dans ce cas).
- L'URI est bien disponible (ce qui est confirmé en demandant au navigateur d'effectuer la récupération).
Code pertinent :
BufferedReader reader;
try {
URL url = new URL(URI);
reader = new BufferedReader(new InputStreamReader(url.openStream())));
} catch( MalformedURLException e ) {
throw new IOException("Expecting a well-formed URL: " + e);
}//end try: Have a stream
String buffer;
StringBuilder result = new StringBuilder();
while( null != (buffer = reader.readLine()) ) {
result.append(buffer);
}//end while: Got the contents.
reader.close();