はじめに
2016年8月3日に『OSSポータル「LIFERAY」最新バージョン「LIFERAY7」の紹介と、旧バージョンからの移行』セミナーが開催されました。
ユニファイド・サービス株式会社 伊東様による講演を紹介します。
目次
第1回 LIFERAY Portal 7.0 CE(CommunityEdition)版の紹介
・概要
・断片化問題点に対する解決策「プラットフォーム化」
・ブランド変更
・問題点「断⽚化されたシステムと顧客データ」
・ソリューション「デジタルプラットフォームの統⼀」
・⽬指しているところ
・旧バージョンにおける問題点
・⽇の⽬をみることのない沢⼭の機能
・1リソース1ワークフローの固定設定
・直感的でない操作の流れ
・のろまなUI
・新バージョンにおける改善点
・改善点(1)UI&UX
・改善点(2)プラットフォーム
・改善点(3)Webコンテンツ管理
第2回 LIFERAY Portal 7.0 旧バージョンからの移⾏⼿順①
・概要
・OSGi
・OSGiとは?
・OSGi Allianceとは?
・OSGi Allianceの標準化活動
・OSGi仕様動向
・OSGiの特徴
・OSGiアプリケーションの開発
・OSGiプラットフォームの利点
・OSGi適⽤事例
・OSGiまとめ
・移行手順概要
・Upgrade Path
・「Infrastructure」
・「Data」
・「Code」(プラグイン/テーマ)
・インフラストラクチャの変更
・サポート環境
・商用製品に対する方針変更
・検索サーバ
・プラグインデプロイ方法
・方法(1)WAR
・方法(2)OSGiバンドル
・方法(3)WAB
第3回 LIFERAY Portal 7.0 旧バージョンからの移⾏⼿順②
・概要
・データベースアップグレード
・はじめに
・アップグレードツール
・アップグレードツール実行
・コードアップグレード
・重大な変更点
・LIFERAY Workspaceの準備
・Blade CLI使⽤の検討
・6.2のWARを7.0のサポートWARに移⾏する検討
・OSGiバンドルに変換したほうがよい場合
・OSGiバンドルに変換しないほうがよい場合
・6.2のWARをOSGiバンドルに移⾏する⽅法
・テーマアップグレード
・手順
・ツールは万能ではない
第1回 LIFERAY Portal 7.0 CE(CommunityEdition)版の紹介
Liferay の導入支援や保守サポートについては、こちらへ
概要
ユニファイド・サービスの伊東と申します。よろしくお願いします。
「LIFERAY Portal 7.0 CE(CommunityEdition)版」について紹介します。
断片化問題点に対する解決策「プラットフォーム化」
ブランド変更
LIFERAY7になり『LIFERAY Digital Experience Platform』という表現(ブランド)に変わっています。
問題点「断⽚化されたシステムと顧客データ」
LIFERAY社は、お客様に提供しているシステム/データがすべて断片化されてしまっている問題点について認識しました。
ソリューション「デジタルプラットフォームの統⼀」
LIFERAY社は、断片化問題に対するソリューションとして「デジタルプラットフォームの統⼀」をキーメッセージとして出しています。中心にLIFERAYを配置することで統合を図っていく考え方です。
⽬指しているところ
「ポータル」から「プラットフォーム」を目指しています。
旧バージョンにおける問題点
⽇の⽬をみることのない沢⼭の機能
多くの使われない機能があり、LIFERAYが重くなってしまっていました。
1リソース1ワークフローの固定設定
ワークフローにも使いにくい部分がありました。
直感的でない操作の流れ
管理者としての学習コストがかかってしまっていました。
のろまなUI
画面レンダリングが遅く、使いにくい面がありました。
新バージョンにおける改善点
改善点(1)UI&UX
シングルページアプリケーションのサポート
高速ブラウジングが可能になり、モバイルフレンドリーになりました。
Bootstrap2.x から 3.x への移⾏
スタイルシートフレームワーク「Bootstrap」が2から3へ移行されました。
Lexiconの提供
UXデザインガイドライン「Lexicon」が提供されています。ユーザインタフェースに関わるデザインの組み合わせ集です。
改善点(2)プラットフォーム
LIFERAYコアのモジュール化
Java用ソフトウェア部品化技術仕様「OSGi」ベースとなり、各機能が分離されています。複数バージョンの共存が可能になります。
モノリシックからマイクロサービスへ(モジュール分割)
まとまりだった1つの機能が「UI」「API」「Service」などのレベルに細かく分解されています。
デフォルト全⽂検索エンジンの変更
全文検索エンジンが「Lucene」から「Elasticsearch」へ変更されました。高度なモニタリング機能を利用できます。
改善点(3)Webコンテンツ管理
新しいHTMLエディタ(Alloy Editor)
HTMLエディタが独自ブランドエディタ「Alloy Editor」になり、今までより使いやすくなりました。プレビュー機能、バージョン比較機能、テンプレート管理機能、メンション機能などを利用できます。
ワークフロー
1サイト1リソース複数ワークフロー設定できるようになりました。「CommunityEdition版にはデザイナーが付属していない」点は変わりません。
メールテンプレート多言語化
有償版本番使用
現在、有償版はまだリリースされていません。Community版がGA2に上がっている状態です。プラットフォームとしての使用を考慮すると、有償版リリース後のCommunity版GA3リリースまで待つことをおすすめします。
LIFERAY7の新機能紹介は以上です。ありがとうございました。
講演資料について
本セミナーの講演資料は、以下のURLからダウンロードできます。
https://liferay-unisrv.doorkeeper.jp/events/48960
第2回 LIFERAY Portal 7.0 旧バージョンからの移⾏⼿順①
Liferay の導入支援や保守サポートについては、こちらへ
概要
『LIFERAY Portal 7.0 旧バージョンからの移⾏⼿順』について説明します。
OSGi
LIFERAY7上での新規アプリケーション開発には、前提知識として「OSGi」の理解が必須となります。
OSGiとは?
OSGiとは、Javaモジュールの動的更新を実現するための基盤システムです。「OSGiフレームワーク」に独自サービスを乗せていく仕組みで、各種サービスを「OSGiバンドル」と表現します。
OSGi Allianceとは?
仕様策定できる「Full Members」の中には、日本で馴染みのある企業が何社も参加しています。
OSGi Allianceの標準化活動
LIFERAYが関わるのは「Enterprise Expert Group」です。
OSGi仕様動向
さまざまな仕様が追加されています。
OSGiの特徴
『バンドル(Javaモジュール)を動的に⼊替え可能』
都度のTomcat再起動は必要ありません。
『バンドルの機能を相互に利⽤可能』
JARファイル同士で連携できます。
『アプリケーションを異なる環境で実⾏可能』
JavaVMで動くためプラットフォームによる制限を受けません。
OSGiアプリケーションの開発
「OSGiアプリケーション開発」とは「バンドル作成」を意味します。
OSGiプラットフォームの利点
OSGi適⽤事例
OSGiまとめ
LIFERAY7からOSGiに対する取り組みが必須となるため、ノウハウをためていただきたいと考えています。
移行手順概要
Upgrade Path
LIFERAY社が移行手順を組み立ててくれています。
「Infrastructure」
- 手順1 JDKのアップグレード(8へ)
- 手順2 アプリケーションサーバのアップグレード
- 手順3 データベースのアップグレード
- 手順4 「検索エンジンを作ってください」となっています。「検索エンジンは独立で持ったほうがよい」という判断があった模様です。
「Data」
- 手順1 バックアップ
- 手順2 コア部分のアップデート
- 手順3 モジュール部分のアップデート
- 手順4 (必要に応じて)カスタムデータを作成
「Code」(プラグイン/テーマ)
プラグイン
- 手順1 API/サービスのアップグレード
- 手順2 ポートレイトのアップグレード
- 手順3 (必要に応じて)モジュールコンバート」
テーマ
- 手順1 テーマアップグレード
- 手順2 JSコンポーネントアップグレード
- 手順3 (必要に応じて)Webコンテンツアップグレード
インフラストラクチャの変更
サポート環境
サポート環境が変更されているため、対応環境下で構築を進める必要があります。
商用製品に対する方針変更
CommunityEditionはアプリケーションサーバ/データベースに対して商用製品サポートがなくなったため、「CommunityEditionを利用する際は、オープンソース製品を選定する必要がある」となっています。
商用アプリケーションサーバ/データベースを使用する場合はEnterpriseEditionの利用が必要です。
検索サーバ
プラグインデプロイ方法
方法(1)WAR
『LIFERAYのコアサービスへのアクセスは可能』
独自機能の利用だけであれば問題ありません。
『OSGiコンテナにデプロイされた任意のサービスへのアクセスは不可』
WARで作成したアプリケーションから「LIFERAYブックマーク情報取得」「ブログ書き込み」「SNSタイムライン投稿」などは実現できません。
方法(2)OSGiバンドル
推奨されている方式です。
『LIFERAYのコアサービスへのアクセスは可能』
OSGiバンドルサービスのすべてに対してアクセスできます。(WARにはアクセスできません。)
LIFERAY自体も、今後新規開発されるアプリケーションは、すべてOSGiバンドルで開発されます。
方法(3)WAB
講演資料について
本セミナーの講演資料は、以下のURLからダウンロードできます。
https://liferay-unisrv.doorkeeper.jp/events/48960
第3回 LIFERAY Portal 7.0 旧バージョンからの移⾏⼿順②
Liferay の導入支援や保守サポートについては、こちらへ
概要
引き続き、『LIFERAY Portal 7.0 旧バージョンからの移⾏⼿順』について説明します。
データベースアップグレード
はじめに
『DBのインデックスが正しく適⽤されていることを確認』
インデックスが正しく生成されていない場合、アップグレード処理に大変時間がかかることがあります。
アップグレードツール
アップグレードツールが提供されています。
スタンドアロンツール
JARファイルを起動してアップグレード作業を開始するタイプのツールです。
そのために、3つの設定ファイルを事前に準備しておく必要があります。
アップグレードツール実行
コードアップグレード
このアップグレードは、LIFERAY社も最も手間のかかる作業として認識しています。
重大な変更点
「コードに関する変更点」と「アップグレード時の問題解決方法」を参照できるサイトが用意されています。
重大な変更点サマリー
111件の重要な変更点があります。Javaコードに関する変更が一番多くを占めています。これらの変更点をクリアしなければ先に進めないため、トライアンドエラーでやっていくしかありません。
LIFERAY Workspaceの準備
『LIFERAY7ではLIFERAY Workspaceという新しいプロジェクト構造に移⾏することが勧められています。』
このワークスペース上で、各プロジェクト(モジュール/プラグインSDK/テーマ)をすべて管理する仕組みです。
コードアップグレードするためには、まず、ワークスペースを準備する必要があります。
Blade CLI使⽤の検討
「Blade CLI」とは
- LIFERAY7から新しく提供されたツール
- すべてコマンドベース
- 開発/デプロイなどを自動化
- コマンドベースのスクリプトですべてを管理
→ドキュメントと実際にパラメータシートの差分が発生しない - 版管理
→以前のバージョンとの比較が可能
GUI版
GUIで操作できる従来通りの「LIFERAY IDE」も利用できます。コマンドベースの「Blade CLI」には大きなメリットがあるため、トレードオフで考えていただきたいと思います。
6.2のWARを7.0のサポートWARに移⾏する検討
将来的にOSGiバンドルにしたい場合でも、試験的に「サポートWAR」に変換してみることをおすすめしています。
Upgrade Assistantが、重大な変更/依存関係などをチェックしてくれるため、OSGi化に取り組む前の最初のステップとして実行を推奨します。その後本格的にOSGiバンドルへの移行を検討していただきたいと思います。
OSGiバンドルに変換したほうがよい場合
LIFERAY社が明示している内容です。
OSGiバンドルに変換しないほうがよい場合
『JSR-168/286と互換性のあるポートレットであり、別のポートレットコンテナにもそれらをデプロイしたい場合』
互換性維持の必要性がある場合です。
『Java EEプログラミングモデルに強く縛り付けられている古い複雑なWebフレームワークを使⽤している場合』
Webフレームワーク(Spring Framework/Struts/JSFなど)を使用している場合などが該当します。トータルコスト的に、かなりのオーバーヘッドが発生します。
6.2のWARをOSGiバンドルに移⾏する⽅法
重要な変更点対応をクリアできれば、ツール実行は簡単に行えます。
テーマアップグレード
テーマをアップグレードする⽅法
手順
- 「Blade CLI」コマンドを実行
- CSSをBootstrap2からBootstrap3へ変換
ツールは万能ではない
この手順のみで正常完了できる場合もあります。しかし、独自サポートブラウザ/特殊方言スクリプトなどにより、うまくいかない場合も考えられます。このツールのみで、すべて解決できるわけではないことを留意いただきたいと思います。
以上、移行手順概要について説明しました。ご清聴ありがとうございました。
講演資料について
本セミナーの講演資料は、以下のURLからダウンロードできます。
https://liferay-unisrv.doorkeeper.jp/events/48960