サーブレットベースのポートレットのアップグレード

このチュートリアルでは、サーブレットベースのポートレットをアップグレードする方法を示します。 Sample JSON(project sample-json-portlet)と呼ばれる、サンプルのサーブレットベースのポートレットをアップグレードする前後のコードを参照します。 ポートレットにはClick meリンクが表示され、 ユーザーがリンクをクリックすると、Liferayロゴが表示されます。

図1:Sample JSONポートレットにはClick meというテキストが表示され、クリックすると操作を開始できます。

このチュートリアルを最大限に活用するには、オリジナルのサンプルポートレットのソースコードおよびアップグレードされたソースコードをダウンロードし、参照してください。

サンプルポートレットの特性は次のとおりです。

  • javax.servlet.HttpServletを拡張するサーブレットを使用して、リクエストを処理
  • JSPによって実装されたビューレイヤー
  • JSONオブジェクトを使用してデータを処理
  • マニュアルの依存関係管理に依存
  • Liferay Portal 6.2が提供するサードパーティライブラリに依存
  • WEB-INF/libフォルダに追加の依存関係を埋め込む
  • LiferayプラグインSDK 6.2で開発

サーブレットベースのポートレットをアップグレードするには、Liferay Upgrade Plannerを使用して、コードをLiferay DXP 7.1のAPIに適合させます。 プランナーのアップグレードの問題の修復ステップを実行した時、既存の事象の多くが自動修正またはフラグ付けされました。 残りのエラーについては、記事Resolving a Plugin’s Dependenciesを参照してください。

LiferayのUpgrade Plannerは、新しいAPIの影響を受けるコードの特定、APIの変更とそれらに適合させる方法の説明、そして多くの事例でコードを自動的に適合させるオプションを提供します。

サンプルポートレットはLiferay Portalに依存して、いくつかの依存関係JARファイルを提供しました。 以下は、ポートレットのliferay-plugin-package.propertiesファイルからのportal-dependency-jarsプロパティです。

portal-dependency-jars=\
    dom4j.jar,\
    jabsorb.jar,\
    json-java.jar

Liferay DXPがエクスポートするパッケージの使用方法については、こちらをご覧ください。 Liferay DXP 7.1のコアシステムは、上記の各依存関係JARから、このポートレットに必要なパッケージをエクスポートします。

アップグレードされたサンプルポートレットは、portal-dependency-jarsプロパティでこれらのJARを指定し続けます。 これらは、コンパイル時にポートレットで使用可能になります。 ただし、コンパイル時のパッケージがコアシステムのエクスポートされたパッケージと競合しないように、LiferayプラグインSDK 7.0はプラグインWARからJARを除外します。

次に、通常通りポートレットをデプロイします。

サーバーは、次のポートレット状態を示すメッセージを出力します。

  • WAR processing
  • WAB startup
  • Availability to users

ポートレットはLiferayのOSGiランタイムにインストールされ、ユーザーが利用できるようになります。

図2:サンプルポートレットのリンク*Click me *をクリックすると、Liferayロゴが表示されます。

これで、サーブレットベースのポートレットの、Liferay DXP 7.1へのアップグレードとデプロイが完了しました。

関連トピック

プラグインSDKプロジェクトをWorkspaceとGradleに移行する

依存関係管理ツールの使用

WABジェネレーターの使用

データアップグレードプロセスの移行

« Liferay JSFポートレットのアップグレードSpring MVCポートレットのアップグレード »
この記事は役に立ちましたか?
0人中0人がこの記事が役に立ったと言っています