Cocoonとは

 Apache Cocoonは、 動的なXML文書の生成とXSLT変換によるWeb上でのXML配信を実現する統合フレームワークです。 Jakarta Tomcatなどのサーブレット・コンテナ上で動作する、 サーバーサイドJava技術を基盤とし、 独自のスクリプト言語やXSLTプロセッサApache Xalanなどのソフトウェアを組み合わせて、 様々な機能を提供しています。
 CocoonはXalanやXercesと同じApache XMLプロジェクトの中心的なソフトウェアの 1つとして、オープンソースの体制で日夜開発が進められています。 バージョン1系統とバージョン2系統がありますが、 バージョン2で大幅な機能強化を伴う変更が多々ありました。 現在の最新バージョンは2.0.4(2002/12/12公開)です。


Cocoon2.0.4のインストール

 Apache Cocoonを使うには、Tomcatなどのサーブレット・コンテナが別に必要です。 またサーブレット・コンテナを動かすには、Sun J2SDK 1.4などのJava VMが必要です。 Cocoonは上記のホームページから「Download」のリンクが伸びる このページで無償で入手できます。 次の環境で試しました。

OSJava VMサーブレットコンテナCocoon
MS WindowsXP Home EditionJ2SDK 1.4.0Jakarta Tomcat 4.1.12 2.0.4

 Cocoonは純粋Javaのプログラムなので、コンパイル済みのバイナリ配布が各プラットフォームで使えます。 ただしバイナリ配布はJava VMのバージョンが1.2〜1.3用と1.4用の2種類があります。 ここではWindows上のJ2SDK 1.4なので、 「cocoon-2.0.4-vm14-bin.zip」というファイルをダウンロードし、アーカイバで展開します。 すると、cocoon-2.0.4というディレクトリができます。 その中にcocoon.warというWARファイルがあるので、 これをTomcatの場合は $TOMCAT_HOME/webapps/ の下にコピー ($TOMCAT_HOMEなどの説明はこのページでは省きます。 サーバーサイドJavaの部屋に少しだけメモしていますので、そちらをご覧下さい) して、Tomcatを再起動します(server.xmlなどの設定は全く書き換えなくてOKです)。

 Tomcatを再起動すると、cocoon.warが展開されて、「cocoon」 というディレクトリが作られるはずです。 この状態で、 cocoonのサンプルやドキュメント(もまた、XML配信されているのです) が入ったアプリケーションが使えるようになります。早速、アクセスしてみます。 URLはhttp://localhost:8080/cocoon/ のようになる(※1)はずです。つまりアプリケーションのコンテキストパスが「cocoon」です。 このようなページが表示されたら成功です。

(※1)「index.html」はつけないで下さい。


Cocoonディレクトリを移動する

 Cocoonのアプリケーションは、かなり巨大です。 これを特定のサーブレットコンテナのwebappsの下に配置するのではなく、 独自のディレクトリに移動させることを考えます。 ここでは、$TOMCAT_HOME/webapps/cocoon となっているディレクトリを C:/usr/javadeploy/cocoon に変更しようと思います。

  1. サーブレットコンテナを停止します。
  2. cocoon.warを削除します。
  3. ディレクトリcocoonをC:/usr/javadeploy/cocoonに移動させます。
  4. $TOMCAT_HOME/conf/server.xmlに次のような記述を追加します。

    <Context path="/cocoon" docBase="C:/usr/javadeploy/cocoon"
     debug="0" reloadable="true">
      <Logger className="org.apache.catalina.logger.FileLogger"
              prefix="cocoon." suffix=".txt" timestamp="true"/>
    </Context>
    

  5. サーブレットコンテナを起動します。

Baykit and Cocoon Top

(first uploaded 2002/12/23 last updated 2002/12/23, URANO398)

Gポイントポイ活 Amazon Yahoo 楽天

無料ホームページ 楽天モバイル[UNLIMITが今なら1円] 海外格安航空券 海外旅行保険が無料!