PAL Portal Server のビルド・実行方法

準備するもの

  • ant, maven1, maven2 をそれぞれのインストール手順に従って、実行できる状態にしてください(環境変数やパスが適切に設定されている必要があります)。
  • Jetspeed2 や各ポートレットを cvs や svn からチェックアウトして、PAL Portal 用に修正して(パッチを当てたりして変更を入れる)からビルド・配備するため、cvs, svn, patch の各コマンドがインストールされて、パスが通っている必要があります。

ディレクトリ構造

  • lib ディレクトリ
    ビルドの実行に利用する jar ファイルを入れる。
  • portal ディレクトリ
    ポータルサーバー(Jetspeed2)関連のデータ
  • portal/files ディレクトリ
    portal/files 以下にあるファイルをチェックアウトしたポータルサーバー(Jetspeed2)の新しいファイルとして置き換える
  • portal/patches ディレクトリ
    portal/patches 以下にあるパッチファイルをポータルサーバー(Jetspeed2)に当てる。当てるパッチの一覧は、build.propertiesに記述される。
  • portal/scripts ディレクトリ
    ポータルサーバー(Jetspeed2)のビルドなどに利用するスクリプトを入れる。
  • portlets ディレクトリ
    配備するポートレットに関するデータ
  • portlets/files/[ポートレット名] ディレクトリ
    portlets/files/[ポートレット名] 以下にあるファイルをチェックアウトしたポートレットの新しいファイルとして置き換える
  • portlets/patches/[ポートレット名] ディレクトリ
    portlets/patches/[ポートレット名] 以下にあるパッチファイルをポートレットに当てる。当てるパッチの一覧は、portlets/resources以下にあるポートレットリソースプロパティにに記述される。
  • portlets/resources ディレクトリ
    ポートレットをチェックアウト、ビルドおよび配備するために必要な情報をポートレットリソースプロパティとして、記述して、このディレクトリ以下に置く。PAL Portal へ配備するぽーとれっとについては、build.properties に記述される。
  • build.properties ファイル
    PAL Portal をビルド・配備するために必要な情報をプロパティとしてこのファイルにまとめる
  • override.properties ファイル
    優先するプロパティをここに記述する

ビルドの準備

まずは、PAL Portal をチェックアウトしてください。

$ cvs -d:pserver:anonymous@cvs.sourceforge.jp:/cvsroot/pal login
$ cvs -z3 -d:pserver:anonymous@cvs.sourceforge.jp:/cvsroot/pal co pal-portal

次に、優先されるプロパティを記述した override.properties を作成します。

$ cd pal-portal
$ cp override.properties.sample override.properties

override.properties をご利用の環境に合わせて、編集してください。Jetspeed2 のプロパティも記述されていますが、$HOME/build.properties に記述されているものより優先されるので注意してください。

ビルド・配備

PAL Portal は、ant によりビルドを実行しています(内部的には、Jetspeed2 をビルドするために、maven1 を利用したり、ポートレットをビルドするために、maven1 および maven2 などを利用します)。ビルド・配備するために6つの ant ターゲットを用意しています。

  • clean ターゲット
    ポータルサーバー(Jetspeed2)および各ポートレットでcleanゴール・ターゲットに相当するものを実行します。
  • remove ターゲット
    チェックアウトしたポータルサーバー(Jetspeed2)および各ポートレットを削除して、ビルド時に生成されたファイル・ディレクトリも削除します。
  • checkout ターゲット
    ポータルサーバー(Jetspeed2)および各ポートレットをチェックアウトします。
  • update ターゲット
    チェックアウトしたポータルサーバー(Jetspeed2)および各ポートレットにパッチを当てて、指定されたファイル・ディレクトリを削除し、新規ファイルを追加します。
  • build ターゲット
    ポータルサーバー(Jetspeed2)および各ポートレットをビルドします。
  • deploy ターゲット
    ポータルサーバー(Jetspeed2)および各ポートレットを配備します。

PAL Portal をチェックアウト後、初めてビルド・配備するのであれば、

$ ant checkout update build deploy

です。あとは、http://localhost:8080/palportal にアクセスすると、PAL Portal が表示されます。

また、各ターゲットに~.portal または~.portlets とすると、ポータルまたは各ポートレットだけにそのターゲットを実行できます。たとえば、ポータルを一度ビルドしていて、ポートレットだけを更新して配備し直したい場合には、

$ ant remove.portlets checkout.portlets build.portlets deploy

とすれば OK です。

さぁ、がんばって作っていきましょ~♪

ポータル

ポータルのトップでは、サンプルとして、どんなものをページにおいておくのがいいかね~。Netvibesやstart.comなどを見て考える。お天気ポートレットはあった方がいいだろうし、あとは RSS 系は必要だな。CMS系もあった方がいいかな。Web Searchみたいな検索するやつもあるといいのかな。

ポータルサーバーの名前

今日もいろいろと考える。やっぱり、覚えやすい簡単なものがいいしな。日本人が言いにくいのは対象外だし。かなり考えているが、これはというのは多くは出てこない。個人的な現状の有力候補は、Jetstar かな。名前的にはシンプルだし、暗にJETspeed STARts!っていう感じで、Jetspeed の普及を目指せるし。果たして、これを超えるのが現れるかな(ポータルサーバーにするのに良い名前があれがください~)。一応、来週の月曜日には決定を目指します(いつまでも名前を考えていても仕方がないしね、製品の質を上げる方が重要だし)。