
機能の拡張と変更
他言語: English
Table of Contents [-]
概要 #
Liferayには標準でコンテンツ管理、共同作業環境、ツールなどっと多くの機能が備えられています。ポータルによってはこれらの機能で充分ですが、機能を拡張/変更したり外見を変更したい場合もあります。
Liferayは機能を変更/追加するために6種類のプラグインを用意しています。
- ポートレット:Webページで実行されるアプリケーション
- テーマ:ページの外観
- レイアウトテンプレート:ページ上でポートレットの配置
- Web:ポータルで連携して動作するJava EE webモジュール(例:ESB、SSO)
- フック:プロパティやイベントの上書
- Extプラグイン:Javaクラスなどの置き換えこれらのプラグインを一つの.warファイルに同梱して配布/デプロイすることも可能です。例えば、ページの構成を変更する場合は、テーマとレイアウトを一つの.warファイルに同梱することができます。
以下にLiferayの標準機能を変更/追加する場合に利用されるプラグインに付いて説明します。
外観の変更:テーマ #
テーマはCSSとVelocityテンプレートの組み合わせを使ってLiferayポータルの外観を変更します。多くの場合はLiferayの標準テーマにCSSを追加するだけで充分です。Liferayの本体を修正しないため、Liferayをバージョンアップした場合でもCSSが適用されます。CSSの追加だけでは不十分な場合でも、修正したテンプレートを作成すると、Liferayがデフォルトテーマから必要な他ファイルを複写します。ポートレットと同様に、テーマもホットデプロイすることができます。
レイアウトの雛形を追加: レイアウトテンプレート #
レイアウトはテーマを類似しています。テーマは外観を変更しますが、レイアウトはポートレットのページ上の配置を変更します。レイアウトもVelocityで書かれていて、ホットデプロイすることができます。
標準機能の変更及び機能の追加: フックプラグイン #
Liferayの機能を変更したり、機能を修正する場合はフックプラグインで行うことを推奨します。フックプラグインを使ってポータルのプロパティの変更や起動/シャットダウン/ログイン/ログアウト/セッションの作成/セッションの廃棄時に処理を実行するようにできます。また、サービスラッパーを利用してLiferayのコアサービスを変更することができます。その他のも、標準ポートレットのJSPテンプレートを置き換えて外観を変えることもできます。なお、フックプラグインもポートレットと同じようにホットデプロイすることができます。
詳細なカスタマイズ: Extプラグイン #
Extプラグインを使ってLiferayの殆どのクラスを変更することができます。ただし、Extプラグインは上位互換が保証されます。作成されたExtプラグインは次のバージョンで正常に動作しない場合があります。そのためにExtプラグインは最終手段として使うことを推奨します。 Extプラグインを作成する場合は、充分にテストを行い、Liferay全体に悪影響を起こさないことを確認してください。 Extプラグインは他プラグインと同様にデプロイしますが、サーバを再起動しないと内容が有効になりません。そのため、Extプラグインを他プラグインと同じ.warファイルに同梱することはお勧めされていません。