問題
- アップグレードの過程で、
StackOverflowError
を受け取る問題に遭遇するかもしれません:
ERROR [main][ROOT:56] bundle com.liferay.portal.verify.extender:7.0.24 (1063)[com.liferay.portal.verify.extender.internal.osgi.commands.VerifyProcessTrackerOSGiCommands(5021)] : The activate method has thrown an exception
java.lang.StackOverflowError: null
at java.util.concurrent.ConcurrentHashMap.get(ConcurrentHashMap.java:936) ~[?:?]
at com.liferay.portal.language.LanguageResources._getMapHolder(LanguageResources.java:140) ~[portal-impl.jar:?]
at com.liferay.portal.language.LanguageResources.getMessage(LanguageResources.java:76) ~[portal-impl.jar:?]
at com.liferay.portal.language.LanguageResources.getMessage(LanguageResources.java:83) ~[portal-impl.jar:?]
at com.liferay.portal.language.LanguageResources.getMessage(LanguageResources.java:83) ~[portal-impl.jar:?]
at com.liferay.portal.language.LanguageResources.getMessage(LanguageResources.java:83) ~[portal-impl.jar:?]
at com.liferay.portal.language.LanguageResources.getMessage(LanguageResources.java:83) ~[portal-impl.jar:?]
at com.liferay.portal.language.LanguageResources.getMessage(LanguageResources.java:83) ~[portal-impl.jar:?]
at com.liferay.portal.language.LanguageResources.getMessage(LanguageResources.java:83) ~[portal-impl.jar:?]
at com.liferay.portal.language.LanguageResources.getMessage(LanguageResources.java:83) ~[portal-impl.jar:?]
at com.liferay.portal.language.LanguageResources.getMessage(LanguageResources.java:83) ~[portal-impl.jar:?]
... - これは、ロケールとスーパーロケールが互いにぶつかり合い、無限ループを引き起こしている場合に起こる。
Environment
- Liferay DXP 7.4+
解決策
- 例えば portal-upgrade-ext.properties で
locales
とlocales.enabled
プロパティを必ず設定してください:
locales=de_DE,en_US,en_GB,en_IN,fr_FR,pt_BR,pt_PT,tr_TR,ja_JP,es_ES,es_MX,ru_RU,sl_SI
locales.enabled=de_DE,en_US,en_GB,en_IN,fr_FR,pt_BR,pt_PT,tr_TR,ja_JP,es_ES,es_MX,ru_RU,sl_SI
会員限定記事
Liferay エンタープライズ サブスクリプションをお持ちのお客様は1500件を超えるベストプラクティス、トラブルシューティング、その他のソリューション記事を閲覧できます。ログインすると、記事全体をお読みいただけます。
ログイン