問題
- アセットパブリッシャーの表示テンプレートを作成し、Service Pack 5 (SP%)に修正パック20をインストールした後、アセットパブリッシャーを構成できません。 UIではInternal Server Error、ログではFree Marker Templateエラーが表示されました。
再生産ステップ:
1. DXP 7.2 SP5とフィックスパック14のセットアップ
2. サイト・ビルダー -->ウィジェット・テンプレート --> にアクセスし、アセット・パブリッシャー・テンプレートを追加する。
3. Content & Data --> Web Contentにアクセスし、基本的なウェブコンテンツを作成する。
4. ホームページにアセットパブリッシャーを配置し、アセットパブリッシャー表示テンプレートで表示を設定します。
5. インスタンスをシャットダウンする。
6. フィックスパック20のインストール
7. インスタンスを起動し、アセット・パブリッシャを構成してみます。
実際の結果 UIにはInternal Serverエラーが表示され、ログには次のようなFree Mareker Templateエラーが表示されます:
Error executing FreeMarker template
FreeMarker template error:
Java method "com.liferay.portal.layoutconfiguration.util.velocity.TemplateProcessor.processMax()" threw an exception when invoked on com.liferay.portal.layoutconfiguration.util.velocity.TemplateProcessor object "com.liferay.portal.layoutconfiguration.util.velocity.TemplateProcessor@18992655"; see cause exception in the Java stack trace.
----
FTL stack trace ("~" means nesting-related):
- Failed at: ${processor.processMax()} [in template "classic_WAR_classictheme_STANDARD_pop_up" at line 4, column 25]
期待される結果 アセット・パブリッシャは問題なく構成できます。
Environment
- Liferay DXP 7.2
解決策
-
この問題は、Fix Pack 20をService Pack 5(SP5またはSP8より下位のSP)にインストールした場合に発生します。 修正パック20のインストール情報によると、 https://customer.liferay.com/downloads?p_p_id=com_liferay_osb_customer_downloads_display_web_DownloadsDisplayPortlet&_com_liferay_osb_customer_downloads_display_web_DownloadsDisplayPortlet_productAssetCategoryId=118681159& _com_liferay_osb_customer_downloads_display_web_DownloadsDisplayPortlet_fileTypeAssetCategoryId=118681166
fp20 をインストールする前にosgi/marketplace
にある以下の Liferay Data Engine lpkgs を削除してください:
LIFERAY_HOME/osgi/marketplace/Liferay Data Engine - API.lpkg
LIFERAY_HOME/osgi/marketplace/Liferay Data Engine - SPI.lpkg
LIFERAY_HOME/osgi/marketplace/Liferay Data Engine - Impl.lpkg