問題
- アップグレード作業中に、エラーが発生することがあります。
com.liferay.dynamic.data.mapping.internal.upgrade.v1_1_2.DynamicDataMappingUpgradeProcess
step:Caused by: java.lang.NullPointerException
at com.liferay.dynamic.data.mapping.internal.io.DDMFormValuesJSONDeserializer.getDDMFormFieldValues(DDMFormValuesJSONDeserializer.java:137) ~[?:?]
at com.liferay.dynamic.data.mapping.internal.io.DDMFormValuesJSONDeserializer.setDDMFormFieldValues(DDMFormValuesJSONDeserializer.java:184) ~[?:?]
at com.liferay.dynamic.data.mapping.internal.io.DDMFormValuesJSONDeserializer.deserialize(DDMFormValuesJSONDeserializer.java:85) ~[?:?]
at com.liferay.dynamic.data.mapping.util.DDMFormValuesDeserializeUtil.deserialize(DDMFormValuesDeserializeUtil.java:39) ~[?:?]
at com.liferay.dynamic.data.mapping.internal.upgrade.v1_1_2.DynamicDataMappingUpgradeProcess._upgradeDDMContentReferences(DynamicDataMappingUpgradeProcess.java:338) ~[?:?]
at com.liferay.dynamic.data.mapping.internal.upgrade.v1_1_2.DynamicDataMappingUpgradeProcess._upgradeDDLDDMContentReferences(DynamicDataMappingUpgradeProcess.java:310) ~[?:?]
at com.liferay.dynamic.data.mapping.internal.upgrade.v1_1_2.DynamicDataMappingUpgradeProcess.doUpgrade(DynamicDataMappingUpgradeProcess.java:77) ~[?:?]
at com.liferay.portal.kernel.upgrade.UpgradeProcess.lambda$upgrade$0(UpgradeProcess.java:130) ~[portal-kernel.jar:?]
at com.liferay.portal.db.partition.DBPartitionUtil.forEachCompanyId(DBPartitionUtil.java:126) ~[portal-impl.jar:?]
at com.liferay.portal.dao.db.BaseDB.process(BaseDB.java:337) ~[portal-impl.jar:?]
at com.liferay.portal.kernel.dao.db.BaseDBProcess.process(BaseDBProcess.java:387) ~[portal-kernel.jar:?]
at com.liferay.portal.kernel.upgrade.UpgradeProcess.upgrade(UpgradeProcess.java:115) ~[portal-kernel.jar:?]
...
- この問題は、セレクト後のアップグレード処理中に、 DDMContentテーブルの行が、
data_
フィールドに値を持たず、これがNPEの原因となっていることに起因しています。
Environment
- Liferay DXP 7.4
解決策
- UIから不具合のある送信済みフォームを消去するか、または
-
これらの行が有効な
data_
の値を持っていることを確認する:
{"availableLanguageIds":["en_US"],"defaultLanguageId":"en_US","fieldValues":[{"instanceId":"Vzi8vaU9","name":"Field90060531","fieldReference":"Field90060531","value":{"en_US":"test submission"}}]}
追加情報
- DDMContentの行には、送信されたフォームのデータが格納されています。
会員限定記事
Liferay エンタープライズ サブスクリプションをお持ちのお客様は1500件を超えるベストプラクティス、トラブルシューティング、その他のソリューション記事を閲覧できます。ログインすると、記事全体をお読みいただけます。
ログイン