一旦服务器关闭,这个片段就会不断地重复调用服务器,一旦请求失败,我怎样才能让它停止重复调用?也许是一个捕获/错误块?但我不确定如何实现它。谢谢!
HttpURLConnection httpConn = null;
InputStream is = null;
OutputStream os = null;
String xmlResponse = null;
try {
//Open Connection
String CollectionId="123";
String GetHTML="1";
String urlString = "http://tester.com/webservices/ContentWS.asmx/GetCollection?CollectionId="+CollectionId+"&GetHTML="+GetHTML;
System.out.println(urlString);
//String encodedUrl = URLEncoder.encode(urlString,"UTF-8");
URL url = new URL(urlString);
httpConn = (HttpURLConnection)url.openConnection();
//Setup Request
httpConn.setRequestMethod("GET");
httpConn.setDoOutput(true);
httpConn.setReadTimeout(10000);
httpConn.connect();
xmlResponse = convertStreamToString(httpConn.getInputStream());
}
catch (IOException e) {
e.printStackTrace();
}
String htmlContent = "";
try {
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
InputSource input = new InputSource();
input.setCharacterStream(new StringReader(xmlResponse));
Document doc = db.parse(input);
NodeList nodes = doc.getElementsByTagName("Item");
// iterate the Items
int i = 0;
int j = 0;
Date now = new Date();
for (i = 0; i < 2; i++) {
//Grab HTML to append to htmlContent
NodeList teaser = doc.getElementsByTagName("Html");
Element line = (Element) teaser.item(i);
htmlContent += getCharacterDataFromElement(line);
}
}
catch (Exception e) {
e.printStackTrace();
}
htmlContent = ...