uPortal とは、北米の方で、大学ポータルとして実績が多いポータルアプリケーション構築のためのフレームワークです。大学での利用実績が多いことから、ログイン関係の機能が実用レベルで最初から取り入れられています。
- JDK 5.0
- Tomcat 5.5.9
- HSQLDB 1.7
- ant 1.6.2
- uPortal 2.5.1 (pluto 1.0.1)
[参考] + uPortal Home Page + uPortal Wiki + Beginners Guide to uPortal (PDF)
uPortal 覚書
言葉の定義
- チャネル(channel)
- 単一のデータソースへの通信路のこと。uPortal はこのチャネルを通じて、ポータルコンテンツの提供元から出力データを受け取ります。
- Portlet Definition ID
- Portlet にふられる一意なIDのこと。uPortal は、Portlet コンテナとして Pluto を使っているため、Pluto の規約に沿った ID が振られる。
[portlet-context-name].[portlet-name]
uPortal のインストール方法
前提
次の環境が入っていること(ただし、必ずしもこの製品でなければならないというわけではない)
- JDK1.4 or JDK5.0
- ant 1.6.2
- Tomcat 5.0.19 以上 or Tomcat 5.5 以上
- HSQLDB 1.7 以上
ソースコードをダウンロードする
uPortal のサイトからソースコードをダウンロードします。
build.properties を編集する
次に、uPortal をダウンロードしたフォルダ({uPortal}とよぶ)に移動して、build.properties を編集します。何を編集するかというと、21行目あたりにある
を、Tomcat がインストールされているディレクトリ({TOMCAT_HOME}と呼ぶ)に合わせて変更します。もし、Tomcat 5.5 系を使っている場合は、35行目あたりにある
をコメントアウトし、48行目あたりにある
のコメントをはずします。
(JDK1.4 の場合のみ)JAXP をインストールする
uPortal は JAXP 1.3 を使うので、インストールします。
- {uPortal}/lib/jaxp フォルダにある .jar ファイルを {JDK1.4}/lib/endorsed ディレクトリにコピーします
- {uPortal}/lib/jaxp フォルダにある .jar ファイルを {TOMCAT_HOME}/common/endorsed ディレクトリにコピーします
データベースドライバをインストールする
{uPortal}/hsqldb.jar を、{TOMCAT_HOME}/common/lib にコピーします。
uPortal の初期化を行う
最初に、HSQLDB を起動します。{uPortal}/lib ディレクトリに移動して次のコマンドを実行します。
データベースが起動したら、ant タスクの initportal を実行します。{uPortal} ディレクトリに移動して次のコマンドを実行します。
いろいろなものがコンパイルされて、初期化されます。TOMCAT へのデプロイまで終わっているはずです。
Tomcat を起動する
データベースが起動し、初期化が完了したら、Tomcat を起動します。{TOMCAT_HOME}/bin/startup.bat を起動します。
エラー無く起動したら、 http://localhost:8080/uPortal にアクセスします。画面が表示されれば成功です。
uPortal の機能
セキュリティ
管理者は、個別やグループ単位でロールを定義することができます。このロールは、ユーザがどのカテゴリに対する閲覧権限を持つかや、どのチャネルが使用可能か、どの機能が使用可能でどのデータが閲覧可能かなどを定義します。
リポジトリ
ユーザプロファイルも、権限も、チャネルも、データも、すべてリポジトリで管理されます。リポジトリで管理されるオブジェクトは、次のようなプロパティを持ちます。
- 型(Type) : component、document、link、channel、その他
- トピック(Topic) : このオブジェクトがどのカテゴリに属するのか
- 説明(Description)
- フォーマット(Format)
- 格納場所(Location) : このオブジェクトがどこに格納されているか
- ロール(Roles)
- 発行元(Publisher)
- リリースノート(Release notes)
ユーザプロファイル
ユーザプロファイルは、次のようなプロパティを持つことが決められています。
- UserID
- プロファイル(Profile)
- プロパティ(Subscription property)
リソース
リソースは、階層構造をもつカテゴリに分類されます。複数のカテゴリを持つことができます。ひとつのカテゴリには、親のカテゴリがあり、カテゴリは階層構造を持ちます。
リソースは、リポジトリで管理されます。
パーソナライゼーション(個別化)
ユーザは、ロールに応じたカスタマイズができます。必要なアプリケーションだけを選択して、画面に表示することができます。
発行 / 購読型
Portal コンテンツは、発行 / 購読型のスタイルをとります。Porta コンテンツをブラウザから登録することで、発行可能となります。このコンテンツが利用可能なロールをもつユーザは、必要に応じて、コンテンツの購読を行います。これにより自分だけのポータルができあがるのです。
覚書
ユーザ情報は、UP_PERSON_DIR テーブルに格納される
ユーザの新規登録は、ant のタスクを使います。
ポータルの実装
uPortal はポータル実装に Pluto を使っています。Pluto は、Servlet コンテキストのクロスコンテキストが有効でないと機能しません。
uPortal に Portal アプリケーションを組み込む
ant のタスクをつかいます。{uPortal} ディレクトリに移動して、
でデプロイ可能です。