【レポート】

ApacheCon Europe 2005 - 「Cocoon」を利用したポータル構築

    末岡洋子  [2005/08/09]

    Apache Software Fondationの中でも大きなプロジェクトの1つが、XMLベースのWeb開発フレームワークの「Cocoon」だ。2000年に開始した、"関心事の分離"というコンセプトを持つパブリッシングシステムだが、長所である柔軟性が逆に「Cocoon」そのものを分かりにくくしていた。

    ApacheConでは、「Cocoon」に関連したセッションがいくつかあったが、「Cocoon」を利用したポータル構築に関するセッションは人気を集めていた。プレゼンテーションを行ったのは、Carsten Ziegeler氏。5年前より「Cocoon」のコミッターで、リリースマネージャを務める人物だ。

    Webポータルが利用されるようになってしばらくになるが、ポータルの要件としては、レガシーなど既存システムの統合、統一感のあるルック&フィール、ユーザー/EAIプラットフォーム/バックエンド間のセッション管理などが上がっているという。また、Java APIのJSR168など各種標準のうち、どれをサポートするかにはそれほど関心が向けられていないともいう。

    「Cocoon」の特徴として、パイプラインコンセプトがある。ユーザーからの要求が入ったら、XML文書を生成する「Generator」、XLSTに変換する「Transformer」、表示する「Serializer」の3ステップで、役割を明確に分けて処理を行うというものだ。

    「Cocoon」を用いたポータル構築で重要となるのが「Coplet」技術だ。Cocoon Portletの略で、Javaによるコーディングを行うことなく「Cocoon」を用いたコンテンツ発行が行える。役割としては、パイプラインとしてポータルの生成、変換、発行・表示を行う。JSR 168をサポートしている。

    RSSフィードからニュースを取得し、XSLTを通して、HTML形式で表示することもできる。このほか発行/購読メカニズムや、ポータル画面の別の空間にコンテンツを表示することも可能だ。たとえば、従業員が利用するポータルの場合、ニュースや天気情報のポータルを動的なRSS Copletで作成し、ユーザー情報のポータルを単にXMLファイルから変換・表示した静的なCopletで作成、管理画面など役割に応じたポータルをXMLとXSLTを利用して作成、などのように利用できるという。

    メインタブの中にサブのタブを付けたWebサイトの構築も容易にできる。また、Coplet単位でセッションを処理するため、同じアプリケーションを利用するCopletを並べて、一方のCopletで処理を行った場合も、もう一方のCopletには影響しない。

    Ziegeler氏は、「ポータルへのニーズはユーザによって異なり、すべてに対応するようなソリューションはない」と述べ、米Gartnerの"ポータルは構築するものであることから、オープンなアーキテクチャ、標準ベースのソリューションが必要”という提言を引用した。その点で、「Cocoon」は強みを持ち、導入事例も増えているという。この日は、ドイツ証券取引所、オーストリア最大の銀行グループなどの事例が紹介された。

    今後の計画としては、間もなく、Webサービスのポートレット仕様「WSRP」に対応するという。このほか、追加コンポーネントの開発や、JavaアプリケーションフレームワークのSpringとの統合も検討中という。

    Carsten Ziegeler氏

    タブの中にタブがある画面を作成

    左と右のCopletの処理がお互いに影響していない(左で選択した画像を右に表示し、左では別の処理をしている)

    こちらは数式での例

    関連記事

    関連サイト

    新着記事

    特設サイトの情報

      人気記事

      一覧

        イチオシ記事

        新着記事

        特別企画

        マイナビニュースマガジン