はじめてのLiferay─短時間で高度なWebシステム構築

第1回 Liferayとは

この記事を読むのに必要な時間:およそ 4.5 分

LiferayはWebシステムを構築するためのオープンソースのフレームワーク,およびそのフレームワーク用に開発されたポートレット(機能部品)の集まりです。JBoss, Apache Tomcat, WebSphereなど多くのアプリケーションサーバやWebコンテナ上で動作します。ユーザ/組織管理,Webページ管理,アクセス管理など一般的にWebサイトで使われる多くの機能が標準で搭載されていて,Webブラウザから設定を行うことができます。60以上のポートレットと呼ばれる部品を用意されていて,Webブラウザからコンテンツを編集することができます。

米調査会社であるガートナーは,ポータル市場領域で活動しているベンダ各社の相対的な位置関係を示すマジック・クアドラントでLiferayをIBM,Microsoft,Oracle,SAPのような大手企業と同じリーダ領域に位置づけています。Liferayはオープンソースポータルの世界市場シェアでは1位です。コミュニティには7万6千人以上のユーザが登録されており,平均毎月5万回ダウンロードされています。IEEE Computer Societyセサミストリート米国海兵隊ユナイテッド・カラーズ・オブ・ベネトンオーストラリア政府アラブ首長連邦政府などさまざまな分野のWebサイトでも使われています図1)。

インターネットのサイトに限らず,イントラネットのWebサイトでもLiferayは利用されています。図2は1つのLiferayサーバに社外,社内全社,プロジェクトチーム,個人ページを作成した例です。この他にもグループ企業ごとや組織ごとのページを作成することもできます。

図2 複数の用途のページを作成した例

図2 複数の用途のページを作成した例

本記事は,このように海外で急成長しているWebフレームワークLiferayとはどのようなソフトウェアなのかを知ってもらうために,導入および簡単なWebサイトの構築から,段階的により高度なWebサイト構築のための説明を行います。

Liferayの特徴

Liferayを使うメリットは「自由」「安価」です。最近,SaaSのようなサービスも出はじめましたが,これらのサービスの多くは自由にソースコードを変更できません。基本的には提供されたものをサービス提供者が考えた風に利用するだけです。利用者が新しい機能を必要とした場合はサービス提供者にその機能の実装を依頼することになります。実際にその機能が実装されるか,実装されるとしても実装される時期はサービス提供者の判断になります。

このようなSaaSでも,定型業務で利用した場合はコスト削減を図ることができます。しかし,顧客満足度を上げることを目的にした戦略的WebサイトではLiferayのようなWebフレームワークの方が利用者の動向に合わせて何時でも自由にカスタマイズができるので有利になります。

「安価」とは,ソフトウェアを無償で入手することに限りません。Webサイトをセットアップ,カスタマイズ,保守するための,すべての費用を削減することができるっと言うことです。Liferayは既存の商用/無償ソフトウェアと接続することができるように設計されています。なお,データベースやアプリケーションサーバのような必須ソフトウェアは,すべて無償版のソフトウェアを利用することもできます。

サーバ設定やネットワーク設定に詳しくないユーザでもLiferayをセットアップして利用することができます。たとえば,jelasticのようなPaaSを使えば,1クリックでクラウド上にLiferayをインストールして使い始めることができます。VMware,Amazon EC2やMicrosoft Windows Azureの環境を利用する設備が用意されている場合は,BitNamiのLiferayパッケージを使ってLiferayが必要とするべてのソフトウェアを纏めてインストールすることができます。

Liferayをインストールした後は,Webブラウザからユーザ及び組織の登録を行うことができます。Webページのコンテンツも図3のようにWebブラウザに表示されるHTMLエディタを使って登録/編集することができます。

図3 HTMLエディタを使ってのコンテンツの作成(例)

図3 HTMLエディタを使ってのコンテンツの作成(例)

