アプリケーションで jericho パーサーを使用して、軽量バージョンの Web ページを取得し、そこからいくつかの部分を抽出します。たとえば、次のコードを取得すると、次のようになります。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN/" "http://www.w3.org/TR/html4/loose.dtd"><html> <head> </head> <body> <b> <span class="articletitletext">Happy New Year!</span></b> <br> <span class="postedstamp">Posted By <script language="JavaScript" type="text/javascript"> <!-- document.write('<a href=" mailto:chris.wyman@verizon.net">'); // --> </script>Chris</a> on January 1, 2012</span><br> <br> <span id="intelliTXT">
From all of us here at TheForce.net, we wish you and your family a safe and Happy New Year. May the Force be with you in 2012!
</span></body> </html>
jericho パーサーを使用してもう一度解析したいのですが、実行すると
ArrayList<Element> centerElems=(ArrayList<Element>) pageSource.getAllElements(HTMLElementName.CENTER);
私はこの例外を得ました
01-01 10:46:37.518: ERROR/AndroidRuntime(648): java.lang.RuntimeException: Unable to start activity ComponentInfo{net.test.theforce/net.test.theforce.NewsListActivity}: java.lang.RuntimeException: java.lang.ClassCastException: java.util.Collections$EmptyList
そして、アプリケーションがクラッシュします...では、軽量化されたページの何が問題になっているのでしょうか?