「サーブレットでRSSフィードを配信する」でも紹介したように、RSS4jのようなライブラリを利用することで、データベースなどの情報から動的にRSSフィードを生成することが可能になります。ただ、RSSフィードは(当然)自らの情報配信のみを目的としたものではありません。ほかのサイトで公開されているRSSフィードを引用することで、自サイトでポータル的に複数サイトの新着情報を一覧表示することも可能になるのです。
本稿では、著者サポートサイト(http://www.wings.msn.to/contents/rss.php)で公開しているRSSフィードを例に、JSPページに新着情報を一覧表示してみることにしましょう。なお、本稿のサンプルを利用するには、RSS4jライブラリがあらかじめインストールされている必要があります。セットアップの詳細については、「サーブレットでRSSフィードを配信する」を参考にしてください。
<%@ page contentType="text/html;charset=Windows-31J"
import="java.net.*,java.util.*,churchillobjects.rss4j.*, |
このコードの実行結果は、以下のようになります。
こうしてみると、RSSフィードの読み込みが実にシンプルであることがお分かりになるはずです。解析したRSSフィードは、RssDocumentクラスを頂点に、複数のチャネル情報(RssChannelクラス)、さらにその配下にサマリアイテム情報(RssChannelItemクラス)などが属するという構成になっていますので、これを順に処理していきます。
本稿では、対象のURLをコード中にハードコーディングしていますが、これをクエリパラメータなどから動的に取得するようにすれば、より柔軟性を持った作りにすることも可能です。
Copyright © ITmedia, Inc. All Rights Reserved.