ユーザ権限設定,ページ構成,ポートレットのインストール/アンインストール,ポータル設定,ポータル管理図4もすべてWebブラウザから行えるきため,FTPやtelnetなどのツールは不要です。たとえば年に1回,ネット上でアンケートを実施したい場合は,このようにLiferayをクラウド上にセットアップして利用すること短時間かつ安価でWebサイトを立ち上げることができます。

図4 サーバ管理ページ(例)

図4 サーバ管理ページ(例)

Liferayを自分のパソコンにセットアップする場合でも,

  • ①Liferayの配布ファイルをダウンロード
  • ②ダウンロードしたファイルを解凍
  • ③Liferayを起動

だけでWebサイトは立ち上げり,Webブラウザからサイトを開くと図5のようなページが開かれます。

図5 日本語版Liferayの初期画面

図5 日本語版Liferayの初期画面

Liferayに管理者としてログインした後は,図6のようにマウス操作でポートレットをページに配置したり,HTMLエディタを使って内容を編集することができます。ユーザ登録,ユーザアクセス設定,サーバ管理もWebページから行うことができます。

図6 日本語版Liferayの初期画面

図6 日本語版Liferayの初期画面

HTMLエディタを使って新規にWebコンテンツを登録する他に,既存システムのWebページをポータルのページに表示することもできます。SSOシステムと連動していれば,1回ログインするだけで他システムもポータルから利用できます。

これらの機能は,IBM WebSphere PortalやMS Sharepointなど商用製品でもサポートされていますが,Liferayコミュニティ版は無償で利用できるオープンソースソフトウェアです。誰でもインターネットからダウンロードして使うこともできる他に,自分でプログラムを修正することもできます。サーバのCPU/コア数やサーバ台数を増やす場合でもライセンス費を気にせずに増設することができます。

図7 システム構成(例)

図7 システム構成(例)

無償だからっと言って機能が限られているわけではありません。コミュニティ版でもLDAP,CAS,Oracle Access Manager,OpenSSOやSiteminderと連動してユーザ管理および認証を行うことができます。ehcache共有キャッシュなどにも標準で利用されています。たとえばユーザが増加した場合でも,図7のようにLiferayポータルサーバを増設して負荷分散させることができます。

グループ企業のポータル管理も効率的に行えるように,Liferayはマルチテナント機能にも対応しています。1つのLiferayサーバ(厳密には1つのLiferayインスタンス)に複数の仮想インスタンスを作成することができます。たとえば,異なるドメイン名をもつグループ会社のWebサイトを1つのLiferayサーバに載せることができます。この場合は,ドメインごとにドメインサイトの管理者やデータベースを設けることもできます。

必要とする機能が標準のLiferayに装備されていない場合は,コミュニティや第三者のプラグインを使うことができます。もしこれでも必要とする機能がない場合は,Liferay社に機能追加を依頼することができますが,もし緊急に必要な場合は自分で機能を実装することもできます。Liferayのすべてのソースコードはgithubから入手することができます。リポジトリをフォークして機能を追加したり変更することもできます。その後にLiferay社にプルリクエストを送り,追加/変更したソースコードをLiferayプロジェクトに貢献することもできます。

著者プロフィール

小沢仁(おざわひとし)

株式会社オージス総研

米シカゴ育ち。シカゴ大学で物理を専攻。Oracle XDKを日本に紹介,Seasar英語ページを作成,ESB Muleコミッタとして同ソフトの日本ローカライズ/日本語サイト構築,WaveMakerの日本語ドキュメントを作成,Apache ManifoldCFコミッタ/日本語ページやMySQL対応を貢献。IEEE APSCC 2009などでSOAの研究発表も行っている。

Liferayに興味をもち,Liferay.comフォーラムでサポートしたりWikiページを作成している。Liferay6およびLiferfay IDEの日本語化や日本語資料も作成している。2012年にLiferay社からグローバルレベルでの「Liferay Community Contributor of the Year 2012」を受賞。

現在,米ナッシュビルで開催されるAgile2013カンファレンスでオフショア開発についての発表申請に時間を費やしている。

コメント

コメントの記入