我有一個獲取feed文檔(通過http)然後解析feed(不是JSON或XML類型)的Java方法。 這是方法:如何使用Jsoup加載自定義XML提要?
public ArrayList<ArrayList<String>> getFeed(String type)
{
String feed = "";
String address = "";
Document file;
/**
* FEED URLs-------\/
*/
switch (type) {
case "news":
address = "https://[domain]/svc/feeds/news/6001?subtree=false&imagesize=medium-square";
break;
case "events":
address = "http://[domain]/svc/feeds/events/6001?subtree=true&imagesize=medium-square&from=%5bfromDate%5d&to=%5btoDate";
}
try {
HttpURLConnection connection = (HttpURLConnection) (new URL(address)).openConnection();
//TODO: @Test
//----------------------------\/--THIS ONE WILL CAUSE ERRORS!!
file = (Document)connection.getContent();
connection.disconnect();
//OUTPUT
feed = file.getElementsByAttribute("pre").text();
stream = new StringReader(feed);
} catch (Exception e) {}
//BEGIN PARSING\\//--THEN OUTPUT//\\
try {
return parse();
} catch (FeedParseException e) {}
//de-fault
return null;
}
它不工作;說對象:'文件'造成NullPointerException
。 那麼如何提高我在調試某些在我看來是非開源的精度。
P.S .:我沒有測試「事件」情況,所以不用擔心那裏的GET參數。
我看不出它如何幫助雖然...
人?................ ............ – Olivier10178
你可以粘貼一下堆棧跟蹤嗎?另外我會建議確認連接已成功完成。例如'value.getResponseCode()'的值是什麼? –
你實際上並沒有用Jsoup解析Document。嘗試做一些像'file = Jsoup.connect(address).get();'。同時發佈你的堆棧跟蹤,並且更多的代碼,因爲你的代碼對我來說看起來有點奇怪。 – JonasCz