株式の最新の株価を取得しようとしています。例として使用している URL は
String stockURL=http://www.google.com/ig/api?stock=ADSL
.
このリンクをブラウザで開くことができます。URL を実行した後に取得したドキュメントを解析するために、次のコードを記述しました。
public static void main(String[] args) {
URL url;
try {
url = new URL(stockUrl);
GettingCurrentStockPrice gettingCurrentStockPrice = new GettingCurrentStockPrice();
gettingCurrentStockPrice.readDoc(gettingCurrentStockPrice
.parse(url));
} catch (MalformedURLException e) {
System.out.println("Encountered MalformedURLException:" + e);
} catch (DocumentException e) {
System.out.println("Encountered DocumentException:" + e);
}
}
private Document parse(URL url) throws DocumentException {
SAXReader reader = new SAXReader();
Document document = reader.read(url);
return document;
}
private void readDoc(Document document) {
Element root = document.getRootElement();
// iterate through child elements of root
for (Iterator<Element> i = root.elementIterator(); i.hasNext();) {
Element element = (Element) i.next();
System.out.println(element);
}
for (Iterator i = root.elementIterator("company data"); i.hasNext();) {
Element compName = (Element) i.next();
System.out.println("compName-->" + compName);
}
}
プログラムを実行すると、次で終了します。
Encountered DocumentException:org.dom4j.DocumentException: Connection timed out: connect Nested exception: Connection timed out: connect
.
指定された URL を開くことができないのはなぜですか?
更新:問題が発生しparse()
ますrender.read(url);
。