Мне нужно попробовать подключиться к URL в строке request_url
.Если истекает время ожидания соединения, мне нужно повторить еще 2 раза, прежде чем вызывать другой URL (ans.getUrl(2)
) и повторить ту же логику.Вот мой фрагмент кода.Может ли кто-нибудь помочь мне с логикой, которую я должен использовать здесь?
//ans.getUrl returns a url based on the int parameter you send. It can only be 1 and 2.
String request_url= ans.getUrl(1);
try {
URL url;
URLConnection urlConn;
DataInputStream input;
//URL Creation:
url = new URL(request_url);
// URL connection channel.
urlConn = url.openConnection();
urlConn.setConnectTimeout(2000);
urlConn.setDoInput(true);
urlConn.setDoOutput(true);
urlConn.setUseCaches(false);
// Get response data.
input = new DataInputStream(urlConn.getInputStream());
String str;
System.out.println("Response XML::: ");
while (null != ((str = input.readLine()))) {
System.out.println("XML:: "+str);
//Write to temp file for parsing
FileWriter fstream = new FileWriter("response.xml", true);
BufferedWriter out = new BufferedWriter(fstream);
out.write(str+"\n");
//Close the output stream
out.close();
}
//Close input
input.close();
} catch (FileNotFoundException e) {
System.err.println("FileNotFoundException: "
+ e.getMessage());
} catch (IOException e) {
System.err.println("Caught IOException: "
+ e.getMessage());
}