夜な夜な海外ネット:ITmediaオルタナティブ・ブログ (RSS) 夜な夜な海外ネット

海外技術の勝手なコメント及び海外技術者との交流情報

LiferayのwarファイルをJBossにセットアップされると分かりますが、Liferayには2つのjarファイルがあります。1つはLiferayが標準で提供するエンティティのインターフェース、もう一つはそのインターフェースの実装である。

インターフェース(service-api.jar)は他アプリケーション(他warファイル)からも利用できるようにアプリケーションサーバのlibディレクトリに配置される(tomcatの場合はlib\ext)

Servletapi

このインターフェースの実装はwarファイルroot下のweb-inf\libに配置されている。

Portalimpl

このように実装とインターフェースを分離するjarファイルを分離することが重要です。Liferayで開発するポートレットもこのようにインターフェースと実装を分離します。このようにすることで他ポートレット(他warファイル)のインターフェースを利用することができます。また、インタフェースとは別に実装のもを置き換える(再デプロイ)することができます。

例えば投票用の機能を追加する場合は、以下のようなポートレットを作成します:

①一般ユーザが投票を行うポートレット

②候補者、選挙期間など情報の入力/編集するポートレット

③投票結果を集計して当選者を表示するポートレット

④Liferayが標準で提供するユーザ、組織、権限などの管理を行うポートレット

Serviceplatformarchitecture 

これらのポートレットはアプリケーションサーバ上では別々のwarファイルになります。

これらのポートレットは個別に責務となるエンティティがあります。例えば、投票するためにログインするすべてのユーザはLiferayが管理するので、「ユーザ」エンティティはLiferayが持ちます。選挙の説明や期間などの情報をもつ「選挙」エンティティは選挙ポートレットがもちます。「候補者」エンティティも選挙ポートレットに持たせます。

Liferayの場合は、昨日紹介したLiferay IDEを利用してこれらのエンティティ定義をポートレットプロジェクト毎のservice.xmlファイルで定義します。エンティティの属性は、画面などの項目などをモデリングします。エンティティの画面は以下のような関係をもちます。下の図のエンティティはservice.xmlのエンティティの他にjspから呼び出される業務エンティティも含みます。これらの業務エンティティはポートレットのローカルサービス及び他ポートレットのリモートサービスを組み立てて利用します。なお、公開されるサービス内からも他ローカル及びリモートサービスを組み立てたりして利用することもできます。

Softwarediagram

定義した後にサービスビルダ(antコマンド)を利用してインターフェースと実装の枠組みを生成します。

Impl Model_2

生成されなかったインターフェースをimplクラスに定義して再びサービスビルダを実行すると、それらのインターフェーイスはinterfaceに追加されます。

ポートレット間の実装は疎結合のため、迅速にポートレットに機能を追加したりすることができます。また、新しい要件に対応するポートレットを開発する場合でも、既存のポートレットの機能を利用することができます。

Liferayの場合は標準でユーザ、組織、権限、ワークフロー、ファイル管理、検索などの基盤ポートレットの他にも翻訳、天気、株価などのポートレットが用意されています。それらのポートレットは画面ページに張る付けるだけではなく、他ポートレットからも利用することができるのが特徴です。

このように開発した資産が、疎結合で利用できるのが本当のSOAです。

hozawa

Special

- PR -
コメント

コメントを投稿する
メールアドレス(必須):
URL:
コメント:
トラックバック

http://app.blogs.itmedia.co.jp/t/trackback/77444/27337427

トラックバック・ポリシー


» このブログのTOP

» オルタナティブ・ブログTOP


プロフィール

小沢 仁

小沢 仁

某SI会社に勤務。
米国育ちなため、海外の人と連絡を取ることが多い。ESB Muleの日本対応を行ったり、Seasarの英語ページを作成したりしている。最近は、海外の技術者とSOAについて議論をしている。

詳しいプロフィール

カレンダー
2012年3月
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
カテゴリー

オルタナティブ・ブログは、専門スタッフにより、企画・構成されています。入力頂いた内容は、アイティメディアの他、オルタナティブ・ブログ、及び本記事執筆会社に提供されます。


最近のトラックバック
エンタープライズ・ピックアップ

news094.gif ストレス社会との付き合い方
政府がメンタルヘルス検査の義務化を検討しています。しかしうつになった後だけではなく、なる前の予防も大切なのではないでしょうか。(5/24)

news094.gif 「思いやり経営」のススメ
産学・NPO連携の民間団体が先頃、「思いやり経営」という観点で評価した指標や企業ランキングを発表した。企業のマネジメント力を知る手立てとして注目されそうだ。(5/24)

news094.gif テレワークが労働者のマインドを変える
テレワークが普及すると、労働者の評価は従来の「時間×生産性」から「成果」へと変化する。時間や場所を自分の裁量でコントロールできる変わりに、成果を最大化するために労働をマネジメントする能力とマインドが労働者には必要になる。(5/23)

news094.gif 求む、クックパッド男子
高身長も高学歴も高収入もいらない。私が男性に求めるのは「料理の腕」だけです。(5/18)

news094.gif 37歳の常識――我々は一生学び続ける
学び続けなければ衰退するのみだ。(5/18)

Special

- PR -

サイトマップ | 利用規約 | プライバシーポリシー | 広告案内 | お問い合わせ